u-boot/arch/arm/mach-imx/Kconfig
Oleksandr Suvorov 71dfe179cd mach-imx: bootaux: fix building with disabled bootelf
If CMD_ELF disabled and IMX_BOOTAUX enabled, the u-boot building ends
up with a linking error [1]. Select LIB_ELF to fix the building
issue.

[1]
ld: /tmp/ccaF1rpv.ltrans0.ltrans.o: in function `do_bootaux':
arch/arm/mach-imx/imx_bootaux.c:108: undefined reference to `valid_elf_image'

Fixes: c0f037f6a2 ("mach-imx: bootaux: elf firmware support")
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
2023-09-23 18:45:33 +02:00

214 lines
6.3 KiB
Text

config MACH_IMX
bool
config HAS_CAAM
bool
config IMX_CONFIG
string "DCD script to use"
depends on MACH_IMX
default "arch/arm/mach-imx/spl_sd.cfg"
config ROM_UNIFIED_SECTIONS
bool
config SYSCOUNTER_TIMER
bool
config GPT_TIMER
bool
config MXC_GPT_HCLK
bool
config IMX_RDC
bool "i.MX Resource domain controller driver"
depends on ARCH_MX6 || ARCH_MX7
help
i.MX Resource domain controller is used to assign masters
and peripherals to differet domains. This can be used to
isolate resources.
config IMX_BOOTAUX
bool "Support boot auxiliary core"
depends on ARCH_MX7 || ARCH_MX6 || ARCH_VF610 || ARCH_IMX8 || ARCH_IMX8M
select LIB_ELF
help
bootaux [addr] to boot auxiliary core.
config IMX_MODULE_FUSE
bool "i.MX Module Fuse"
depends on ARCH_MX6
help
i.MX module fuse to runtime disable some driver, including
Linux OS device node.
config USE_IMXIMG_PLUGIN
bool "Use imximage plugin code"
depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX7ULP
help
i.MX6/7 supports DCD and Plugin. Enable this configuration
to use Plugin, otherwise DCD will be used.
config IMX_HAB
bool "Support i.MX HAB features"
depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5 || ARCH_IMX8M || ARCH_MX7ULP
select FSL_CAAM if HAS_CAAM
imply CMD_DEKBLOB if HAS_CAAM
help
This option enables the support for secure boot (HAB).
See doc/imx/habv4/* for more details.
config CSF_SIZE
hex "Maximum size for Command Sequence File (CSF) binary"
depends on IMX_HAB
default 0x2000 if ARCH_IMX8M
default 0x2060
help
Define the maximum size for Command Sequence File (CSF) binary
this information is used to define the image boot data.
config CMD_BMODE
bool "Support the 'bmode' command"
default y
depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5
help
This enables the 'bmode' (bootmode) command for forcing
a boot from specific media.
This is useful for forcing the ROM's usb downloader to
activate upon a watchdog reset which is nice when iterating
on U-Boot. Using the reset button or running bmode normal
will set it back to normal. This command currently
supports i.MX53 and i.MX6.
config CMD_DEKBLOB
bool "Support the 'dek_blob' command"
select IMX_CAAM_DEK_ENCAP if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP
select IMX_OPTEE_DEK_ENCAP if ARCH_IMX8M
select IMX_SECO_DEK_ENCAP if ARCH_IMX8
select IMX_ELE_DEK_ENCAP if ARCH_IMX8ULP || ARCH_IMX9
help
This enables the 'dek_blob' command which is used with the
Freescale secure boot mechanism. This command encapsulates and
creates a blob of data. See also CMD_BLOB and doc/imx/habv4/* for
more information.
config IMX_CAAM_DEK_ENCAP
bool "Support the DEK blob encapsulation with CAAM U-Boot driver"
help
This enables the DEK blob encapsulation with the U-Boot CAAM driver.
This option is only available on imx6, imx7 and imx7ulp.
config IMX_OPTEE_DEK_ENCAP
select TEE
select OPTEE
bool "Support the DEK blob encapsulation with OP-TEE"
help
This enabled the DEK blob encapsulation with OP-TEE. The communication
with OP-TEE is done through a SMC call and OP-TEE shared memory. This
option is available on imx8mm.
config IMX_SECO_DEK_ENCAP
bool "Support the DEK blob encapsulation with SECO"
help
This enabled the DEK blob encapsulation with the SECO API. This option
is only available on imx8.
config IMX_ELE_DEK_ENCAP
bool "Support the DEK blob encapsulation with ELE"
help
This enabled the DEK blob encapsulation with the ELE API. This option
is only available on imx8ulp and imx9.
config CMD_PRIBLOB
bool "Support the set_priblob_bitfield command"
depends on HAS_CAAM && IMX_HAB
help
This option enables the priblob command which can be used
to set the priblob setting to 0x3.
config CMD_HDMIDETECT
bool "Support the 'hdmidet' command"
help
This enables the 'hdmidet' command which detects if an HDMI monitor
is connected.
config CMD_NANDBCB
bool "i.MX6 NAND Boot Control Block(BCB) command"
depends on MTD_RAW_NAND && CMD_MTDPARTS
select BCH if MX6UL || MX6ULL
default y if ((ARCH_MX6 || ARCH_MX7 || ARCH_IMX8M) && NAND_MXS)
help
Unlike normal 'nand write/erase' commands, this command update
Boot Control Block(BCB) for i.MX6 platform NAND IP's.
This is similar to kobs-ng, which is used in Linux as separate
rootfs package.
config FSL_MFGPROT
bool "Support the 'mfgprot' command"
depends on IMX_HAB && (ARCH_MX7 || ARCH_IMX8M)
help
This option enables the manufacturing protection command
which can be used has a protection feature for Manufacturing
process. With this tool is possible to authenticate the
chip to the OEM's server.
config NXP_BOARD_REVISION
bool "Read NXP board revision from fuses"
depends on ARCH_MX6 || ARCH_MX7
help
NXP boards based on i.MX6/7 contain the board revision information
stored in the fuses. Select this option if you want to be able to
retrieve the board revision information.
config DDRMC_VF610_CALIBRATION
bool "Enable DDRMC (DDR3) on-chip calibration"
depends on ARCH_VF610
help
Vybrid (vf610) SoC provides some on-chip facility to tune the DDR3
memory parameters. Select this option if you want to calculate them
at boot time.
NOTE:
NXP does NOT recommend to perform this calibration at each boot. One
shall perform it on a new PCB and then use those values to program
the ddrmc_cr_setting on relevant board file.
config IMX8_ROMAPI
def_bool y
depends on IMX8MN || IMX8MP || IMX8ULP || IMX9
config SPL_IMX_ROMAPI_LOADADDR
hex "Default load address to load image through ROM API"
depends on IMX8_ROMAPI || SPL_BOOTROM_SUPPORT
default 0
config IMX_DCD_ADDR
hex "DCD Blocks location on the image"
default 0x00910000 if !ARCH_MX7ULP
default 0x2f010000 if ARCH_MX7ULP
help
Indicates where the Device Configuration Data, a binary table used by
the ROM code to configure the device at early boot stage, is located.
This information is shared with the user via mkimage -l just so the
image can be signed.
config SPL_LOAD_IMX_CONTAINER
bool "Enable SPL loading U-Boot as a i.MX Container image"
depends on SPL
help
This is to let SPL could load i.MX Container image
config IMX_CONTAINER_CFG
string "i.MX Container config file"
depends on SPL
help
This is to specific the cfg file for generating container
image which will be loaded by SPL.
config IOMUX_LPSR
bool
config IOMUX_SHARE_CONF_REG
bool