Kconfig: j721e: Change K3_MCU_SCRATCHPAD_BASE to non firewalled region
[platform/kernel/u-boot.git] / arch / arm / mach-k3 / Kconfig
1 if ARCH_K3
2
3 choice
4         prompt "Texas Instruments' K3 based SoC select"
5         optional
6
7 config SOC_K3_AM654
8         bool "TI's K3 based AM654 SoC Family Support"
9
10 config SOC_K3_J721E
11         bool "TI's K3 based J721E SoC Family Support"
12
13 config SOC_K3_J721S2
14         bool "TI's K3 based J721S2 SoC Family Support"
15
16 config SOC_K3_AM642
17         bool "TI's K3 based AM642 SoC Family Support"
18
19 config SOC_K3_AM625
20         bool "TI's K3 based AM625 SoC Family Support"
21
22 config SOC_K3_AM62A7
23         bool "TI's K3 based AM62A7 SoC Family Support"
24
25 endchoice
26
27 config SYS_SOC
28         default "k3"
29
30 config SYS_K3_NON_SECURE_MSRAM_SIZE
31         hex
32         default 0x80000 if SOC_K3_AM654
33         default 0x100000 if SOC_K3_J721E || SOC_K3_J721S2
34         default 0x1c0000 if SOC_K3_AM642
35         default 0x3c000 if SOC_K3_AM625 || SOC_K3_AM62A7
36         help
37           Describes the total size of the MCU or OCMC MSRAM present on
38           the SoC in use. This doesn't specify the total size of SPL as
39           ROM can use some part of this RAM. Once ROM gives control to
40           SPL then this complete size can be usable.
41
42 config SYS_K3_MAX_DOWNLODABLE_IMAGE_SIZE
43         hex
44         default 0x58000 if SOC_K3_AM654
45         default 0xc0000 if SOC_K3_J721E || SOC_K3_J721S2
46         default 0x180000 if SOC_K3_AM642
47         default 0x38000 if SOC_K3_AM625 || SOC_K3_AM62A7
48         help
49           Describes the maximum size of the image that ROM can download
50           from any boot media.
51
52 config SYS_K3_MCU_SCRATCHPAD_BASE
53         hex
54         default 0x40280000 if SOC_K3_AM654
55         default 0x40280000 if SOC_K3_J721S2
56         default 0x41cff9fc if SOC_K3_J721E
57         help
58           Describes the base address of MCU Scratchpad RAM.
59
60 config SYS_K3_MCU_SCRATCHPAD_SIZE
61         hex
62         default 0x200 if SOC_K3_AM654
63         default 0x200 if SOC_K3_J721E || SOC_K3_J721S2
64         help
65           Describes the size of MCU Scratchpad RAM.
66
67 config SYS_K3_BOOT_PARAM_TABLE_INDEX
68         hex
69         default 0x41c7fbfc if SOC_K3_AM654
70         default 0x41cffbfc if SOC_K3_J721E
71         default 0x41cfdbfc if SOC_K3_J721S2
72         default 0x701bebfc if SOC_K3_AM642
73         default 0x43c3f290 if SOC_K3_AM625
74         default 0x43c3f290 if SOC_K3_AM62A7 && CPU_V7R
75         default 0x7000f290 if SOC_K3_AM62A7 && ARM64
76         help
77           Address at which ROM stores the value which determines if SPL
78           is booted up by primary boot media or secondary boot media.
79
80 config SYS_K3_KEY
81         string "Key used to generate x509 certificate"
82         help
83           This option enables to provide a custom key that can be used for
84           generating x509 certificate for spl binary. If not needed leave
85           it blank so that a random key is generated and used.
86
87 config SYS_K3_BOOT_CORE_ID
88         int
89         default 16
90
91 config K3_EARLY_CONS
92         bool "Activate to allow for an early console during SPL"
93         depends on SPL
94         help
95           Turn this option on to enable an early console functionality in SPL
96           before the main console is being brought up. This can be useful in
97           situations where the main console is dependent on System Firmware
98           (SYSFW) being up and running, which is usually not the case during
99           the very early stages of boot. Using this early console functionality
100           will allow for an alternate serial port to be used to support things
101           like UART-based boot and early diagnostic messages until the main
102           console is ready to get activated.
103
104 config K3_EARLY_CONS_IDX
105         depends on K3_EARLY_CONS
106         int "Index of serial device to use for SPL early console"
107         default 1
108         help
109           Use this option to set the index of the serial device to be used
110           for the early console during SPL execution.
111
112 config K3_LOAD_SYSFW
113         bool
114         depends on SPL
115
116 config K3_SYSFW_IMAGE_NAME
117         string "File name of SYSFW firmware and configuration blob"
118         depends on K3_LOAD_SYSFW
119         default "sysfw.itb"
120         help
121           Filename of the combined System Firmware and configuration image tree
122           blob to be loaded when booting from a filesystem.
123
124 config K3_SYSFW_IMAGE_MMCSD_RAW_MODE_SECT
125         hex "MMC sector to load SYSFW firmware and configuration blob from"
126         depends on K3_LOAD_SYSFW && SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
127         default 0x3600
128         help
129           Address on the MMC to load the combined System Firmware and
130           configuration image tree blob from, when the MMC is being used
131           in raw mode. Units: MMC sectors (1 sector = 512 bytes).
132
133 config K3_SYSFW_IMAGE_MMCSD_RAW_MODE_PART
134         hex "MMC partition to load SYSFW firmware and configuration blob from"
135         depends on K3_LOAD_SYSFW && SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
136         default 2
137         help
138           Partition on the MMC to the combined System Firmware and configuration
139           image tree blob from, when the MMC is being used in raw mode.
140
141 config K3_SYSFW_IMAGE_SIZE_MAX
142         int "Amount of memory dynamically allocated for loading SYSFW blob"
143         depends on K3_LOAD_SYSFW
144         default 163840 if SOC_K3_AM625 || SOC_K3_AM62A7
145         default 278000
146         help
147           Amount of memory (in bytes) reserved through dynamic allocation at
148           runtime for loading the combined System Firmware and configuration image
149           tree blob. Keep it as tight as possible, as this directly affects the
150           overall SPL memory footprint.
151
152 config K3_SYSFW_IMAGE_SPI_OFFS
153         hex "SPI offset of SYSFW firmware and configuration blob"
154         depends on K3_LOAD_SYSFW
155         default 0x6C0000
156         help
157           Offset of the combined System Firmware and configuration image tree
158           blob to be loaded when booting from a SPI flash memory.
159
160 config SYS_K3_SPL_ATF
161         bool "Start Cortex-A from SPL"
162         depends on SPL && CPU_V7R
163         help
164           Enabling this will try to start Cortex-A (typically with ATF)
165           after SPL from R5.
166
167 config K3_ATF_LOAD_ADDR
168         hex "Load address of ATF image"
169         default 0x70000000
170         help
171           The load address for the ATF image. This value defaults to 0x70000000
172           if not provided in the board defconfig file.
173
174 config K3_DM_FW
175         bool "Separate DM firmware image"
176         depends on SPL && CPU_V7R && (SOC_K3_J721E || SOC_K3_J721S2 || SOC_K3_AM625 || SOC_K3_AM62A7) && !CLK_TI_SCI && !TI_SCI_POWER_DOMAIN
177         default y
178         help
179           Enabling this will indicate that the system has separate DM
180           and TIFS firmware images in place, instead of a single SYSFW
181           firmware. Due to DM being executed on the same core as R5 SPL
182           bootloader, it makes RM and PM services not being available
183           during R5 SPL execution time.
184
185 config K3_X509_SWRV
186         int "SWRV for X509 certificate used for boot images"
187         default 1
188         help
189           SWRV for X509 certificate used for boot images
190
191 source "board/ti/am65x/Kconfig"
192 source "board/ti/am64x/Kconfig"
193 source "board/ti/am62x/Kconfig"
194 source "board/ti/am62ax/Kconfig"
195 source "board/ti/j721e/Kconfig"
196 source "board/siemens/iot2050/Kconfig"
197 source "board/ti/j721s2/Kconfig"
198 endif