[PATCHv2 0/3] ARM: cfa10036: Load a different DTB depending on variants

Maxime Ripard maxime.ripard at free-electrons.com
Thu Dec 13 05:26:42 EST 2012


The CFA-10036 is actually a module that can be plugged in an expansion board.

For now, there is only two of these expansion boards, the CFA-10037 and the
CFA-10049, with different features, muxing and so on.

So, at boot time, the cfa-10036 has to be aware that it runs on an expansion
board and if so, which expansion board it is currently plugged in, so that it
can load the right device tree.

This is done thanks to an eeprom found at the same address on the same bus on
the expansion boards, that holds the expansion board id, so we can know all of

This patchset does exactly that. It first adds support for the AT24, and then
the needed bits to retrieve the board variants from the eeprom if any and load
the right DTB.


Changes from v2:
  - Changed the environment variable name and change it to a global variable

Maxime Ripard (3):
  ARM: cfa10036: Add the AT24HC02 I2C EEPROM
  ARM: cfa10036: Retrieve the board variant from the AT24
  ARM: cfa10036: Use the board variant to load a different device tree

 arch/arm/boards/crystalfontz-cfa10036/Makefile     |    2 +-
 arch/arm/boards/crystalfontz-cfa10036/cfa10036.c   |   27 ++++++
 .../boards/crystalfontz-cfa10036/env/boot/mmc-ext3 |    4 +-
 arch/arm/boards/crystalfontz-cfa10036/hwdetect.c   |   96 ++++++++++++++++++++
 arch/arm/boards/crystalfontz-cfa10036/hwdetect.h   |   22 +++++
 arch/arm/configs/cfa10036_defconfig                |    3 +-
 arch/arm/mach-mxs/Kconfig                          |    3 +
 7 files changed, 153 insertions(+), 4 deletions(-)
 create mode 100644 arch/arm/boards/crystalfontz-cfa10036/hwdetect.c
 create mode 100644 arch/arm/boards/crystalfontz-cfa10036/hwdetect.h


More information about the barebox mailing list