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