1config MACH_IMX
2	bool
3
4config HAS_CAAM
5	bool
6
7config IMX_CONFIG
8	string "DCD script to use"
9	depends on MACH_IMX
10	default "arch/arm/mach-imx/spl_sd.cfg"
11
12config ROM_UNIFIED_SECTIONS
13	bool
14
15config SYSCOUNTER_TIMER
16	bool
17
18config GPT_TIMER
19	bool
20
21config IMX_RDC
22	bool "i.MX Resource domain controller driver"
23	depends on ARCH_MX6 || ARCH_MX7
24	help
25	  i.MX Resource domain controller is used to assign masters
26	  and peripherals to differet domains. This can be used to
27	  isolate resources.
28
29config IMX_BOOTAUX
30	bool "Support boot auxiliary core"
31	depends on ARCH_MX7 || ARCH_MX6 || ARCH_VF610 || ARCH_IMX8M
32	help
33	  bootaux [addr] to boot auxiliary core.
34
35config IMX_MODULE_FUSE
36	bool "i.MX Module Fuse"
37	depends on ARCH_MX6
38	help
39	  i.MX module fuse to runtime disable some driver, including
40	  Linux OS device node.
41
42config USE_IMXIMG_PLUGIN
43	bool "Use imximage plugin code"
44	depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX7ULP
45	help
46	  i.MX6/7 supports DCD and Plugin. Enable this configuration
47	  to use Plugin, otherwise DCD will be used.
48
49config IMX_HAB
50	bool "Support i.MX HAB features"
51	depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5 || ARCH_IMX8M || ARCH_MX7ULP
52	select FSL_CAAM if HAS_CAAM
53	imply CMD_DEKBLOB if HAS_CAAM
54	help
55	  This option enables the support for secure boot (HAB).
56	  See doc/imx/habv4/* for more details.
57
58config CSF_SIZE
59	hex "Maximum size for Command Sequence File (CSF) binary"
60	depends on IMX_HAB
61	default 0x2000 if ARCH_IMX8M
62	default 0x2060
63	help
64	  Define the maximum size for Command Sequence File (CSF) binary
65	  this information is used to define the image boot data.
66
67config CMD_BMODE
68	bool "Support the 'bmode' command"
69	default y
70	depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5
71	help
72	  This enables the 'bmode' (bootmode) command for forcing
73	  a boot from specific media.
74
75	  This is useful for forcing the ROM's usb downloader to
76	  activate upon a watchdog reset which is nice when iterating
77	  on U-Boot.  Using the reset button or running bmode normal
78	  will set it back to normal.  This command currently
79	  supports i.MX53 and i.MX6.
80
81config CMD_DEKBLOB
82	bool "Support the 'dek_blob' command"
83	select IMX_CAAM_DEK_ENCAP if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP
84	select IMX_OPTEE_DEK_ENCAP if ARCH_IMX8M
85	select IMX_SECO_DEK_ENCAP if ARCH_IMX8
86	help
87	  This enables the 'dek_blob' command which is used with the
88	  Freescale secure boot mechanism. This command encapsulates and
89	  creates a blob of data. See also CMD_BLOB and doc/imx/habv4/* for
90	  more information.
91
92config IMX_CAAM_DEK_ENCAP
93	bool "Support the DEK blob encapsulation with CAAM U-Boot driver"
94	help
95	  This enables the DEK blob encapsulation with the U-Boot CAAM driver.
96	  This option is only available on imx6, imx7 and imx7ulp.
97
98config IMX_OPTEE_DEK_ENCAP
99	select TEE
100	select OPTEE
101	bool "Support the DEK blob encapsulation with OP-TEE"
102	help
103	  This enabled the DEK blob encapsulation with OP-TEE. The communication
104	  with OP-TEE is done through a SMC call and OP-TEE shared memory. This
105	  option is available on imx8mm.
106
107config IMX_SECO_DEK_ENCAP
108	bool "Support the DEK blob encapsulation with SECO"
109	help
110	  This enabled the DEK blob encapsulation with the SECO API. This option
111	  is only available on imx8.
112
113config CMD_PRIBLOB
114	bool "Support the set_priblob_bitfield command"
115	depends on HAS_CAAM && IMX_HAB
116	help
117	  This option enables the priblob command which can be used
118		to set the priblob setting to 0x3.
119
120config CMD_HDMIDETECT
121	bool "Support the 'hdmidet' command"
122	help
123	  This enables the 'hdmidet' command which detects if an HDMI monitor
124	  is connected.
125
126config CMD_NANDBCB
127	bool "i.MX6 NAND Boot Control Block(BCB) command"
128	depends on MTD_RAW_NAND && CMD_MTDPARTS
129	select BCH if MX6UL || MX6ULL
130	default y if ((ARCH_MX6 || ARCH_MX7 || ARCH_IMX8M) && NAND_MXS)
131	help
132	  Unlike normal 'nand write/erase' commands, this command update
133	  Boot Control Block(BCB) for i.MX6 platform NAND IP's.
134
135	  This is similar to kobs-ng, which is used in Linux as separate
136	  rootfs package.
137
138config FSL_MFGPROT
139	bool "Support the 'mfgprot' command"
140	depends on IMX_HAB && ARCH_MX7
141	help
142	  This option enables the manufacturing protection command
143	  which can be used has a protection feature for Manufacturing
144	  process. With this tool is possible to authenticate the
145	  chip to the OEM's server.
146
147config NXP_BOARD_REVISION
148	bool "Read NXP board revision from fuses"
149	depends on ARCH_MX6 || ARCH_MX7
150	help
151	  NXP boards based on i.MX6/7 contain the board revision information
152	  stored in the fuses. Select this option if you want to be able to
153	  retrieve the board revision information.
154
155config DDRMC_VF610_CALIBRATION
156	bool "Enable DDRMC (DDR3) on-chip calibration"
157	depends on ARCH_VF610
158	help
159	  Vybrid (vf610) SoC provides some on-chip facility to tune the DDR3
160	  memory parameters. Select this option if you want to calculate them
161	  at boot time.
162	  NOTE:
163	  NXP does NOT recommend to perform this calibration at each boot. One
164	  shall perform it on a new PCB and then use those values to program
165	  the ddrmc_cr_setting on relevant board file.
166
167config SPL_IMX_ROMAPI_LOADADDR
168	hex "Default load address to load image through ROM API"
169	depends on IMX8MN || IMX8MP || IMX8ULP
170
171config IMX_DCD_ADDR
172	hex "DCD Blocks location on the image"
173	default 0x00910000 if !ARCH_MX7ULP
174	default 0x2f010000 if ARCH_MX7ULP
175	help
176	  Indicates where the Device Configuration Data, a binary table used by
177	  the ROM code to configure the device at early boot stage, is located.
178	  This information is shared with the user via mkimage -l just so the
179	  image can be signed.
180
181config SPL_LOAD_IMX_CONTAINER
182	bool "Enable SPL loading U-Boot as a i.MX Container image"
183	depends on SPL
184	help
185	  This is to let SPL could load i.MX Container image
186
187config IMX_CONTAINER_CFG
188	string "i.MX Container config file"
189	depends on SPL
190	help
191	  This is to specific the cfg file for generating container
192	  image which will be loaded by SPL.
193