blob: c34bc25c0bfb172c3c28bec3b3409ec89d560310 [file] [log] [blame]
Tom Rini8086a822021-08-24 20:40:59 -04001config MACH_IMX
2 bool
3
Breno Lima998ffd32017-11-27 21:09:00 -02004config HAS_CAAM
5 bool
6
Boris BREZILLON6b9b9a02015-03-04 13:13:04 +01007config IMX_CONFIG
Tom Rini57b93812021-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 Alonso994d9cf2015-10-12 13:48:09 -050011
12config ROM_UNIFIED_SECTIONS
13 bool
Peng Fan1b64ffa2016-01-28 16:55:00 +080014
Stefan Agner42960412018-01-05 15:08:17 +010015config SYSCOUNTER_TIMER
16 bool
17
Stefan Agner4bb73f12018-01-05 15:08:18 +010018config GPT_TIMER
19 bool
20
Tom Rini599b11b2022-12-02 16:42:18 -050021config MXC_GPT_HCLK
22 bool
23
Peng Fan1b64ffa2016-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 Fanfcabb6d2016-01-28 16:55:04 +080031
32config IMX_BOOTAUX
33 bool "Support boot auxiliary core"
Ye Lic07ac742023-06-15 18:09:20 +080034 depends on ARCH_MX7 || ARCH_MX6 || ARCH_VF610 || ARCH_IMX8 || ARCH_IMX8M
Oleksandr Suvorov1cd4ed82023-08-31 17:03:52 +030035 select LIB_ELF
Peng Fanfcabb6d2016-01-28 16:55:04 +080036 help
37 bootaux [addr] to boot auxiliary core.
Gary Bissonf702c1d2016-08-25 19:03:16 +020038
Peng Fan415f8952020-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 Fan683cf992016-10-11 14:29:12 +080046config USE_IMXIMG_PLUGIN
47 bool "Use imximage plugin code"
Ye Liba604b82019-05-16 03:18:51 +000048 depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX7ULP
Peng Fan683cf992016-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 Babicf8b509b2019-09-20 08:47:53 +020053config IMX_HAB
Gary Bissonf702c1d2016-08-25 19:03:16 +020054 bool "Support i.MX HAB features"
Ricardo Salvetia3f98202021-08-23 14:55:12 +030055 depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5 || ARCH_IMX8M || ARCH_MX7ULP
Breno Lima998ffd32017-11-27 21:09:00 -020056 select FSL_CAAM if HAS_CAAM
Fabio Estevamd36dcd42023-12-11 10:46:17 -030057 select SPL_DRIVERS_MISC if SPL
Ye Li504c6672021-03-25 17:30:18 +080058 imply CMD_DEKBLOB if HAS_CAAM
Gary Bissonf702c1d2016-08-25 19:03:16 +020059 help
60 This option enables the support for secure boot (HAB).
Patrick Delaunay02ff85e2020-02-28 15:18:16 +010061 See doc/imx/habv4/* for more details.
Simon Glass3ec09a02017-04-26 22:27:54 -060062
Breno Matheus Lima13960fd2019-07-18 12:34:08 +000063config CSF_SIZE
64 hex "Maximum size for Command Sequence File (CSF) binary"
Tom Rini60812732020-06-16 19:06:26 -040065 depends on IMX_HAB
66 default 0x2000 if ARCH_IMX8M
Breno Matheus Limac592c342019-09-23 18:39:47 +000067 default 0x2060
Breno Matheus Lima13960fd2019-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 Glass3ec09a02017-04-26 22:27:54 -060072config CMD_BMODE
73 bool "Support the 'bmode' command"
74 default y
Fedor Rossc0b94842023-10-16 18:16:15 +020075 depends on ARCH_IMX8M || ARCH_MX7 || ARCH_MX6 || ARCH_MX5
Simon Glass3ec09a02017-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 Glass88391242017-04-26 22:28:06 -060085
86config CMD_DEKBLOB
87 bool "Support the 'dek_blob' command"
Clement Faurea93b0d92021-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 Faure9cb2f972021-03-25 17:30:34 +080090 select IMX_SECO_DEK_ENCAP if ARCH_IMX8
Clement Faure34295a22023-06-15 18:09:11 +080091 select IMX_ELE_DEK_ENCAP if ARCH_IMX8ULP || ARCH_IMX9
Simon Glass88391242017-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 Delaunay02ff85e2020-02-28 15:18:16 +010095 creates a blob of data. See also CMD_BLOB and doc/imx/habv4/* for
Simon Glass88391242017-04-26 22:28:06 -060096 more information.
Simon Glassf3a50ee2017-05-17 03:25:28 -060097
Clement Faurea93b0d92021-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 Faure9cb2f972021-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 Faure34295a22023-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 Marquis6abb36e2021-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 Glassf3a50ee2017-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 Estevam49bcdd72017-11-27 10:25:09 -0200137
Shyam Sainif63ef492019-06-14 13:05:33 +0530138config CMD_NANDBCB
139 bool "i.MX6 NAND Boot Control Block(BCB) command"
Miquel Raynald0935362019-10-03 19:50:03 +0200140 depends on MTD_RAW_NAND && CMD_MTDPARTS
Parthiban Nallathambia99188b2019-10-18 11:46:19 +0200141 select BCH if MX6UL || MX6ULL
Alice Guoa3f815b2020-05-05 22:04:00 +0800142 default y if ((ARCH_MX6 || ARCH_MX7 || ARCH_IMX8M) && NAND_MXS)
Shyam Sainif63ef492019-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 Limac89287e2021-03-25 17:30:02 +0800150config FSL_MFGPROT
151 bool "Support the 'mfgprot' command"
Ye Li32081692022-04-19 14:43:24 +0530152 depends on IMX_HAB && (ARCH_MX7 || ARCH_IMX8M)
Breno Limac89287e2021-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 Estevam49bcdd72017-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 Majewski71d42b32018-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 Fan36986792019-09-16 03:09:31 +0000178
Rasmus Villemoes120cb852022-06-20 10:53:17 +0200179config IMX8_ROMAPI
180 def_bool y
Peng Fanbbcd2c42022-07-26 16:40:39 +0800181 depends on IMX8MN || IMX8MP || IMX8ULP || IMX9
Rasmus Villemoes120cb852022-06-20 10:53:17 +0200182
Peng Fan36986792019-09-16 03:09:31 +0000183config SPL_IMX_ROMAPI_LOADADDR
184 hex "Default load address to load image through ROM API"
Peng Fandb1f6002022-07-26 16:40:35 +0800185 depends on IMX8_ROMAPI || SPL_BOOTROM_SUPPORT
Tom Rinif18679c2023-08-02 11:09:43 -0400186 default 0x0
Jorge Ramirez-Ortiz4b3bfe22019-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 Fan718d55d2021-08-07 16:00:40 +0800197
Tom Rini945a6682022-11-19 18:45:22 -0500198config IOMUX_LPSR
199 bool
200
201config IOMUX_SHARE_CONF_REG
202 bool