blob: 03b73d4cc3497dfda0944677ce510b596b9292aa [file] [log] [blame]
Tom Rini65461122022-06-17 16:24:31 -04001config 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
7menu "Chain of trust / secure boot options"
Udit Agarwal22ec2382019-11-07 16:11:32 +00008 depends on !FIT_SIGNATURE && NXP_ESBC
Tom Rini65461122022-06-17 16:24:31 -04009
10config CHAIN_OF_TRUST
Tom Rinia5c4d402017-03-01 16:51:58 -050011 select FSL_CAAM
Gaurav Jainbd50fd12022-06-09 16:32:15 +053012 select ARCH_MISC_INIT
Tom Rini0b58c2e2022-06-16 14:04:39 -040013 select FSL_SEC_MON
Ley Foon Tan48fcc4a2017-05-03 17:13:32 +080014 select SPL_BOARD_INIT if (ARM && SPL)
Alexandru Gagniuc97464ff2021-09-02 19:54:19 -050015 select SPL_HASH if (ARM && SPL)
Tom Rini5bdd9192017-05-15 12:17:49 -040016 select SHA_HW_ACCEL
17 select SHA_PROG_HW_ACCEL
Simon Glass73c18b42017-07-23 21:19:39 -060018 select ENV_IS_NOWHERE
Sumit Garg13ad2902018-01-09 01:27:46 +053019 select CMD_EXT4 if ARM
20 select CMD_EXT4_WRITE if ARM
Tom Rini65461122022-06-17 16:24:31 -040021 imply CMD_BLOB
22 imply CMD_HASH if ARM
23 def_bool y
Simon Glassa6a9ea42017-05-17 03:25:16 -060024
25config CMD_ESBC_VALIDATE
26 bool "Enable the 'esbc_validate' and 'esbc_halt' commands"
Tom Riniaac187d2022-06-16 14:04:35 -040027 default y
Simon Glassa6a9ea42017-05-17 03:25:16 -060028 help
29 This option enables two commands used for secure booting:
30
31 esbc_validate - validate signature using RSA verification
32 esbc_halt - put the core in spin loop (Secure Boot Only)
Rajesh Bhagat241a3cc2018-01-17 16:13:04 +053033
Tom Rinieb56a392022-06-16 14:04:37 -040034config ESBC_HDR_LS
35 bool
36
37config ESBC_ADDR_64BIT
38 def_bool y
39 depends on ESBC_HDR_LS && FSL_LAYERSCAPE
40 help
41 For Layerscape based platforms, ESBC image Address in Header is 64bit.
42
Tom Rinia1663992022-06-16 14:04:40 -040043config SYS_FSL_SFP_BE
44 def_bool y
Tom Rini65461122022-06-17 16:24:31 -040045 depends on PPC || FSL_LSCH2 || ARCH_LS1021A
Tom Rinia1663992022-06-16 14:04:40 -040046
47config SYS_FSL_SFP_LE
48 def_bool y
Tom Rini65461122022-06-17 16:24:31 -040049 depends on !SYS_FSL_SFP_BE
Tom Rinia1663992022-06-16 14:04:40 -040050
51choice
52 prompt "SFP IP revision"
Tom Rinia1663992022-06-16 14:04:40 -040053 default SYS_FSL_SFP_VER_3_0 if PPC
54 default SYS_FSL_SFP_VER_3_4
55
56config SYS_FSL_SFP_VER_3_0
57 bool "SFP version 3.0"
58
59config SYS_FSL_SFP_VER_3_2
60 bool "SFP version 3.2"
61
62config SYS_FSL_SFP_VER_3_4
63 bool "SFP version 3.4"
64
65endchoice
66
Tom Rini27fcd312022-06-17 16:24:32 -040067config SPL_UBOOT_KEY_HASH
68 string "Non-SRK key hash for U-Boot public/private key pair"
69 depends on SPL
70 default ""
71 help
72 Set the key hash for U-Boot here if public/private key pair used to
73 sign U-boot are different from the SRK hash put in the fuse. Example
74 of a key hash is
75 41066b564c6ffcef40ccbc1e0a5d0d519604000c785d97bbefd25e4d288d1c8b.
76 Otherwise leave this empty.
77
Tom Rinibf1dfd82022-06-17 16:24:34 -040078if PPC
79
80config BOOTSCRIPT_COPY_RAM
81 bool "Secure boot copies boot script to RAM"
82 help
83 On systems that support chain of trust booting, a number of addresses
84 are required to set variables that are used in the copying and then
85 verification of different parts of the system. If enabled, the subsequent
86 options are for what location to use in each step.
87
88config BS_ADDR_DEVICE
89 hex "Address in RAM for bs_device"
90 depends on BOOTSCRIPT_COPY_RAM
91
92config BS_SIZE
93 hex "The size of bs_size which is the amount read from bs_device"
94 depends on BOOTSCRIPT_COPY_RAM
95
96config BS_ADDR_RAM
97 hex "Address in RAM for bs_ram"
98 depends on BOOTSCRIPT_COPY_RAM
99
100config BS_HDR_ADDR_DEVICE
101 hex "Address in RAM for bs_hdr_device"
102 depends on BOOTSCRIPT_COPY_RAM
103
104config BS_HDR_SIZE
105 hex "The size of bs_hdr_size which is the amount read from bs_hdr_device"
106 depends on BOOTSCRIPT_COPY_RAM
107
108config BS_HDR_ADDR_RAM
109 hex "Address in RAM for bs_hdr_ram"
110 depends on BOOTSCRIPT_COPY_RAM
111
112config BOOTSCRIPT_HDR_ADDR
113 hex "CONFIG_BOOTSCRIPT_HDR_ADDR"
114 default BS_ADDR_RAM if BOOTSCRIPT_COPY_RAM
115
116endif
117
Tom Rinia1663992022-06-16 14:04:40 -0400118config SYS_FSL_SRK_LE
119 def_bool y
Tom Rini65461122022-06-17 16:24:31 -0400120 depends on ARM
Tom Rinia1663992022-06-16 14:04:40 -0400121
122config KEY_REVOCATION
123 def_bool y
Tom Rini65461122022-06-17 16:24:31 -0400124
125endmenu
126
127comment "Other functionality shared between NXP SoCs"
Tom Rinia1663992022-06-16 14:04:40 -0400128
Tom Rinib643ebd2022-03-24 17:17:58 -0400129config DEEP_SLEEP
130 bool "Enable SoC deep sleep feature"
Tom Riniaac187d2022-06-16 14:04:35 -0400131 depends on ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || ARCH_LS1021A
132 default y
Tom Rinib643ebd2022-03-24 17:17:58 -0400133 help
134 Indicates this SoC supports deep sleep feature. If deep sleep is
135 supported, core will start to execute uboot when wakes up.
136
Stephen Carlsone36d49c2021-06-22 16:35:20 -0700137config FSL_USE_PCA9547_MUX
138 bool "Enable PCA9547 I2C Mux on Freescale boards"
Tom Riniaac187d2022-06-16 14:04:35 -0400139 depends on PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
Stephen Carlsone36d49c2021-06-22 16:35:20 -0700140 help
141 This option enables the PCA9547 I2C mux on Freescale boards.
142
Stephen Carlsonc3301a22021-02-08 11:11:29 +0100143config VID
Stephen Carlsonc3301a22021-02-08 11:11:29 +0100144 bool "Enable Freescale VID"
Tom Riniaac187d2022-06-16 14:04:35 -0400145 depends on (PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3) && (I2C || DM_I2C)
Stephen Carlsonc3301a22021-02-08 11:11:29 +0100146 help
147 This option enables setting core voltage based on individual
148 values saved in SoC fuses.
149
Tom Rini89cdcab2021-12-12 22:12:31 -0500150config SPL_VID
151 bool "Enable Freescale VID in SPL"
Tom Riniaac187d2022-06-16 14:04:35 -0400152 depends on (PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3) && (SPL_I2C || DM_SPL_I2C)
Tom Rini89cdcab2021-12-12 22:12:31 -0500153 help
154 This option enables setting core voltage based on individual
155 values saved in SoC fuses, in SPL.
156
157if VID || SPL_VID
158
159config VID_FLS_ENV
160 string "Environment variable for overriding VDD"
161 help
162 This option allows for specifying the environment variable
163 to check to override VDD information.
164
165config VOL_MONITOR_INA220
166 bool "Enable the INA220 voltage monitor read"
167 help
168 This option enables INA220 voltage monitor read
169 functionality. It is used by the common VID driver.
170
171config VOL_MONITOR_IR36021_READ
172 bool "Enable the IR36021 voltage monitor read"
173 help
174 This option enables IR36021 voltage monitor read
175 functionality. It is used by the common VID driver.
176
177config VOL_MONITOR_IR36021_SET
178 bool "Enable the IR36021 voltage monitor set"
179 help
180 This option enables IR36021 voltage monitor set
181 functionality. It is used by the common VID driver.
182
Rajesh Bhagat241a3cc2018-01-17 16:13:04 +0530183config VOL_MONITOR_LTC3882_READ
Rajesh Bhagat241a3cc2018-01-17 16:13:04 +0530184 bool "Enable the LTC3882 voltage monitor read"
Rajesh Bhagat241a3cc2018-01-17 16:13:04 +0530185 help
186 This option enables LTC3882 voltage monitor read
Stephen Carlsonc3301a22021-02-08 11:11:29 +0100187 functionality. It is used by the common VID driver.
Rajesh Bhagat241a3cc2018-01-17 16:13:04 +0530188
189config VOL_MONITOR_LTC3882_SET
Rajesh Bhagat241a3cc2018-01-17 16:13:04 +0530190 bool "Enable the LTC3882 voltage monitor set"
Rajesh Bhagat241a3cc2018-01-17 16:13:04 +0530191 help
192 This option enables LTC3882 voltage monitor set
Stephen Carlsonc3301a22021-02-08 11:11:29 +0100193 functionality. It is used by the common VID driver.
194
195config VOL_MONITOR_ISL68233_READ
Stephen Carlsonc3301a22021-02-08 11:11:29 +0100196 bool "Enable the ISL68233 voltage monitor read"
197 help
198 This option enables ISL68233 voltage monitor read
199 functionality. It is used by the common VID driver.
200
201config VOL_MONITOR_ISL68233_SET
Stephen Carlsonc3301a22021-02-08 11:11:29 +0100202 bool "Enable the ISL68233 voltage monitor set"
203 help
204 This option enables ISL68233 voltage monitor set
205 functionality. It is used by the common VID driver.
Tom Rini89cdcab2021-12-12 22:12:31 -0500206
207endif
Tom Rinie24547a2022-03-30 18:07:32 -0400208
209config FSL_QIXIS
210 bool "Enable QIXIS support"
Tom Riniaac187d2022-06-16 14:04:35 -0400211 depends on PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
Tom Rinie24547a2022-03-30 18:07:32 -0400212
213config QIXIS_I2C_ACCESS
214 bool "Access to QIXIS is over i2c"
215 depends on FSL_QIXIS
216 default y
Tom Rini41713012022-06-08 08:24:28 -0400217
218config HAS_FSL_DR_USB
219 def_bool y
220 depends on USB_EHCI_HCD && PPC