mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-22 03:03:05 +00:00
0c6b5588ef
This introduces support for EEPROM as a storage for the main Toradex config block and additional config blocks on extra EEPROM chips (on carrier board or video adapters). To enable EEPROM as a storage for the main config block: TDX_HAVE_EEPROM=y. For additional EEPROMs please enable this Kconfig symbol: TDX_CFG_BLOCK_EXTRA=y. Information about existing EEPROM chips is provided via Device Tree using aliases. You can also write configuration for the carrier board using create_carrier subcommand for cfgblock. Example: Verdin iMX8MM # cfgblock create_carrier Supported carrier boards: UNKNOWN CARRIER = [0] Verdin Carrier Board = [1] Choose your carrier board (provide ID): 1 Enter carrier board version (e.g. V1.1B): V1.0A Enter carrier board serial number: 10622780 Also with barcode: Verdin iMX8MM # cfgblock create carrier -y 0156100010622780 Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
87 lines
2.1 KiB
Text
87 lines
2.1 KiB
Text
# 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
|
|
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.
|
|
|
|
endif
|