[PATCH v1 00/23] board: nxp: add the Free Mobile Nodebox v3 CPU Module (LX2160A)

Vincent Jardin <[email protected]>
Newsgroups gmane.comp.boot-loaders.u-boot
Message-ID <20260817153144.1951036-1-vjardin__27971.0970514984$1786980740$gmane$org@free.fr>
This series adds the Free Mobile Nodebox v3 CPU Module, an NXP
LX2160A based board (16x Cortex-A72, DPAA2). U-Boot is the BL33
payload of TF-A: BL2 trains the DDR, BL31 hands over, and U-Boot
boots a FIT image (kernel + MC firmware + DPC/DPL) from a single
FlexSPI NOR. The module plugs onto several carrier boards (NBV30,
NBV32, etc.) that share one kernel image but differ in their device
tree and DPAA2 data path.

The port is modelled on the LX2160ARDB / QDS boards and lives next
to them under board/nxp/lx2160a/, reusing their SoC level code.
Board specific behaviour is wired through EVENT_SPY hooks rather
than weak symbol overrides, and the dependencies each hook needs
are forced on by hidden default-y Kconfig bools under
`if TARGET_NBXV3`, so a hook cannot silently turn into a no-op.

The series is in three stages:

 1. Base port and documentation (patches 1-2): TARGET_NBXV3, the
    defconfig, a minimal device tree, the MAINTAINERS entry, the
    Ethernet wiring file and doc/board/nxp/nbxv3.rst.

 2. Board code (patches 3-9): DPAA2 Ethernet on DPMAC17 through the
    RTL8211FD PHY; the +0V8_VDD core rail (MPS MPQ8785 PMBus
    regulator snapshot, PMBus PSU snapshot, VID fuse driven voltage
    trim through UCLASS_REGULATOR); the ${carrier} selection that
    lets one FIT carry a DPC/DPL/DTB set per carrier; the ZL30733 /
    ZL30643 DPLL traces; the +3V3_FAN rail hook.

 3. Build and device tree settings (patches 10-23): one small
    commit per peripheral or features, each enabling its DT nodes and
    defconfig symbols.



Vincent Jardin (23):
  board: nxp: add Nodebox v3 CPU Module (LX2160A) base port
  doc: board: nxp: add the Nodebox v3 CPU Module (nbxv3)
  board: nbxv3: enable RTL8211FD PHY for 1G DPAA2
  board: nbxv3: add MPQ8785 PMBus traces + DT regulator
  board: nbxv3: add boot-time PMBus PSU traces
  board: nbxv3: add VID-fuse driven core voltage
  board: nbxv3: select carrier at boot
  board: nbxv3: add DPLL status (ZL30733, ZL30643)
  board: nbxv3: enable +3V3_FAN rail fixed regulator
  arm: dts: layerscape: nbxv3: enable UART0..UART3
  board: nbxv3: enable FlexSPI boot NOR (GD55LB02GF) and FIT boot
  board: nbxv3: store the environment in the boot NOR
  board: nbxv3: enable eMMC on eSDHC2
  board: nbxv3: enable PCIe root complexes (PCIE3..PCIE6)
  board: nbxv3: enable both USB host controllers
  board: nbxv3: describe the I2C buses and their on module devices
  arm: dts: nbxv3: add the +3V3_FAN regulator
  board: nbxv3: enable JC42 + QorIQ TMU + PMBus thermal
  board: nbxv3: enable HW crypto (CAAM) and rng command
  arm: dts: nbxv3: bump SBSA watchdog timeout to 120s
  board: nbxv3: add operator commands and JTAG semihosting
  board: nbxv3: enable GPIO controllers with line names and hogs
  board: nbxv3: add the boot environment (FIT over MC, MC memory, PS1)

 arch/arm/Kconfig                       |  12 +
 arch/arm/dts/Makefile                  |   1 +
 arch/arm/dts/fsl-lx2160a-nbxv3.dts     | 531 +++++++++++++++++++++++++
 board/nxp/lx2160a/Kconfig              |  45 +++
 board/nxp/lx2160a/MAINTAINERS          |   9 +
 board/nxp/lx2160a/Makefile             |   1 +
 board/nxp/lx2160a/nbxv3/Makefile       |  11 +
 board/nxp/lx2160a/nbxv3/carrier.c      |  87 ++++
 board/nxp/lx2160a/nbxv3/carrier.h      |  17 +
 board/nxp/lx2160a/nbxv3/dpll_zl30733.c | 183 +++++++++
 board/nxp/lx2160a/nbxv3/eth_nbxv3.c    |  77 ++++
 board/nxp/lx2160a/nbxv3/fan_power.c    |  32 ++
 board/nxp/lx2160a/nbxv3/mps_pmbus.c    | 107 +++++
 board/nxp/lx2160a/nbxv3/psu_pmbus.c    |  80 ++++
 board/nxp/lx2160a/nbxv3/vid_handoff.c  | 146 +++++++
 configs/nbxv3_tfa_defconfig            | 106 +++++
 doc/board/nxp/index.rst                |   1 +
 doc/board/nxp/nbxv3.rst                | 255 ++++++++++++
 include/configs/nbxv3.h                |  57 +++
 19 files changed, 1758 insertions(+)
 create mode 100644 arch/arm/dts/fsl-lx2160a-nbxv3.dts
 create mode 100644 board/nxp/lx2160a/nbxv3/Makefile
 create mode 100644 board/nxp/lx2160a/nbxv3/carrier.c
 create mode 100644 board/nxp/lx2160a/nbxv3/carrier.h
 create mode 100644 board/nxp/lx2160a/nbxv3/dpll_zl30733.c
 create mode 100644 board/nxp/lx2160a/nbxv3/eth_nbxv3.c
 create mode 100644 board/nxp/lx2160a/nbxv3/fan_power.c
 create mode 100644 board/nxp/lx2160a/nbxv3/mps_pmbus.c
 create mode 100644 board/nxp/lx2160a/nbxv3/psu_pmbus.c
 create mode 100644 board/nxp/lx2160a/nbxv3/vid_handoff.c
 create mode 100644 configs/nbxv3_tfa_defconfig
 create mode 100644 doc/board/nxp/nbxv3.rst
 create mode 100644 include/configs/nbxv3.h

---
base-commit: 527115ef6783cec49e5610c523c124b399011361
branch: for-upstream/nbxv3-v1

-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.