blob: abd48d42583ad9f7bf3bb6c218fb019d0c5c4a08 [file] [log] [blame]
Tom Rini0c2729e2021-08-24 20:40:59 -04001config MACH_IMX
2 bool
3
Breno Lima52384b72017-11-27 21:09:00 -02004config HAS_CAAM
5 bool
6
Boris BREZILLONa05a6042015-03-04 13:13:04 +01007config IMX_CONFIG
Tom Rini148b8bb2021-08-24 20:41:00 -04008 string "DCD script to use"
9 depends on MACH_IMX
10 default "arch/arm/mach-imx/spl_sd.cfg"
Adrian Alonsoa89729c2015-10-12 13:48:09 -050011
12config ROM_UNIFIED_SECTIONS
13 bool
Peng Fande09c432016-01-28 16:55:00 +080014
Stefan Agner616aa552018-01-05 15:08:17 +010015config SYSCOUNTER_TIMER
16 bool
17
Stefan Agner23b6a132018-01-05 15:08:18 +010018config GPT_TIMER
19 bool
20
Tom Rini9b0240f2022-12-02 16:42:18 -050021config MXC_GPT_HCLK
22 bool
23
Peng Fande09c432016-01-28 16:55:00 +080024config IMX_RDC
25 bool "i.MX Resource domain controller driver"
26 depends on ARCH_MX6 || ARCH_MX7
27 help
28 i.MX Resource domain controller is used to assign masters
29 and peripherals to differet domains. This can be used to
30 isolate resources.
Peng Fan6f6058b2016-01-28 16:55:04 +080031
32config IMX_BOOTAUX
33 bool "Support boot auxiliary core"
Ye Lie8cd1f62023-06-15 18:09:20 +080034 depends on ARCH_MX7 || ARCH_MX6 || ARCH_VF610 || ARCH_IMX8 || ARCH_IMX8M
Oleksandr Suvorov71dfe172023-08-31 17:03:52 +030035 select LIB_ELF
Peng Fan6f6058b2016-01-28 16:55:04 +080036 help
37 bootaux [addr] to boot auxiliary core.
Gary Bisson6e1f4d22016-08-25 19:03:16 +020038
Peng Fan3c42c0f2020-05-01 22:08:34 +080039config IMX_MODULE_FUSE
40 bool "i.MX Module Fuse"
41 depends on ARCH_MX6
42 help
43 i.MX module fuse to runtime disable some driver, including
44 Linux OS device node.
45
Peng Fan8b62d542016-10-11 14:29:12 +080046config USE_IMXIMG_PLUGIN
47 bool "Use imximage plugin code"
Ye Li15bae9a2019-05-16 03:18:51 +000048 depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX7ULP
Peng Fan8b62d542016-10-11 14:29:12 +080049 help
50 i.MX6/7 supports DCD and Plugin. Enable this configuration
51 to use Plugin, otherwise DCD will be used.
52
Stefano Babicd714a752019-09-20 08:47:53 +020053config IMX_HAB
Gary Bisson6e1f4d22016-08-25 19:03:16 +020054 bool "Support i.MX HAB features"
Ricardo Salveti88f4f502021-08-23 14:55:12 +030055 depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5 || ARCH_IMX8M || ARCH_MX7ULP
Breno Lima52384b72017-11-27 21:09:00 -020056 select FSL_CAAM if HAS_CAAM
Ye Lie149b982021-03-25 17:30:18 +080057 imply CMD_DEKBLOB if HAS_CAAM
Gary Bisson6e1f4d22016-08-25 19:03:16 +020058 help
59 This option enables the support for secure boot (HAB).
Patrick Delaunay9d82cbd2020-02-28 15:18:16 +010060 See doc/imx/habv4/* for more details.
Simon Glass218257b2017-04-26 22:27:54 -060061
Breno Matheus Lima5f2fe3b2019-07-18 12:34:08 +000062config CSF_SIZE
63 hex "Maximum size for Command Sequence File (CSF) binary"
Tom Rini7d80a9c2020-06-16 19:06:26 -040064 depends on IMX_HAB
65 default 0x2000 if ARCH_IMX8M
Breno Matheus Lima5b20d142019-09-23 18:39:47 +000066 default 0x2060
Breno Matheus Lima5f2fe3b2019-07-18 12:34:08 +000067 help
68 Define the maximum size for Command Sequence File (CSF) binary
69 this information is used to define the image boot data.
70
Simon Glass218257b2017-04-26 22:27:54 -060071config CMD_BMODE
72 bool "Support the 'bmode' command"
73 default y
Fedor Rossa41c9dd2023-10-16 18:16:15 +020074 depends on ARCH_IMX8M || ARCH_MX7 || ARCH_MX6 || ARCH_MX5
Simon Glass218257b2017-04-26 22:27:54 -060075 help
76 This enables the 'bmode' (bootmode) command for forcing
77 a boot from specific media.
78
79 This is useful for forcing the ROM's usb downloader to
80 activate upon a watchdog reset which is nice when iterating
81 on U-Boot. Using the reset button or running bmode normal
82 will set it back to normal. This command currently
83 supports i.MX53 and i.MX6.
Simon Glassd569c952017-04-26 22:28:06 -060084
85config CMD_DEKBLOB
86 bool "Support the 'dek_blob' command"
Clement Faure56d20502021-03-25 17:30:33 +080087 select IMX_CAAM_DEK_ENCAP if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP
88 select IMX_OPTEE_DEK_ENCAP if ARCH_IMX8M
Clement Faure69f542c2021-03-25 17:30:34 +080089 select IMX_SECO_DEK_ENCAP if ARCH_IMX8
Clement Faure859f4e02023-06-15 18:09:11 +080090 select IMX_ELE_DEK_ENCAP if ARCH_IMX8ULP || ARCH_IMX9
Simon Glassd569c952017-04-26 22:28:06 -060091 help
92 This enables the 'dek_blob' command which is used with the
93 Freescale secure boot mechanism. This command encapsulates and
Patrick Delaunay9d82cbd2020-02-28 15:18:16 +010094 creates a blob of data. See also CMD_BLOB and doc/imx/habv4/* for
Simon Glassd569c952017-04-26 22:28:06 -060095 more information.
Simon Glass7a01f3c2017-05-17 03:25:28 -060096
Clement Faure56d20502021-03-25 17:30:33 +080097config IMX_CAAM_DEK_ENCAP
98 bool "Support the DEK blob encapsulation with CAAM U-Boot driver"
99 help
100 This enables the DEK blob encapsulation with the U-Boot CAAM driver.
101 This option is only available on imx6, imx7 and imx7ulp.
102
103config IMX_OPTEE_DEK_ENCAP
104 select TEE
105 select OPTEE
106 bool "Support the DEK blob encapsulation with OP-TEE"
107 help
108 This enabled the DEK blob encapsulation with OP-TEE. The communication
109 with OP-TEE is done through a SMC call and OP-TEE shared memory. This
110 option is available on imx8mm.
111
Clement Faure69f542c2021-03-25 17:30:34 +0800112config IMX_SECO_DEK_ENCAP
113 bool "Support the DEK blob encapsulation with SECO"
114 help
115 This enabled the DEK blob encapsulation with the SECO API. This option
116 is only available on imx8.
117
Clement Faure859f4e02023-06-15 18:09:11 +0800118config IMX_ELE_DEK_ENCAP
119 bool "Support the DEK blob encapsulation with ELE"
120 help
121 This enabled the DEK blob encapsulation with the ELE API. This option
122 is only available on imx8ulp and imx9.
123
Clement Le Marquis613cf232021-03-25 17:30:32 +0800124config CMD_PRIBLOB
125 bool "Support the set_priblob_bitfield command"
126 depends on HAS_CAAM && IMX_HAB
127 help
128 This option enables the priblob command which can be used
129 to set the priblob setting to 0x3.
130
Simon Glass7a01f3c2017-05-17 03:25:28 -0600131config CMD_HDMIDETECT
132 bool "Support the 'hdmidet' command"
133 help
134 This enables the 'hdmidet' command which detects if an HDMI monitor
135 is connected.
Fabio Estevam4555c262017-11-27 10:25:09 -0200136
Shyam Saini1d43e242019-06-14 13:05:33 +0530137config CMD_NANDBCB
138 bool "i.MX6 NAND Boot Control Block(BCB) command"
Miquel Raynal88718be2019-10-03 19:50:03 +0200139 depends on MTD_RAW_NAND && CMD_MTDPARTS
Parthiban Nallathambi6aa87492019-10-18 11:46:19 +0200140 select BCH if MX6UL || MX6ULL
Alice Guo66dbd9c2020-05-05 22:04:00 +0800141 default y if ((ARCH_MX6 || ARCH_MX7 || ARCH_IMX8M) && NAND_MXS)
Shyam Saini1d43e242019-06-14 13:05:33 +0530142 help
143 Unlike normal 'nand write/erase' commands, this command update
144 Boot Control Block(BCB) for i.MX6 platform NAND IP's.
145
146 This is similar to kobs-ng, which is used in Linux as separate
147 rootfs package.
148
Breno Lima30e39ac2021-03-25 17:30:02 +0800149config FSL_MFGPROT
150 bool "Support the 'mfgprot' command"
Ye Li92aff902022-04-19 14:43:24 +0530151 depends on IMX_HAB && (ARCH_MX7 || ARCH_IMX8M)
Breno Lima30e39ac2021-03-25 17:30:02 +0800152 help
153 This option enables the manufacturing protection command
154 which can be used has a protection feature for Manufacturing
155 process. With this tool is possible to authenticate the
156 chip to the OEM's server.
157
Fabio Estevam4555c262017-11-27 10:25:09 -0200158config NXP_BOARD_REVISION
159 bool "Read NXP board revision from fuses"
160 depends on ARCH_MX6 || ARCH_MX7
161 help
162 NXP boards based on i.MX6/7 contain the board revision information
163 stored in the fuses. Select this option if you want to be able to
164 retrieve the board revision information.
Lukasz Majewski548cc102018-12-05 17:04:02 +0100165
166config DDRMC_VF610_CALIBRATION
167 bool "Enable DDRMC (DDR3) on-chip calibration"
168 depends on ARCH_VF610
169 help
170 Vybrid (vf610) SoC provides some on-chip facility to tune the DDR3
171 memory parameters. Select this option if you want to calculate them
172 at boot time.
173 NOTE:
174 NXP does NOT recommend to perform this calibration at each boot. One
175 shall perform it on a new PCB and then use those values to program
176 the ddrmc_cr_setting on relevant board file.
Peng Fan1cbebc72019-09-16 03:09:31 +0000177
Rasmus Villemoes8e290152022-06-20 10:53:17 +0200178config IMX8_ROMAPI
179 def_bool y
Peng Fan881df6e2022-07-26 16:40:39 +0800180 depends on IMX8MN || IMX8MP || IMX8ULP || IMX9
Rasmus Villemoes8e290152022-06-20 10:53:17 +0200181
Peng Fan1cbebc72019-09-16 03:09:31 +0000182config SPL_IMX_ROMAPI_LOADADDR
183 hex "Default load address to load image through ROM API"
Peng Fan793b7602022-07-26 16:40:35 +0800184 depends on IMX8_ROMAPI || SPL_BOOTROM_SUPPORT
Tom Rinia077ac12023-08-02 11:09:43 -0400185 default 0x0
Jorge Ramirez-Ortize97bdfa2019-12-11 10:42:36 +0100186
187config IMX_DCD_ADDR
188 hex "DCD Blocks location on the image"
189 default 0x00910000 if !ARCH_MX7ULP
190 default 0x2f010000 if ARCH_MX7ULP
191 help
192 Indicates where the Device Configuration Data, a binary table used by
193 the ROM code to configure the device at early boot stage, is located.
194 This information is shared with the user via mkimage -l just so the
195 image can be signed.
Peng Fan3854a062021-08-07 16:00:40 +0800196
Tom Rinic136a862022-11-19 18:45:22 -0500197config IOMUX_LPSR
198 bool
199
200config IOMUX_SHARE_CONF_REG
201 bool