Merge branch '2022-08-04-Kconfig-migrations'
[platform/kernel/u-boot.git] / arch / Kconfig.nxp
1 config NXP_ESBC
2         bool "NXP ESBC (secure boot) functionality"
3         help
4           Enable Freescale Secure Boot feature. Normally selected by defconfig.
5           If unsure, do not change.
6
7 menu "Chain of trust / secure boot options"
8         depends on !FIT_SIGNATURE && NXP_ESBC
9
10 config CHAIN_OF_TRUST
11         select FSL_CAAM
12         select ARCH_MISC_INIT
13         select FSL_SEC_MON
14         select SPL_BOARD_INIT if (ARM && SPL)
15         select SPL_HASH if (ARM && SPL)
16         select SHA_HW_ACCEL
17         select SHA_PROG_HW_ACCEL
18         select ENV_IS_NOWHERE
19         select SYS_CPC_REINIT_F if MPC85xx && !SYS_RAMBOOT
20         select CMD_EXT4 if ARM
21         select CMD_EXT4_WRITE if ARM
22         imply CMD_BLOB
23         imply CMD_HASH if ARM
24         def_bool y
25
26 config CMD_ESBC_VALIDATE
27         bool "Enable the 'esbc_validate' and 'esbc_halt' commands"
28         default y
29         help
30           This option enables two commands used for secure booting:
31
32             esbc_validate - validate signature using RSA verification
33             esbc_halt - put the core in spin loop (Secure Boot Only)
34
35 config ESBC_HDR_LS
36         bool
37
38 config ESBC_ADDR_64BIT
39         def_bool y
40         depends on ESBC_HDR_LS && FSL_LAYERSCAPE
41         help
42           For Layerscape based platforms, ESBC image Address in Header is 64bit.
43
44 config SYS_FSL_SFP_BE
45         def_bool y
46         depends on PPC || FSL_LSCH2 || ARCH_LS1021A
47
48 config SYS_FSL_SFP_LE
49         def_bool y
50         depends on !SYS_FSL_SFP_BE
51
52 choice
53         prompt "SFP IP revision"
54         default SYS_FSL_SFP_VER_3_0 if PPC
55         default SYS_FSL_SFP_VER_3_4
56
57 config SYS_FSL_SFP_VER_3_0
58         bool "SFP version 3.0"
59
60 config SYS_FSL_SFP_VER_3_2
61         bool "SFP version 3.2"
62
63 config SYS_FSL_SFP_VER_3_4
64         bool "SFP version 3.4"
65
66 endchoice
67
68 config SPL_UBOOT_KEY_HASH
69         string "Non-SRK key hash for U-Boot public/private key pair"
70         depends on SPL
71         default ""
72         help
73           Set the key hash for U-Boot here if public/private key pair used to
74           sign U-boot are different from the SRK hash put in the fuse.  Example
75           of a key hash is
76           41066b564c6ffcef40ccbc1e0a5d0d519604000c785d97bbefd25e4d288d1c8b.
77           Otherwise leave this empty.
78
79 if PPC
80
81 config BOOTSCRIPT_COPY_RAM
82         bool "Secure boot copies boot script to RAM"
83         help
84           On systems that support chain of trust booting, a number of addresses
85           are required to set variables that are used in the copying and then
86           verification of different parts of the system.  If enabled, the subsequent
87           options are for what location to use in each step.
88
89 config BS_ADDR_DEVICE
90         hex "Address in RAM for bs_device"
91         depends on BOOTSCRIPT_COPY_RAM
92
93 config BS_SIZE
94         hex "The size of bs_size which is the amount read from bs_device"
95         depends on BOOTSCRIPT_COPY_RAM
96
97 config BS_ADDR_RAM
98         hex "Address in RAM for bs_ram"
99         depends on BOOTSCRIPT_COPY_RAM
100
101 config BS_HDR_ADDR_DEVICE
102         hex "Address in RAM for bs_hdr_device"
103         depends on BOOTSCRIPT_COPY_RAM
104
105 config BS_HDR_SIZE
106         hex "The size of bs_hdr_size which is the amount read from bs_hdr_device"
107         depends on BOOTSCRIPT_COPY_RAM
108
109 config BS_HDR_ADDR_RAM
110         hex "Address in RAM for bs_hdr_ram"
111         depends on BOOTSCRIPT_COPY_RAM
112
113 config BOOTSCRIPT_HDR_ADDR
114         hex "CONFIG_BOOTSCRIPT_HDR_ADDR"
115         default BS_ADDR_RAM if BOOTSCRIPT_COPY_RAM
116
117 endif
118
119 config SYS_FSL_SRK_LE
120         def_bool y
121         depends on ARM
122
123 config KEY_REVOCATION
124         def_bool y
125
126 endmenu
127
128 comment "Other functionality shared between NXP SoCs"
129
130 config DEEP_SLEEP
131         bool "Enable SoC deep sleep feature"
132         depends on ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || ARCH_LS1021A
133         default y
134         help
135           Indicates this SoC supports deep sleep feature. If deep sleep is
136           supported, core will start to execute uboot when wakes up.
137
138 config LAYERSCAPE_NS_ACCESS
139         bool "Layerscape non-secure access support"
140         depends on ARCH_LS1021A || FSL_LSCH2
141
142 config PCIE1
143         bool "PCIe controller #1"
144         depends on LAYERSCAPE_NS_ACCESS || PPC
145
146 config PCIE2
147         bool "PCIe controller #2"
148         depends on LAYERSCAPE_NS_ACCESS || PPC
149
150 config PCIE3
151         bool "PCIe controller #3"
152         depends on LAYERSCAPE_NS_ACCESS || PPC
153
154 config PCIE4
155         bool "PCIe controller #4"
156         depends on LAYERSCAPE_NS_ACCESS || PPC
157
158 config FSL_USE_PCA9547_MUX
159         bool "Enable PCA9547 I2C Mux on Freescale boards"
160         depends on PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
161         help
162          This option enables the PCA9547 I2C mux on Freescale boards.
163
164 config VID
165         bool "Enable Freescale VID"
166         depends on (PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3) && (I2C || DM_I2C)
167         help
168          This option enables setting core voltage based on individual
169          values saved in SoC fuses.
170
171 config SPL_VID
172         bool "Enable Freescale VID in SPL"
173         depends on (PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3) && (SPL_I2C || DM_SPL_I2C)
174         help
175          This option enables setting core voltage based on individual
176          values saved in SoC fuses, in SPL.
177
178 if VID || SPL_VID
179
180 config VID_FLS_ENV
181         string "Environment variable for overriding VDD"
182         help
183           This option allows for specifying the environment variable
184           to check to override VDD information.
185
186 config VOL_MONITOR_INA220
187         bool "Enable the INA220 voltage monitor read"
188         help
189           This option enables INA220 voltage monitor read
190           functionality. It is used by the common VID driver.
191
192 config VOL_MONITOR_IR36021_READ
193         bool "Enable the IR36021 voltage monitor read"
194         help
195          This option enables IR36021 voltage monitor read
196          functionality. It is used by the common VID driver.
197
198 config VOL_MONITOR_IR36021_SET
199         bool "Enable the IR36021 voltage monitor set"
200         help
201          This option enables IR36021 voltage monitor set
202          functionality. It is used by the common VID driver.
203
204 config VOL_MONITOR_LTC3882_READ
205         bool "Enable the LTC3882 voltage monitor read"
206         help
207          This option enables LTC3882 voltage monitor read
208          functionality. It is used by the common VID driver.
209
210 config VOL_MONITOR_LTC3882_SET
211         bool "Enable the LTC3882 voltage monitor set"
212         help
213          This option enables LTC3882 voltage monitor set
214          functionality. It is used by the common VID driver.
215
216 config VOL_MONITOR_ISL68233_READ
217         bool "Enable the ISL68233 voltage monitor read"
218         help
219          This option enables ISL68233 voltage monitor read
220          functionality. It is used by the common VID driver.
221
222 config VOL_MONITOR_ISL68233_SET
223         bool "Enable the ISL68233 voltage monitor set"
224         help
225          This option enables ISL68233 voltage monitor set
226          functionality. It is used by the common VID driver.
227
228 endif
229
230 config SYS_FSL_ESDHC_BE
231         bool
232
233 config SYS_FSL_IFC_BE
234         bool
235
236 config FSL_QIXIS
237         bool "Enable QIXIS support"
238         depends on PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
239
240 config QIXIS_I2C_ACCESS
241         bool "Access to QIXIS is over i2c"
242         depends on FSL_QIXIS
243         default y
244
245 config HAS_FSL_DR_USB
246         def_bool y
247         depends on USB_EHCI_HCD && PPC