blob: f3f42b392139fef90cea309a48efde920eda017d [file] [log] [blame]
Lokesh Vutla586bde92018-08-27 15:57:08 +05301if ARCH_K3
2
3choice
4 prompt "Texas Instruments' K3 based SoC select"
5 optional
6
Apurva Nandan013b3e02024-02-24 01:51:40 +05307config SOC_K3_AM625
8 bool "TI's K3 based AM625 SoC Family Support"
9
10config SOC_K3_AM62A7
11 bool "TI's K3 based AM62A7 SoC Family Support"
12
Bryan Brattlof7f883272024-03-12 15:20:24 -050013config SOC_K3_AM62P5
14 bool "TI's K3 based AM62P5 SoC Family Support"
15
Apurva Nandan013b3e02024-02-24 01:51:40 +053016config SOC_K3_AM642
17 bool "TI's K3 based AM642 SoC Family Support"
18
Andrew Davis80b93bb2022-07-15 10:25:27 -050019config SOC_K3_AM654
20 bool "TI's K3 based AM654 SoC Family Support"
Lokesh Vutlaed0e6052018-08-27 15:57:09 +053021
Lokesh Vutlac2562d72019-06-13 10:29:42 +053022config SOC_K3_J721E
23 bool "TI's K3 based J721E SoC Family Support"
24
David Huang681023a2022-01-25 20:56:31 +053025config SOC_K3_J721S2
26 bool "TI's K3 based J721S2 SoC Family Support"
27
Jayesh Choudhary5e291ee2024-06-12 14:41:18 +053028config SOC_K3_J722S
29 bool "TI's K3 based J722S SoC Family Support"
30
Apurva Nandan20d05542024-02-24 01:51:41 +053031config SOC_K3_J784S4
32 bool "TI's K3 based J784S4 SoC Family Support"
33
Lokesh Vutla586bde92018-08-27 15:57:08 +053034endchoice
35
Nishanth Menon97bf0822023-11-04 02:21:44 -050036if SOC_K3_J721E
37config SOC_K3_J721E_J7200
38 bool "TI's K3 based J7200 SoC variant Family Support"
39endif
40
Lokesh Vutla586bde92018-08-27 15:57:08 +053041config SYS_SOC
42 default "k3"
43
Lokesh Vutlaed0e6052018-08-27 15:57:09 +053044config SYS_K3_NON_SECURE_MSRAM_SIZE
45 hex
Andrew Davis80b93bb2022-07-15 10:25:27 -050046 default 0x80000 if SOC_K3_AM654
Apurva Nandan20d05542024-02-24 01:51:41 +053047 default 0x100000 if SOC_K3_J721E || SOC_K3_J721S2 || SOC_K3_J784S4
Dave Gerlacheb541682021-04-23 11:27:32 -050048 default 0x1c0000 if SOC_K3_AM642
Bryan Brattlofb511b372022-11-03 19:13:55 -050049 default 0x3c000 if SOC_K3_AM625 || SOC_K3_AM62A7
Lokesh Vutlaed0e6052018-08-27 15:57:09 +053050 help
Dave Gerlacheb541682021-04-23 11:27:32 -050051 Describes the total size of the MCU or OCMC MSRAM present on
52 the SoC in use. This doesn't specify the total size of SPL as
53 ROM can use some part of this RAM. Once ROM gives control to
54 SPL then this complete size can be usable.
Lokesh Vutlaed0e6052018-08-27 15:57:09 +053055
56config SYS_K3_MAX_DOWNLODABLE_IMAGE_SIZE
57 hex
Andrew Davis80b93bb2022-07-15 10:25:27 -050058 default 0x58000 if SOC_K3_AM654
Apurva Nandan20d05542024-02-24 01:51:41 +053059 default 0xc0000 if SOC_K3_J721E || SOC_K3_J721S2 || SOC_K3_J784S4
Dave Gerlacheb541682021-04-23 11:27:32 -050060 default 0x180000 if SOC_K3_AM642
Bryan Brattlofb511b372022-11-03 19:13:55 -050061 default 0x38000 if SOC_K3_AM625 || SOC_K3_AM62A7
Lokesh Vutlaed0e6052018-08-27 15:57:09 +053062 help
63 Describes the maximum size of the image that ROM can download
64 from any boot media.
65
66config SYS_K3_MCU_SCRATCHPAD_BASE
67 hex
Andrew Davis80b93bb2022-07-15 10:25:27 -050068 default 0x40280000 if SOC_K3_AM654
Apurva Nandan20d05542024-02-24 01:51:41 +053069 default 0x41cff9fc if SOC_K3_J721E || SOC_K3_J721S2 || SOC_K3_J784S4
Lokesh Vutlaed0e6052018-08-27 15:57:09 +053070 help
71 Describes the base address of MCU Scratchpad RAM.
72
73config SYS_K3_MCU_SCRATCHPAD_SIZE
74 hex
Andrew Davis80b93bb2022-07-15 10:25:27 -050075 default 0x200 if SOC_K3_AM654
Apurva Nandan20d05542024-02-24 01:51:41 +053076 default 0x200 if SOC_K3_J721E || SOC_K3_J721S2 || SOC_K3_J784S4
Lokesh Vutlaed0e6052018-08-27 15:57:09 +053077 help
78 Describes the size of MCU Scratchpad RAM.
79
Lokesh Vutlae0064602018-08-27 15:57:11 +053080config SYS_K3_BOOT_PARAM_TABLE_INDEX
81 hex
Andrew Davis80b93bb2022-07-15 10:25:27 -050082 default 0x41c7fbfc if SOC_K3_AM654
Andreas Dannenberga06df8f2019-06-27 20:03:21 -050083 default 0x41cffbfc if SOC_K3_J721E
Apurva Nandan20d05542024-02-24 01:51:41 +053084 default 0x41cfdbfc if SOC_K3_J721S2 || SOC_K3_J784S4
Dave Gerlacheb541682021-04-23 11:27:32 -050085 default 0x701bebfc if SOC_K3_AM642
Bryan Brattlofb672e852022-12-23 19:15:23 -060086 default 0x43c3f290 if SOC_K3_AM625
87 default 0x43c3f290 if SOC_K3_AM62A7 && CPU_V7R
88 default 0x7000f290 if SOC_K3_AM62A7 && ARM64
Bryan Brattlof7f883272024-03-12 15:20:24 -050089 default 0x43c4f290 if SOC_K3_AM62P5
Jayesh Choudhary5e291ee2024-06-12 14:41:18 +053090 default 0x43c7f290 if SOC_K3_J722S
Lokesh Vutlae0064602018-08-27 15:57:11 +053091 help
92 Address at which ROM stores the value which determines if SPL
93 is booted up by primary boot media or secondary boot media.
94
Lokesh Vutla890b2e72018-11-02 19:51:04 +053095config SYS_K3_KEY
96 string "Key used to generate x509 certificate"
97 help
98 This option enables to provide a custom key that can be used for
99 generating x509 certificate for spl binary. If not needed leave
100 it blank so that a random key is generated and used.
101
102config SYS_K3_BOOT_CORE_ID
103 int
104 default 16
105
Andreas Dannenberge630afe12019-08-15 15:55:28 -0500106config K3_EARLY_CONS
107 bool "Activate to allow for an early console during SPL"
108 depends on SPL
109 help
110 Turn this option on to enable an early console functionality in SPL
111 before the main console is being brought up. This can be useful in
112 situations where the main console is dependent on System Firmware
113 (SYSFW) being up and running, which is usually not the case during
114 the very early stages of boot. Using this early console functionality
115 will allow for an alternate serial port to be used to support things
116 like UART-based boot and early diagnostic messages until the main
117 console is ready to get activated.
118
119config K3_EARLY_CONS_IDX
120 depends on K3_EARLY_CONS
121 int "Index of serial device to use for SPL early console"
122 default 1
123 help
124 Use this option to set the index of the serial device to be used
125 for the early console during SPL execution.
126
Aswath Govindraju0c515092021-06-04 22:00:31 +0530127config K3_ATF_LOAD_ADDR
128 hex "Load address of ATF image"
Jayesh Choudhary5e291ee2024-06-12 14:41:18 +0530129 default 0x80000000 if (SOC_K3_AM625 || SOC_K3_AM62A7 || SOC_K3_AM62P5 || SOC_K3_J722S)
Aswath Govindraju0c515092021-06-04 22:00:31 +0530130 default 0x70000000
131 help
Andrew Davis4129bdf2024-02-14 10:30:04 -0600132 The load address for the ATF image. This value is used to build the
133 FIT image header that places ATF in memory where it will run.
Aswath Govindraju0c515092021-06-04 22:00:31 +0530134
Andrew Davis55668392024-02-14 10:30:05 -0600135config K3_OPTEE_LOAD_ADDR
136 hex "Load address of OPTEE image"
137 default 0x9e800000
138 help
139 The load address for the OPTEE image. This value defaults to 0x9e800000
Lokesh Vutla586bde92018-08-27 15:57:08 +0530140 if not provided in the board defconfig file.
141
Tero Kristo99214c12021-06-11 11:45:03 +0300142config K3_DM_FW
143 bool "Separate DM firmware image"
Bryan Brattlofe6175502024-03-12 15:20:23 -0500144 depends on CPU_V7R && !SOC_K3_AM642 && !SOC_K3_AM654 && !CLK_TI_SCI && !TI_SCI_POWER_DOMAIN
Tero Kristo99214c12021-06-11 11:45:03 +0300145 default y
146 help
147 Enabling this will indicate that the system has separate DM
148 and TIFS firmware images in place, instead of a single SYSFW
149 firmware. Due to DM being executed on the same core as R5 SPL
150 bootloader, it makes RM and PM services not being available
151 during R5 SPL execution time.
152
Yogesh Siraswar00194272022-07-15 11:38:53 -0500153config K3_X509_SWRV
154 int "SWRV for X509 certificate used for boot images"
155 default 1
156 help
157 SWRV for X509 certificate used for boot images
158
Andrew Davis140d4272023-11-14 09:59:50 -0600159if CPU_V7R
160source "arch/arm/mach-k3/r5/Kconfig"
161endif
162
Andrew Davisc3a9f9b2023-11-01 15:35:26 -0500163source "arch/arm/mach-k3/am65x/Kconfig"
Andrew Davised51c912023-11-01 15:35:27 -0500164source "arch/arm/mach-k3/am64x/Kconfig"
Andrew Davisf3bfec72023-11-01 15:35:28 -0500165source "arch/arm/mach-k3/am62x/Kconfig"
Andrew Davise4439ca2023-11-01 15:35:29 -0500166source "arch/arm/mach-k3/am62ax/Kconfig"
Bryan Brattlof7f883272024-03-12 15:20:24 -0500167source "arch/arm/mach-k3/am62px/Kconfig"
Andrew Davis1736b2f2023-11-01 15:35:25 -0500168source "arch/arm/mach-k3/j721e/Kconfig"
Andrew Davis5710d0a2023-11-01 15:35:30 -0500169source "arch/arm/mach-k3/j721s2/Kconfig"
Jayesh Choudhary5e291ee2024-06-12 14:41:18 +0530170source "arch/arm/mach-k3/j722s/Kconfig"
Apurva Nandande5ef5d2024-02-24 01:51:46 +0530171source "arch/arm/mach-k3/j784s4/Kconfig"
Andrew Davisf3bfec72023-11-01 15:35:28 -0500172
Lokesh Vutla586bde92018-08-27 15:57:08 +0530173endif