blob: 134e42028c3787d78e28af03d40c41a8b2b1981b [file] [log] [blame]
Tom Rini8086a822021-08-24 20:40:59 -04001config MACH_IMX
2 bool
3
Marek Vasutbb647f12024-09-01 02:38:00 +02004if MACH_IMX
5
Breno Lima998ffd32017-11-27 21:09:00 -02006config HAS_CAAM
7 bool
8
Boris BREZILLON6b9b9a02015-03-04 13:13:04 +01009config IMX_CONFIG
Tom Rini57b93812021-08-24 20:41:00 -040010 string "DCD script to use"
11 depends on MACH_IMX
12 default "arch/arm/mach-imx/spl_sd.cfg"
Adrian Alonso994d9cf2015-10-12 13:48:09 -050013
14config ROM_UNIFIED_SECTIONS
15 bool
Peng Fan1b64ffa2016-01-28 16:55:00 +080016
Stefan Agner42960412018-01-05 15:08:17 +010017config SYSCOUNTER_TIMER
18 bool
19
Stefan Agner4bb73f12018-01-05 15:08:18 +010020config GPT_TIMER
21 bool
22
Tom Rini599b11b2022-12-02 16:42:18 -050023config MXC_GPT_HCLK
24 bool
25
Peng Fan1b64ffa2016-01-28 16:55:00 +080026config IMX_RDC
27 bool "i.MX Resource domain controller driver"
28 depends on ARCH_MX6 || ARCH_MX7
29 help
30 i.MX Resource domain controller is used to assign masters
31 and peripherals to differet domains. This can be used to
32 isolate resources.
Peng Fanfcabb6d2016-01-28 16:55:04 +080033
34config IMX_BOOTAUX
35 bool "Support boot auxiliary core"
Ye Lic07ac742023-06-15 18:09:20 +080036 depends on ARCH_MX7 || ARCH_MX6 || ARCH_VF610 || ARCH_IMX8 || ARCH_IMX8M
Oleksandr Suvorov1cd4ed82023-08-31 17:03:52 +030037 select LIB_ELF
Peng Fanfcabb6d2016-01-28 16:55:04 +080038 help
39 bootaux [addr] to boot auxiliary core.
Gary Bissonf702c1d2016-08-25 19:03:16 +020040
Peng Fan415f8952020-05-01 22:08:34 +080041config IMX_MODULE_FUSE
42 bool "i.MX Module Fuse"
43 depends on ARCH_MX6
44 help
45 i.MX module fuse to runtime disable some driver, including
46 Linux OS device node.
47
Peng Fan683cf992016-10-11 14:29:12 +080048config USE_IMXIMG_PLUGIN
49 bool "Use imximage plugin code"
Ye Liba604b82019-05-16 03:18:51 +000050 depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX7ULP
Peng Fan683cf992016-10-11 14:29:12 +080051 help
52 i.MX6/7 supports DCD and Plugin. Enable this configuration
53 to use Plugin, otherwise DCD will be used.
54
Stefano Babicf8b509b2019-09-20 08:47:53 +020055config IMX_HAB
Gary Bissonf702c1d2016-08-25 19:03:16 +020056 bool "Support i.MX HAB features"
Ricardo Salvetia3f98202021-08-23 14:55:12 +030057 depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5 || ARCH_IMX8M || ARCH_MX7ULP
Breno Lima998ffd32017-11-27 21:09:00 -020058 select FSL_CAAM if HAS_CAAM
Fabio Estevamd36dcd42023-12-11 10:46:17 -030059 select SPL_DRIVERS_MISC if SPL
Ye Li504c6672021-03-25 17:30:18 +080060 imply CMD_DEKBLOB if HAS_CAAM
Gary Bissonf702c1d2016-08-25 19:03:16 +020061 help
62 This option enables the support for secure boot (HAB).
Patrick Delaunay02ff85e2020-02-28 15:18:16 +010063 See doc/imx/habv4/* for more details.
Simon Glass3ec09a02017-04-26 22:27:54 -060064
Breno Matheus Lima13960fd2019-07-18 12:34:08 +000065config CSF_SIZE
66 hex "Maximum size for Command Sequence File (CSF) binary"
Tom Rini60812732020-06-16 19:06:26 -040067 depends on IMX_HAB
68 default 0x2000 if ARCH_IMX8M
Breno Matheus Limac592c342019-09-23 18:39:47 +000069 default 0x2060
Breno Matheus Lima13960fd2019-07-18 12:34:08 +000070 help
71 Define the maximum size for Command Sequence File (CSF) binary
72 this information is used to define the image boot data.
73
Simon Glass3ec09a02017-04-26 22:27:54 -060074config CMD_BMODE
75 bool "Support the 'bmode' command"
76 default y
Fedor Rossc0b94842023-10-16 18:16:15 +020077 depends on ARCH_IMX8M || ARCH_MX7 || ARCH_MX6 || ARCH_MX5
Simon Glass3ec09a02017-04-26 22:27:54 -060078 help
79 This enables the 'bmode' (bootmode) command for forcing
80 a boot from specific media.
81
82 This is useful for forcing the ROM's usb downloader to
83 activate upon a watchdog reset which is nice when iterating
84 on U-Boot. Using the reset button or running bmode normal
85 will set it back to normal. This command currently
86 supports i.MX53 and i.MX6.
Simon Glass88391242017-04-26 22:28:06 -060087
88config CMD_DEKBLOB
89 bool "Support the 'dek_blob' command"
Clement Faurea93b0d92021-03-25 17:30:33 +080090 select IMX_CAAM_DEK_ENCAP if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP
91 select IMX_OPTEE_DEK_ENCAP if ARCH_IMX8M
Clement Faure9cb2f972021-03-25 17:30:34 +080092 select IMX_SECO_DEK_ENCAP if ARCH_IMX8
Clement Faure34295a22023-06-15 18:09:11 +080093 select IMX_ELE_DEK_ENCAP if ARCH_IMX8ULP || ARCH_IMX9
Simon Glass88391242017-04-26 22:28:06 -060094 help
95 This enables the 'dek_blob' command which is used with the
96 Freescale secure boot mechanism. This command encapsulates and
Patrick Delaunay02ff85e2020-02-28 15:18:16 +010097 creates a blob of data. See also CMD_BLOB and doc/imx/habv4/* for
Simon Glass88391242017-04-26 22:28:06 -060098 more information.
Simon Glassf3a50ee2017-05-17 03:25:28 -060099
Clement Faurea93b0d92021-03-25 17:30:33 +0800100config IMX_CAAM_DEK_ENCAP
101 bool "Support the DEK blob encapsulation with CAAM U-Boot driver"
102 help
103 This enables the DEK blob encapsulation with the U-Boot CAAM driver.
104 This option is only available on imx6, imx7 and imx7ulp.
105
106config IMX_OPTEE_DEK_ENCAP
107 select TEE
108 select OPTEE
109 bool "Support the DEK blob encapsulation with OP-TEE"
110 help
111 This enabled the DEK blob encapsulation with OP-TEE. The communication
112 with OP-TEE is done through a SMC call and OP-TEE shared memory. This
113 option is available on imx8mm.
114
Clement Faure9cb2f972021-03-25 17:30:34 +0800115config IMX_SECO_DEK_ENCAP
116 bool "Support the DEK blob encapsulation with SECO"
117 help
118 This enabled the DEK blob encapsulation with the SECO API. This option
119 is only available on imx8.
120
Clement Faure34295a22023-06-15 18:09:11 +0800121config IMX_ELE_DEK_ENCAP
122 bool "Support the DEK blob encapsulation with ELE"
123 help
124 This enabled the DEK blob encapsulation with the ELE API. This option
125 is only available on imx8ulp and imx9.
126
Clement Le Marquis6abb36e2021-03-25 17:30:32 +0800127config CMD_PRIBLOB
128 bool "Support the set_priblob_bitfield command"
129 depends on HAS_CAAM && IMX_HAB
130 help
131 This option enables the priblob command which can be used
132 to set the priblob setting to 0x3.
133
Simon Glassf3a50ee2017-05-17 03:25:28 -0600134config CMD_HDMIDETECT
135 bool "Support the 'hdmidet' command"
136 help
137 This enables the 'hdmidet' command which detects if an HDMI monitor
138 is connected.
Fabio Estevam49bcdd72017-11-27 10:25:09 -0200139
Shyam Sainif63ef492019-06-14 13:05:33 +0530140config CMD_NANDBCB
141 bool "i.MX6 NAND Boot Control Block(BCB) command"
Miquel Raynald0935362019-10-03 19:50:03 +0200142 depends on MTD_RAW_NAND && CMD_MTDPARTS
Parthiban Nallathambia99188b2019-10-18 11:46:19 +0200143 select BCH if MX6UL || MX6ULL
Alice Guoa3f815b2020-05-05 22:04:00 +0800144 default y if ((ARCH_MX6 || ARCH_MX7 || ARCH_IMX8M) && NAND_MXS)
Shyam Sainif63ef492019-06-14 13:05:33 +0530145 help
146 Unlike normal 'nand write/erase' commands, this command update
147 Boot Control Block(BCB) for i.MX6 platform NAND IP's.
148
149 This is similar to kobs-ng, which is used in Linux as separate
150 rootfs package.
151
Breno Limac89287e2021-03-25 17:30:02 +0800152config FSL_MFGPROT
153 bool "Support the 'mfgprot' command"
Ye Li32081692022-04-19 14:43:24 +0530154 depends on IMX_HAB && (ARCH_MX7 || ARCH_IMX8M)
Breno Limac89287e2021-03-25 17:30:02 +0800155 help
156 This option enables the manufacturing protection command
157 which can be used has a protection feature for Manufacturing
158 process. With this tool is possible to authenticate the
159 chip to the OEM's server.
160
Fabio Estevam49bcdd72017-11-27 10:25:09 -0200161config NXP_BOARD_REVISION
162 bool "Read NXP board revision from fuses"
163 depends on ARCH_MX6 || ARCH_MX7
164 help
165 NXP boards based on i.MX6/7 contain the board revision information
166 stored in the fuses. Select this option if you want to be able to
167 retrieve the board revision information.
Lukasz Majewski71d42b32018-12-05 17:04:02 +0100168
169config DDRMC_VF610_CALIBRATION
170 bool "Enable DDRMC (DDR3) on-chip calibration"
171 depends on ARCH_VF610
172 help
173 Vybrid (vf610) SoC provides some on-chip facility to tune the DDR3
174 memory parameters. Select this option if you want to calculate them
175 at boot time.
176 NOTE:
177 NXP does NOT recommend to perform this calibration at each boot. One
178 shall perform it on a new PCB and then use those values to program
179 the ddrmc_cr_setting on relevant board file.
Peng Fan36986792019-09-16 03:09:31 +0000180
Rasmus Villemoes120cb852022-06-20 10:53:17 +0200181config IMX8_ROMAPI
182 def_bool y
Peng Fanbbcd2c42022-07-26 16:40:39 +0800183 depends on IMX8MN || IMX8MP || IMX8ULP || IMX9
Rasmus Villemoes120cb852022-06-20 10:53:17 +0200184
Peng Fan36986792019-09-16 03:09:31 +0000185config SPL_IMX_ROMAPI_LOADADDR
186 hex "Default load address to load image through ROM API"
Peng Fandb1f6002022-07-26 16:40:35 +0800187 depends on IMX8_ROMAPI || SPL_BOOTROM_SUPPORT
Tom Rinif18679c2023-08-02 11:09:43 -0400188 default 0x0
Jorge Ramirez-Ortiz4b3bfe22019-12-11 10:42:36 +0100189
190config IMX_DCD_ADDR
191 hex "DCD Blocks location on the image"
192 default 0x00910000 if !ARCH_MX7ULP
193 default 0x2f010000 if ARCH_MX7ULP
194 help
195 Indicates where the Device Configuration Data, a binary table used by
196 the ROM code to configure the device at early boot stage, is located.
197 This information is shared with the user via mkimage -l just so the
198 image can be signed.
Peng Fan718d55d2021-08-07 16:00:40 +0800199
Tom Rini945a6682022-11-19 18:45:22 -0500200config IOMUX_LPSR
201 bool
202
203config IOMUX_SHARE_CONF_REG
204 bool
Marek Vasutbb647f12024-09-01 02:38:00 +0200205
206endif