u-boot/board/toradex/common/Kconfig
Emanuele Ghidoli 2abc3bbe0c toradex: common: Add sysinfo driver
This commit introduces support for the Toradex sysinfo driver in U-Boot,
which uses information from Toradex config block to print correct
board model.
In case the Toradex config block is not present sysinfo prints the model
of the board provided by device tree removing per board specific prints.

Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus
Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01 09:10:44 -05:00

99 lines
2.5 KiB
Plaintext

# SPDX-License-Identifier: GPL-2.0+
# Copyright (c) 2016 Toradex, Inc.
menuconfig TDX_CFG_BLOCK
bool "Enable Toradex config block support"
select OF_BOARD_SETUP
select SYSINFO
help
The Toradex config block stored production data on the on-module
flash device (NAND, NOR or eMMC). The area is normally preserved by
software and contains the serial number (out of which the MAC
address is generated) and the exact module type.
# Helper config to determine the correct default location of the cfg block
config TDX_HAVE_MMC
bool
config TDX_HAVE_NAND
bool
config TDX_HAVE_NOR
bool
config TDX_HAVE_EEPROM
bool
config TDX_HAVE_EEPROM_EXTRA
bool
if TDX_CFG_BLOCK
config TDX_CFG_BLOCK_IS_IN_MMC
bool
depends on TDX_HAVE_MMC
default y
config TDX_CFG_BLOCK_IS_IN_NAND
bool
depends on TDX_HAVE_NAND
default y
config TDX_CFG_BLOCK_IS_IN_NOR
bool
depends on TDX_HAVE_NOR
default y
config TDX_CFG_BLOCK_IS_IN_EEPROM
bool
depends on TDX_HAVE_EEPROM
default y
config TDX_CFG_BLOCK_DEV
int "Toradex config block eMMC device ID"
depends on TDX_CFG_BLOCK_IS_IN_MMC
config TDX_CFG_BLOCK_PART
int "Toradex config block eMMC partition ID"
depends on TDX_CFG_BLOCK_IS_IN_MMC
config TDX_CFG_BLOCK_OFFSET
int "Toradex config block offset"
help
Specify the byte offset of the Toradex config block within the flash
device the config block is stored on.
config TDX_CFG_BLOCK_OFFSET2
int "Toradex config block offset, second instance"
default 0
help
Specify the byte offset of the 2nd instance of the Toradex config block
within the flash device the config block is stored on.
Set to 0 on modules which have no 2nd instance.
config TDX_CFG_BLOCK_2ND_ETHADDR
bool "Set the second Ethernet address"
help
For each serial number two Ethernet addresses are available for dual
Ethernet carrier boards. This options enables the code to set the
second Ethernet address as environment variable (eth1addr).
config TDX_CFG_BLOCK_EXTRA
bool "Support for additional EEPROMs (carrier board, display adapter)"
depends on TDX_HAVE_EEPROM_EXTRA
help
Enables fetching auxilary config blocks from carrier board/display
adapter EEPROMs.
config TDX_CFG_BLOCK_USB_GADGET_PID
bool "Use config block product ID as USB product ID"
depends on USB_GADGET_DOWNLOAD
default y
help
Use the Toradex product ID learned from the config block as USB
product ID. An offset of 0x4000 is added to the product ID since
inside the Toradex vendor ID (0x1b67) the range starting from
offset 0x4000 is reserved for Colibri/Apalis modules.
endif