mbox series

[v1,0/7] Toradex: EEPROM storage support for Config Block

Message ID 1592857680-637-1-git-send-email-igor.opaniuk@gmail.com
Headers show
Series Toradex: EEPROM storage support for Config Block | expand

Message

Igor Opaniuk June 22, 2020, 8:27 p.m. UTC
This series 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

Igor Opaniuk (7):
  toradex: tdx-cfg-block: add EEPROM read/store wrappers
  toradex: tdx-cfg-block: add carrier boards and display adapters
  toradex: tdx-cfg-block: add support for EEPROM
  toradex: tdx-cfg-clock: add migration routine from PID8
  toradex: tdx-cfg-block: add carrier board info printing
  ARM: dts: imx8mm-verdin: eeprom nodes adjustments
  verdin-imx8mm: add EEPROM support for carrier board

 arch/arm/dts/imx8mm-verdin.dts       |  22 +-
 board/toradex/common/Kconfig         |  18 ++
 board/toradex/common/Makefile        |   1 +
 board/toradex/common/tdx-cfg-block.c | 402 +++++++++++++++++++++++++++++++----
 board/toradex/common/tdx-cfg-block.h |  16 ++
 board/toradex/common/tdx-common.c    |  28 +++
 board/toradex/common/tdx-eeprom.c    |  90 ++++++++
 board/toradex/common/tdx-eeprom.h    |  14 ++
 board/toradex/verdin-imx8mm/Kconfig  |   6 +
 configs/verdin-imx8mm_defconfig      |   1 +
 10 files changed, 551 insertions(+), 47 deletions(-)
 create mode 100644 board/toradex/common/tdx-eeprom.c
 create mode 100644 board/toradex/common/tdx-eeprom.h