blob: c34bc25c0bfb172c3c28bec3b3409ec89d560310 [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
Fabio Estevam04bb59b2023-12-11 10:46:17 -030057 select SPL_DRIVERS_MISC if SPL
Ye Lie149b982021-03-25 17:30:18 +080058 imply CMD_DEKBLOB if HAS_CAAM
Gary Bisson6e1f4d22016-08-25 19:03:16 +020059 help
60 This option enables the support for secure boot (HAB).
Patrick Delaunay9d82cbd2020-02-28 15:18:16 +010061 See doc/imx/habv4/* for more details.
Simon Glass218257b2017-04-26 22:27:54 -060062
Breno Matheus Lima5f2fe3b2019-07-18 12:34:08 +000063config CSF_SIZE
64 hex "Maximum size for Command Sequence File (CSF) binary"
Tom Rini7d80a9c2020-06-16 19:06:26 -040065 depends on IMX_HAB
66 default 0x2000 if ARCH_IMX8M
Breno Matheus Lima5b20d142019-09-23 18:39:47 +000067 default 0x2060
Breno Matheus Lima5f2fe3b2019-07-18 12:34:08 +000068 help
69 Define the maximum size for Command Sequence File (CSF) binary
70 this information is used to define the image boot data.
71
Simon Glass218257b2017-04-26 22:27:54 -060072config CMD_BMODE
73 bool "Support the 'bmode' command"
74 default y
Fedor Rossa41c9dd2023-10-16 18:16:15 +020075 depends on ARCH_IMX8M || ARCH_MX7 || ARCH_MX6 || ARCH_MX5
Simon Glass218257b2017-04-26 22:27:54 -060076 help
77 This enables the 'bmode' (bootmode) command for forcing
78 a boot from specific media.
79
80 This is useful for forcing the ROM's usb downloader to
81 activate upon a watchdog reset which is nice when iterating
82 on U-Boot. Using the reset button or running bmode normal
83 will set it back to normal. This command currently
84 supports i.MX53 and i.MX6.
Simon Glassd569c952017-04-26 22:28:06 -060085
86config CMD_DEKBLOB
87 bool "Support the 'dek_blob' command"
Clement Faure56d20502021-03-25 17:30:33 +080088 select IMX_CAAM_DEK_ENCAP if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP
89 select IMX_OPTEE_DEK_ENCAP if ARCH_IMX8M
Clement Faure69f542c2021-03-25 17:30:34 +080090 select IMX_SECO_DEK_ENCAP if ARCH_IMX8
Clement Faure859f4e02023-06-15 18:09:11 +080091 select IMX_ELE_DEK_ENCAP if ARCH_IMX8ULP || ARCH_IMX9
Simon Glassd569c952017-04-26 22:28:06 -060092 help
93 This enables the 'dek_blob' command which is used with the
94 Freescale secure boot mechanism. This command encapsulates and
Patrick Delaunay9d82cbd2020-02-28 15:18:16 +010095 creates a blob of data. See also CMD_BLOB and doc/imx/habv4/* for
Simon Glassd569c952017-04-26 22:28:06 -060096 more information.
Simon Glass7a01f3c2017-05-17 03:25:28 -060097
Clement Faure56d20502021-03-25 17:30:33 +080098config IMX_CAAM_DEK_ENCAP
99 bool "Support the DEK blob encapsulation with CAAM U-Boot driver"
100 help
101 This enables the DEK blob encapsulation with the U-Boot CAAM driver.
102 This option is only available on imx6, imx7 and imx7ulp.
103
104config IMX_OPTEE_DEK_ENCAP
105 select TEE
106 select OPTEE
107 bool "Support the DEK blob encapsulation with OP-TEE"
108 help
109 This enabled the DEK blob encapsulation with OP-TEE. The communication
110 with OP-TEE is done through a SMC call and OP-TEE shared memory. This
111 option is available on imx8mm.
112
Clement Faure69f542c2021-03-25 17:30:34 +0800113config IMX_SECO_DEK_ENCAP
114 bool "Support the DEK blob encapsulation with SECO"
115 help
116 This enabled the DEK blob encapsulation with the SECO API. This option
117 is only available on imx8.
118
Clement Faure859f4e02023-06-15 18:09:11 +0800119config IMX_ELE_DEK_ENCAP
120 bool "Support the DEK blob encapsulation with ELE"
121 help
122 This enabled the DEK blob encapsulation with the ELE API. This option
123 is only available on imx8ulp and imx9.
124
Clement Le Marquis613cf232021-03-25 17:30:32 +0800125config CMD_PRIBLOB
126 bool "Support the set_priblob_bitfield command"
127 depends on HAS_CAAM && IMX_HAB
128 help
129 This option enables the priblob command which can be used
130 to set the priblob setting to 0x3.
131
Simon Glass7a01f3c2017-05-17 03:25:28 -0600132config CMD_HDMIDETECT
133 bool "Support the 'hdmidet' command"
134 help
135 This enables the 'hdmidet' command which detects if an HDMI monitor
136 is connected.
Fabio Estevam4555c262017-11-27 10:25:09 -0200137
Shyam Saini1d43e242019-06-14 13:05:33 +0530138config CMD_NANDBCB
139 bool "i.MX6 NAND Boot Control Block(BCB) command"
Miquel Raynal88718be2019-10-03 19:50:03 +0200140 depends on MTD_RAW_NAND && CMD_MTDPARTS
Parthiban Nallathambi6aa87492019-10-18 11:46:19 +0200141 select BCH if MX6UL || MX6ULL
Alice Guo66dbd9c2020-05-05 22:04:00 +0800142 default y if ((ARCH_MX6 || ARCH_MX7 || ARCH_IMX8M) && NAND_MXS)
Shyam Saini1d43e242019-06-14 13:05:33 +0530143 help
144 Unlike normal 'nand write/erase' commands, this command update
145 Boot Control Block(BCB) for i.MX6 platform NAND IP's.
146
147 This is similar to kobs-ng, which is used in Linux as separate
148 rootfs package.
149
Breno Lima30e39ac2021-03-25 17:30:02 +0800150config FSL_MFGPROT
151 bool "Support the 'mfgprot' command"
Ye Li92aff902022-04-19 14:43:24 +0530152 depends on IMX_HAB && (ARCH_MX7 || ARCH_IMX8M)
Breno Lima30e39ac2021-03-25 17:30:02 +0800153 help
154 This option enables the manufacturing protection command
155 which can be used has a protection feature for Manufacturing
156 process. With this tool is possible to authenticate the
157 chip to the OEM's server.
158
Fabio Estevam4555c262017-11-27 10:25:09 -0200159config NXP_BOARD_REVISION
160 bool "Read NXP board revision from fuses"
161 depends on ARCH_MX6 || ARCH_MX7
162 help
163 NXP boards based on i.MX6/7 contain the board revision information
164 stored in the fuses. Select this option if you want to be able to
165 retrieve the board revision information.
Lukasz Majewski548cc102018-12-05 17:04:02 +0100166
167config DDRMC_VF610_CALIBRATION
168 bool "Enable DDRMC (DDR3) on-chip calibration"
169 depends on ARCH_VF610
170 help
171 Vybrid (vf610) SoC provides some on-chip facility to tune the DDR3
172 memory parameters. Select this option if you want to calculate them
173 at boot time.
174 NOTE:
175 NXP does NOT recommend to perform this calibration at each boot. One
176 shall perform it on a new PCB and then use those values to program
177 the ddrmc_cr_setting on relevant board file.
Peng Fan1cbebc72019-09-16 03:09:31 +0000178
Rasmus Villemoes8e290152022-06-20 10:53:17 +0200179config IMX8_ROMAPI
180 def_bool y
Peng Fan881df6e2022-07-26 16:40:39 +0800181 depends on IMX8MN || IMX8MP || IMX8ULP || IMX9
Rasmus Villemoes8e290152022-06-20 10:53:17 +0200182
Peng Fan1cbebc72019-09-16 03:09:31 +0000183config SPL_IMX_ROMAPI_LOADADDR
184 hex "Default load address to load image through ROM API"
Peng Fan793b7602022-07-26 16:40:35 +0800185 depends on IMX8_ROMAPI || SPL_BOOTROM_SUPPORT
Tom Rinia077ac12023-08-02 11:09:43 -0400186 default 0x0
Jorge Ramirez-Ortize97bdfa2019-12-11 10:42:36 +0100187
188config IMX_DCD_ADDR
189 hex "DCD Blocks location on the image"
190 default 0x00910000 if !ARCH_MX7ULP
191 default 0x2f010000 if ARCH_MX7ULP
192 help
193 Indicates where the Device Configuration Data, a binary table used by
194 the ROM code to configure the device at early boot stage, is located.
195 This information is shared with the user via mkimage -l just so the
196 image can be signed.
Peng Fan3854a062021-08-07 16:00:40 +0800197
Tom Rinic136a862022-11-19 18:45:22 -0500198config IOMUX_LPSR
199 bool
200
201config IOMUX_SHARE_CONF_REG
202 bool