blob: 526f5f8b76c2c221a34f2a5ba7b8f76994b46c3f [file] [log] [blame]
Lokesh Vutla9bdec002018-08-27 15:57:08 +05301if ARCH_K3
2
3choice
4 prompt "Texas Instruments' K3 based SoC select"
5 optional
6
Lokesh Vutla32886442018-08-27 15:57:09 +05307config SOC_K3_AM6
8 bool "TI's K3 based AM6 SoC Family Support"
9
Lokesh Vutlaa2285322019-06-13 10:29:42 +053010config SOC_K3_J721E
11 bool "TI's K3 based J721E SoC Family Support"
12
Dave Gerlach96571ec2021-04-23 11:27:32 -050013config SOC_K3_AM642
14 bool "TI's K3 based AM642 SoC Family Support"
15
Lokesh Vutla9bdec002018-08-27 15:57:08 +053016endchoice
17
18config SYS_SOC
19 default "k3"
20
Lokesh Vutla32886442018-08-27 15:57:09 +053021config SYS_K3_NON_SECURE_MSRAM_SIZE
22 hex
Lokesh Vutlaa2285322019-06-13 10:29:42 +053023 default 0x80000 if SOC_K3_AM6
24 default 0x100000 if SOC_K3_J721E
Dave Gerlach96571ec2021-04-23 11:27:32 -050025 default 0x1c0000 if SOC_K3_AM642
Lokesh Vutla32886442018-08-27 15:57:09 +053026 help
Dave Gerlach96571ec2021-04-23 11:27:32 -050027 Describes the total size of the MCU or OCMC MSRAM present on
28 the SoC in use. This doesn't specify the total size of SPL as
29 ROM can use some part of this RAM. Once ROM gives control to
30 SPL then this complete size can be usable.
Lokesh Vutla32886442018-08-27 15:57:09 +053031
32config SYS_K3_MAX_DOWNLODABLE_IMAGE_SIZE
33 hex
Lokesh Vutlaa2285322019-06-13 10:29:42 +053034 default 0x58000 if SOC_K3_AM6
35 default 0xc0000 if SOC_K3_J721E
Dave Gerlach96571ec2021-04-23 11:27:32 -050036 default 0x180000 if SOC_K3_AM642
Lokesh Vutla32886442018-08-27 15:57:09 +053037 help
38 Describes the maximum size of the image that ROM can download
39 from any boot media.
40
41config SYS_K3_MCU_SCRATCHPAD_BASE
42 hex
43 default 0x40280000 if SOC_K3_AM6
Lokesh Vutlaa2285322019-06-13 10:29:42 +053044 default 0x40280000 if SOC_K3_J721E
Lokesh Vutla32886442018-08-27 15:57:09 +053045 help
46 Describes the base address of MCU Scratchpad RAM.
47
48config SYS_K3_MCU_SCRATCHPAD_SIZE
49 hex
50 default 0x200 if SOC_K3_AM6
Lokesh Vutlaa2285322019-06-13 10:29:42 +053051 default 0x200 if SOC_K3_J721E
Lokesh Vutla32886442018-08-27 15:57:09 +053052 help
53 Describes the size of MCU Scratchpad RAM.
54
Lokesh Vutlac7bfb852018-08-27 15:57:11 +053055config SYS_K3_BOOT_PARAM_TABLE_INDEX
56 hex
57 default 0x41c7fbfc if SOC_K3_AM6
Andreas Dannenberg4524b3f2019-06-27 20:03:21 -050058 default 0x41cffbfc if SOC_K3_J721E
Dave Gerlach96571ec2021-04-23 11:27:32 -050059 default 0x701bebfc if SOC_K3_AM642
Lokesh Vutlac7bfb852018-08-27 15:57:11 +053060 help
61 Address at which ROM stores the value which determines if SPL
62 is booted up by primary boot media or secondary boot media.
63
Lokesh Vutla6b6a3942018-11-02 19:51:04 +053064config SYS_K3_KEY
65 string "Key used to generate x509 certificate"
66 help
67 This option enables to provide a custom key that can be used for
68 generating x509 certificate for spl binary. If not needed leave
69 it blank so that a random key is generated and used.
70
71config SYS_K3_BOOT_CORE_ID
72 int
73 default 16
74
Andreas Dannenbergd13ec8c2019-08-15 15:55:28 -050075config K3_EARLY_CONS
76 bool "Activate to allow for an early console during SPL"
77 depends on SPL
78 help
79 Turn this option on to enable an early console functionality in SPL
80 before the main console is being brought up. This can be useful in
81 situations where the main console is dependent on System Firmware
82 (SYSFW) being up and running, which is usually not the case during
83 the very early stages of boot. Using this early console functionality
84 will allow for an alternate serial port to be used to support things
85 like UART-based boot and early diagnostic messages until the main
86 console is ready to get activated.
87
88config K3_EARLY_CONS_IDX
89 depends on K3_EARLY_CONS
90 int "Index of serial device to use for SPL early console"
91 default 1
92 help
93 Use this option to set the index of the serial device to be used
94 for the early console during SPL execution.
95
Andreas Dannenberg04e5ea82019-06-04 17:55:47 -050096config K3_LOAD_SYSFW
97 bool
98 depends on SPL
99
100config K3_SYSFW_IMAGE_NAME
101 string "File name of SYSFW firmware and configuration blob"
102 depends on K3_LOAD_SYSFW
103 default "sysfw.itb"
104 help
105 Filename of the combined System Firmware and configuration image tree
106 blob to be loaded when booting from a filesystem.
107
108config K3_SYSFW_IMAGE_MMCSD_RAW_MODE_SECT
109 hex "MMC sector to load SYSFW firmware and configuration blob from"
110 depends on K3_LOAD_SYSFW && SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
111 default 0x3600
112 help
113 Address on the MMC to load the combined System Firmware and
114 configuration image tree blob from, when the MMC is being used
115 in raw mode. Units: MMC sectors (1 sector = 512 bytes).
116
117config K3_SYSFW_IMAGE_MMCSD_RAW_MODE_PART
118 hex "MMC partition to load SYSFW firmware and configuration blob from"
119 depends on K3_LOAD_SYSFW && SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
120 default 2
121 help
122 Partition on the MMC to the combined System Firmware and configuration
123 image tree blob from, when the MMC is being used in raw mode.
124
125config K3_SYSFW_IMAGE_SIZE_MAX
126 int "Amount of memory dynamically allocated for loading SYSFW blob"
127 depends on K3_LOAD_SYSFW
Andrew F. Davis4ef30592020-04-30 15:12:19 -0400128 default 278000
Andreas Dannenberg04e5ea82019-06-04 17:55:47 -0500129 help
130 Amount of memory (in bytes) reserved through dynamic allocation at
131 runtime for loading the combined System Firmware and configuration image
132 tree blob. Keep it as tight as possible, as this directly affects the
133 overall SPL memory footprint.
134
Lokesh Vutlaa5f27562020-02-04 11:09:50 +0530135config K3_SYSFW_IMAGE_SPI_OFFS
136 hex "SPI offset of SYSFW firmware and configuration blob"
137 depends on K3_LOAD_SYSFW
138 default 0x6C0000
139 help
140 Offset of the combined System Firmware and configuration image tree
141 blob to be loaded when booting from a SPI flash memory.
142
Lokesh Vutla5d83fd22018-11-02 19:51:05 +0530143config SYS_K3_SPL_ATF
144 bool "Start Cortex-A from SPL"
145 depends on SPL && CPU_V7R
146 help
147 Enabling this will try to start Cortex-A (typically with ATF)
148 after SPL from R5.
149
Aswath Govindraju560ea8a2021-06-04 22:00:31 +0530150config K3_ATF_LOAD_ADDR
151 hex "Load address of ATF image"
152 default 0x70000000
153 help
154 The load address for the ATF image. This value defaults to 0x70000000
155 if not provided in the board defconfig file.
156
Tero Kristo18b8c032021-06-11 11:45:03 +0300157config K3_DM_FW
158 bool "Separate DM firmware image"
159 depends on SPL && CPU_V7R && SOC_K3_J721E && !CLK_TI_SCI && !TI_SCI_POWER_DOMAIN
160 default y
161 help
162 Enabling this will indicate that the system has separate DM
163 and TIFS firmware images in place, instead of a single SYSFW
164 firmware. Due to DM being executed on the same core as R5 SPL
165 bootloader, it makes RM and PM services not being available
166 during R5 SPL execution time.
167
Lokesh Vutla029f9212018-08-27 15:59:06 +0530168source "board/ti/am65x/Kconfig"
Dave Gerlach3dc33f12021-04-23 11:27:42 -0500169source "board/ti/am64x/Kconfig"
Lokesh Vutla1a9dd212019-06-13 10:29:49 +0530170source "board/ti/j721e/Kconfig"
Jan Kiszka8ff2ff82021-09-18 08:17:53 +0200171source "board/siemens/iot2050/Kconfig"
Lokesh Vutla9bdec002018-08-27 15:57:08 +0530172endif