[PATCH v1 0/5] Add support for Freebox Nodebox 10G (Armada 8040)

Vincent Jardin vjardin at free.fr
Tue Mar 10 15:12:47 CET 2026


This series adds board support for the Freebox Nodebox 10G, a network
appliance based on the Marvell Armada 8040 SoC (AP806 + dual CP110).

The series is structured as follows:

Patch 1 adds CPU and clock information display for Armada 8K platforms
by reading the AP806 Sample-At-Reset register. This is ported from
Marvell's vendor U-Boot 2015.01.

Patch 2 adds the board directory, device tree, defconfig, and board
initialization (management PHY reset via GPIO).

Patch 3 adds a U-Boot dtsi overlay for conditional OP-TEE support.

Patch 4 adds the "emmcboot" command to load and boot firmware stored
in the board-specific image format (mvebu_image_tag) at fixed eMMC
offsets. Each image bundles a kernel and device tree under a CRC32-
validated tag header. Two image banks are supported with automatic
fallback based on a bit-field reboot counter.

Patch 5 adds the "fbxserial" command to read factory-programmed device
serial numbers and MAC addresses from a dedicated eMMC region. The
board file hooks EVT_SETTINGS_R to set MAC addresses before network
drivers probe.

Note: the emmcboot and fbxserial commands are hardware-specific and
require the actual board for testing, so no sandbox tests are included.

Based on v2026.04-rc4.

Vincent Jardin (5):
  arm: mach-mvebu: armada8k: add CPU and clock info display
  board: freebox: add Nodebox 10G board support
  arm: dts: armada-8040-nbx: add U-Boot dtsi for conditional OP-TEE
  cmd: mvebu: add emmcboot for Nodebox image format
  cmd: mvebu: add device serial and MAC address initialization

 arch/arm/dts/Makefile                    |   1 +
 arch/arm/dts/armada-8040-nbx-u-boot.dtsi |  15 +
 arch/arm/dts/armada-8040-nbx.dts         | 259 +++++++++++++++++
 arch/arm/mach-mvebu/Kconfig              |   9 +
 arch/arm/mach-mvebu/armada8k/Makefile    |   2 +-
 arch/arm/mach-mvebu/armada8k/cpu.c       |  10 +
 arch/arm/mach-mvebu/armada8k/soc_info.c  | 192 +++++++++++++
 arch/arm/mach-mvebu/armada8k/soc_info.h  |  14 +
 board/freebox/nbx10g/Kconfig             |  12 +
 board/freebox/nbx10g/MAINTAINERS         |  13 +
 board/freebox/nbx10g/Makefile            |   3 +
 board/freebox/nbx10g/board.c             |  79 ++++++
 cmd/mvebu/Kconfig                        |  80 ++++++
 cmd/mvebu/Makefile                       |   2 +
 cmd/mvebu/mvebu_emmcboot.c               | 340 +++++++++++++++++++++++
 cmd/mvebu/nbx_fbxserial.c                | 289 +++++++++++++++++++
 configs/mvebu_nbx_88f8040_defconfig      |  76 +++++
 include/configs/nbx10g.h                 |  29 ++
 include/mvebu_imagetag.h                 |  82 ++++++
 include/mvebu_nrboot.h                   |  51 ++++
 include/nbx_fbxserial.h                  | 134 +++++++++
 21 files changed, 1691 insertions(+), 1 deletion(-)
 create mode 100644 arch/arm/dts/armada-8040-nbx-u-boot.dtsi
 create mode 100644 arch/arm/dts/armada-8040-nbx.dts
 create mode 100644 arch/arm/mach-mvebu/armada8k/soc_info.c
 create mode 100644 arch/arm/mach-mvebu/armada8k/soc_info.h
 create mode 100644 board/freebox/nbx10g/Kconfig
 create mode 100644 board/freebox/nbx10g/MAINTAINERS
 create mode 100644 board/freebox/nbx10g/Makefile
 create mode 100644 board/freebox/nbx10g/board.c
 create mode 100644 cmd/mvebu/mvebu_emmcboot.c
 create mode 100644 cmd/mvebu/nbx_fbxserial.c
 create mode 100644 configs/mvebu_nbx_88f8040_defconfig
 create mode 100644 include/configs/nbx10g.h
 create mode 100644 include/mvebu_imagetag.h
 create mode 100644 include/mvebu_nrboot.h
 create mode 100644 include/nbx_fbxserial.h

-- 
2.43.0



More information about the U-Boot mailing list