Skip to content

Bring up an LX2160

The NXP LX2160A (Layerscape family) is a 16-core ARM Cortex-A72 system-on-chip with built-in packet-processing accelerators (DPAA2, NXP’s Data Path Acceleration Architecture), useful for high-throughput CCSDS framing on the bus interface. It is one of the supported targets, at the system-daemon support level: the vendor board support package keeps the boot path, and SpaceOS runs on top as a daemon install with Solo5/KVM unikernel workloads.

Before starting, obtain the bench network settings, remote-management access, and SSH credentials from the operator responsible for the board.

Use NXP LSDK 21.08, NXP’s Layerscape software development kit. Later board support package releases require board-level validation before operational use.

Hardware topology

The LX2160A platform exposes:

  • 16× Arm Cortex-A72 cores at up to 2.2 GHz.
  • DPAA2 for packet processing, useful for high-throughput CCSDS framing on the bus interface.
  • Up to 100 Gbps Ethernet over the chip’s serializer/deserializer lanes, DDR4 memory, and multiple PCIe Gen 4 lanes for accelerator attachment.

Two boot modes typically used during bring-up:

  • NOR / QSPI boot. Production-style; firmware flashed in-place.
  • SD-card boot. Development; SD card carries the U-Boot payload and Linux root filesystem.

Build a Linux image

Start from the vendor board support package, enable the required virtualization and memory settings, and apply the overlay supplied for the target.

Build the image:

  1. Source the LSDK environment.
  2. Configure for the LX2160A reference board (RDB or variant).
  3. Enable KVM, set the contiguous memory area the kernel reserves for devices (cma=900M is typical for SpaceOS workloads), and enable the relevant DPAA2 driver set.
  4. Apply the target overlay.
  5. Build a wic disk image or a tar.gz root filesystem.

Flash and boot

With the platform halted, move the SD card to the build host and flash the image:

Terminal window
sudo dd if=lsdk-lx2160a-sdimage.wic of=/dev/<sd-card-device> \
conv=fsync status=progress bs=4M

Warning: double-check the target device. sudo dmesg | grep <your-sd-device> confirms the right one; do not run dd against a mounted partition.

Re-insert the SD card into the platform and power-cycle.

Verify the substrate

After Linux is up, log in via serial console and confirm the board provides what the substrate needs:

Terminal window
ls /dev/kvm # KVM enabled
cat /proc/device-tree/compatible # board identity
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq

With KVM and the target devices present, the board can run SpaceOS workloads.

For power cycling and serial-console access, follow the procedures supplied by the bench operator.