]> git.ipfire.org Git - thirdparty/u-boot.git/blob - arch/Kconfig.nxp
6e1c44b7ea82ad5a941a1c3564256d29115fc0db
[thirdparty/u-boot.git] / arch / Kconfig.nxp
1 menu "Functionality shared between NXP SoCs"
2
3 config FSL_TRUST_ARCH_v1
4 bool
5
6 config NXP_ESBC
7 bool "NXP ESBC (secure boot) functionality"
8 select FSL_TRUST_ARCH_v1 if ARCH_P3041 || ARCH_P4080 || \
9 ARCH_P5040 || ARCH_P2041
10 help
11 Enable Freescale Secure Boot feature. Normally selected by defconfig.
12 If unsure, do not change.
13
14 menu "Chain of trust / secure boot options"
15 depends on !FIT_SIGNATURE && NXP_ESBC
16
17 config CHAIN_OF_TRUST
18 select FSL_CAAM
19 select ARCH_MISC_INIT
20 select FSL_ISBC_KEY_EXT if (ARM || FSL_CORENET) && !SYS_RAMBOOT
21 select FSL_SEC_MON
22 select SPL_BOARD_INIT if (ARM && SPL)
23 select SPL_HASH if (ARM && SPL)
24 select SHA_HW_ACCEL
25 select SHA_PROG_HW_ACCEL
26 select ENV_IS_NOWHERE
27 select SYS_CPC_REINIT_F if MPC85xx && !SYS_RAMBOOT
28 select CMD_EXT4 if ARM
29 select CMD_EXT4_WRITE if ARM
30 imply CMD_BLOB
31 imply CMD_HASH if ARM
32 def_bool y
33
34 config CMD_ESBC_VALIDATE
35 bool "Enable the 'esbc_validate' and 'esbc_halt' commands"
36 default y
37 help
38 This option enables two commands used for secure booting:
39
40 esbc_validate - validate signature using RSA verification
41 esbc_halt - put the core in spin loop (Secure Boot Only)
42
43 config ESBC_HDR_LS
44 bool
45
46 config ESBC_ADDR_64BIT
47 def_bool y
48 depends on ESBC_HDR_LS && FSL_LAYERSCAPE
49 help
50 For Layerscape based platforms, ESBC image Address in Header is 64bit.
51
52 config FSL_ISBC_KEY_EXT
53 bool
54 help
55 The key used for verification of next level images is picked up from
56 an Extension Table which has been verified by the ISBC (Internal
57 Secure boot Code) in boot ROM of the SoC. The feature is only
58 applicable in case of NOR boot and is not applicable in case of
59 RAMBOOT (NAND, SD, SPI). For Layerscape, this feature is available
60 for all device if IE Table is copied to XIP memory Also, for
61 Layerscape, ISBC doesn't verify this table.
62
63 config SYS_FSL_SFP_BE
64 def_bool y
65 depends on PPC || FSL_LSCH2 || ARCH_LS1021A
66
67 config SYS_FSL_SFP_LE
68 def_bool y
69 depends on !SYS_FSL_SFP_BE
70
71 choice
72 prompt "SFP IP revision"
73 default SYS_FSL_SFP_VER_3_0 if PPC
74 default SYS_FSL_SFP_VER_3_4
75
76 config SYS_FSL_SFP_VER_3_0
77 bool "SFP version 3.0"
78
79 config SYS_FSL_SFP_VER_3_2
80 bool "SFP version 3.2"
81
82 config SYS_FSL_SFP_VER_3_4
83 bool "SFP version 3.4"
84
85 endchoice
86
87 config SPL_UBOOT_KEY_HASH
88 string "Non-SRK key hash for U-Boot public/private key pair"
89 depends on SPL
90 default ""
91 help
92 Set the key hash for U-Boot here if public/private key pair used to
93 sign U-boot are different from the SRK hash put in the fuse. Example
94 of a key hash is
95 41066b564c6ffcef40ccbc1e0a5d0d519604000c785d97bbefd25e4d288d1c8b.
96 Otherwise leave this empty.
97
98 if PPC
99
100 config BOOTSCRIPT_COPY_RAM
101 bool "Secure boot copies boot script to RAM"
102 help
103 On systems that support chain of trust booting, a number of addresses
104 are required to set variables that are used in the copying and then
105 verification of different parts of the system. If enabled, the subsequent
106 options are for what location to use in each step.
107
108 config BS_ADDR_DEVICE
109 hex "Address in RAM for bs_device"
110 depends on BOOTSCRIPT_COPY_RAM
111
112 config BS_SIZE
113 hex "The size of bs_size which is the amount read from bs_device"
114 depends on BOOTSCRIPT_COPY_RAM
115
116 config BS_ADDR_RAM
117 hex "Address in RAM for bs_ram"
118 depends on BOOTSCRIPT_COPY_RAM
119
120 config BS_HDR_ADDR_DEVICE
121 hex "Address in RAM for bs_hdr_device"
122 depends on BOOTSCRIPT_COPY_RAM
123
124 config BS_HDR_SIZE
125 hex "The size of bs_hdr_size which is the amount read from bs_hdr_device"
126 depends on BOOTSCRIPT_COPY_RAM
127
128 config BS_HDR_ADDR_RAM
129 hex "Address in RAM for bs_hdr_ram"
130 depends on BOOTSCRIPT_COPY_RAM
131
132 config BOOTSCRIPT_HDR_ADDR
133 hex "CONFIG_BOOTSCRIPT_HDR_ADDR"
134 default BS_ADDR_RAM if BOOTSCRIPT_COPY_RAM
135
136 endif
137
138 config SYS_FSL_SRK_LE
139 def_bool y
140 depends on ARM
141
142 config KEY_REVOCATION
143 def_bool y
144
145 endmenu
146
147 config DEEP_SLEEP
148 bool "Enable SoC deep sleep feature"
149 depends on ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || ARCH_LS1021A
150 default y
151 help
152 Indicates this SoC supports deep sleep feature. If deep sleep is
153 supported, core will start to execute uboot when wakes up.
154
155 config LAYERSCAPE_NS_ACCESS
156 bool "Layerscape non-secure access support"
157 depends on ARCH_LS1021A || FSL_LSCH2
158
159 config PCIE1
160 bool "PCIe controller #1"
161 depends on LAYERSCAPE_NS_ACCESS || PPC
162
163 config PCIE2
164 bool "PCIe controller #2"
165 depends on LAYERSCAPE_NS_ACCESS || PPC
166
167 config PCIE3
168 bool "PCIe controller #3"
169 depends on LAYERSCAPE_NS_ACCESS || PPC
170
171 config PCIE4
172 bool "PCIe controller #4"
173 depends on LAYERSCAPE_NS_ACCESS || PPC
174
175 config FSL_USE_PCA9547_MUX
176 bool "Enable PCA9547 I2C Mux on Freescale boards"
177 depends on PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
178 help
179 This option enables the PCA9547 I2C mux on Freescale boards.
180
181 config VID
182 bool "Enable Freescale VID"
183 depends on (PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3) && (I2C || DM_I2C)
184 help
185 This option enables setting core voltage based on individual
186 values saved in SoC fuses.
187
188 config SPL_VID
189 bool "Enable Freescale VID in SPL"
190 depends on (PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3) && (SPL_I2C || DM_SPL_I2C)
191 help
192 This option enables setting core voltage based on individual
193 values saved in SoC fuses, in SPL.
194
195 if VID || SPL_VID
196
197 config VID_FLS_ENV
198 string "Environment variable for overriding VDD"
199 help
200 This option allows for specifying the environment variable
201 to check to override VDD information.
202
203 config VOL_MONITOR_INA220
204 bool "Enable the INA220 voltage monitor read"
205 help
206 This option enables INA220 voltage monitor read
207 functionality. It is used by the common VID driver.
208
209 config VOL_MONITOR_IR36021_READ
210 bool "Enable the IR36021 voltage monitor read"
211 help
212 This option enables IR36021 voltage monitor read
213 functionality. It is used by the common VID driver.
214
215 config VOL_MONITOR_IR36021_SET
216 bool "Enable the IR36021 voltage monitor set"
217 help
218 This option enables IR36021 voltage monitor set
219 functionality. It is used by the common VID driver.
220
221 config VOL_MONITOR_LTC3882_READ
222 bool "Enable the LTC3882 voltage monitor read"
223 help
224 This option enables LTC3882 voltage monitor read
225 functionality. It is used by the common VID driver.
226
227 config VOL_MONITOR_LTC3882_SET
228 bool "Enable the LTC3882 voltage monitor set"
229 help
230 This option enables LTC3882 voltage monitor set
231 functionality. It is used by the common VID driver.
232
233 config VOL_MONITOR_ISL68233_READ
234 bool "Enable the ISL68233 voltage monitor read"
235 help
236 This option enables ISL68233 voltage monitor read
237 functionality. It is used by the common VID driver.
238
239 config VOL_MONITOR_ISL68233_SET
240 bool "Enable the ISL68233 voltage monitor set"
241 help
242 This option enables ISL68233 voltage monitor set
243 functionality. It is used by the common VID driver.
244
245 endif
246
247 config SYS_FSL_NUM_CC_PLLS
248 int "Number of clock control PLLs"
249 depends on MPC85xx || FSL_LSCH2 || FSL_LSCH3 || ARCH_LS1021A || ARCH_LS1028A
250 default 2 if ARCH_LS1021A || ARCH_LS1028A || FSL_LSCH2
251 default 6 if FSL_LSCH3 || MPC85xx
252
253 config SYS_FSL_ESDHC_BE
254 bool
255
256 config SYS_FSL_IFC_BE
257 bool
258
259 config SYS_FSL_IFC_BANK_COUNT
260 int "Maximum banks of Integrated flash controller"
261 depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || \
262 ARCH_LS1088A || ARCH_LS1021A || ARCH_B4860 || ARCH_B4420 || \
263 ARCH_T4240 || ARCH_T1040 || ARCH_T1042 || ARCH_T1024 || \
264 ARCH_T2080 || ARCH_C29X || ARCH_P1010 || ARCH_BSC9131 || \
265 ARCH_BSC9132
266 default 3 if ARCH_BSC9131 || ARCH_BSC9132
267 default 4 if ARCH_LS1043A || ARCH_LS1046A || ARCH_B4860 || \
268 ARCH_B4420 || ARCH_P1010
269 default 8 if ARCH_LS2080A || ARCH_LS1088A || ARCH_LS1021A || \
270 ARCH_T4240 || ARCH_T1040 || ARCH_T1042 || \
271 ARCH_T1024 || ARCH_T2080 || ARCH_C29X
272
273 config FSL_QIXIS
274 bool "Enable QIXIS support"
275 depends on PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
276
277 config QIXIS_I2C_ACCESS
278 bool "Access to QIXIS is over i2c"
279 depends on FSL_QIXIS
280 default y
281
282 config HAS_FSL_DR_USB
283 def_bool y
284 depends on USB_EHCI_HCD && PPC
285
286 config SYS_DPAA_FMAN
287 bool
288
289 config SYS_FSL_SRDS_1
290 bool
291
292 config SYS_FSL_SRDS_2
293 bool
294
295 config SYS_HAS_SERDES
296 bool
297
298 endmenu