NXP Semiconductors LS1012ARDB Layerscape Linux Distribution POC User Guide
- June 16, 2024
- NXP Semiconductors
Table of Contents
- NXP Semiconductors LS1012ARDB Layerscape Linux Distribution POC
- Specifications
- Overview
- Accessing Layerscape LDP
- Building Host Package
- Product Usage Instructions
- NXP Semiconductors
- Feature
- Description
- : ifconfig -a #: udhcpc -i eth0 ( or eth1 ,etc.) c
- Read User Manual Online (PDF format)
- Download This Manual (PDF format)
NXP Semiconductors LS1012ARDB Layerscape Linux Distribution POC
Specifications
- Product Name: LLDPUG
- Product Type: Linux enablement software
- Manufacturer: NXP Semiconductors
- Compatible Processors: Layerscape processors
- Version: Rev. L6.1.1_1.0.0
- Release Date: 10 May 2023
Overview
Layerscape Linux Distribution POC (LDP) is a Linux enablement software designed for NXP’s ARM core-based Layerscape processors. It includes drivers, tools, and libraries necessary to enable the features of the Layerscape processors. The software uses a Yocto-based meta layer to generate a Proof of Concept (POC) image. The Layerscape LDP provides a fully operational bootloader, a Linux kernel, and board-specific modules that are ready for usage on specific hardware reference platforms. It has been tested and qualified by NXP.
Accessing Layerscape LDP
Layerscape LDP is distributed through Git. To build the Yocto component, you need to clone the manifest and install Layerscape LDP onto a mass storage device for integration. This integrated version can be used on an NXP reference or evaluation board. You can build the NXP components from source using the “bitbake” script or install them from NXP binaries using flex- installer. For more details on accessing and building Layerscape LDP, refer to the links provided below.
Building Host Package
To build the host package for Yocto build, you need to install essential host packages on your build host. Use the following command to install the required packages:
Git Tags
Layerscape LDP Git repositories use Git tags to indicate component revisions
that are release tested together. You can use the “git tag” command to examine
the available tags and choose a specific tag to checkout.
Product Usage Instructions
Step 1: Accessing Layerscape LDP
- Clone the Layerscape LDP manifest from Git.
- Install Layerscape LDP onto a mass storage device for integration.
Step 2: Building Host Package
- Open a terminal on your build host.
- Run the following command to install the required host packages:
$ sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm python3-subunit mesa-common-dev zstd liblz4-tool
Step 3: Building Layerscape LDP
- Choose the desired Git tag for Layerscape LDP.
- Checkout the chosen tag using the “git tag” command.
- Build Layerscape LDP using the appropriate build script or installer.
Step 4: Usage on NXP Reference/Evaluation Board
- Install the built Layerscape LDP onto the NXP reference or evaluation board.
- Follow the specific hardware reference platform instructions for further usage and configuration.
LLDPUG
Layerscape Linux Distribution POC User Guide
Rev. L6.1.1_1.0.0 — 10 May 2023
User guide
Document Information
Information
Content
Keywords
LLDPUG, Layerscape, LDP, LS1012ARDB, FRWY-LS1012A, TWR-LS1021A, LS1028ARDB,
LS1043ARDB, LS1046ARDB, FRWY-LS1046A, LS1088ARDB, LS2088ARDB, LX2160ARDB Rev.
2, LX2162AQDS
Abstract
Layerscape Linux Distribution POC (LDP) is an industry-standard Linux
enablement software for NXP’s ARM core based Layerscape processors.
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
1 Layerscape LDP overview
Layerscape Linux Distribution POC (LDP) is a Linux enablement software for
NXP’s ARM core based Layerscape processors. It provides the necessary drivers,
tools, and libraries for enabling the features of the Layerscape processors.
The Layerscape LDP build uses a Yocto-based meta layer to generate a Proof of
Concept (POC) image.
Layerscape LDP provides fully operational bootloader, a Linux kernel, and
board-specific modules that are ready for usage together in a flexible
configuration, for specific hardware reference platforms. The Layerscape LDP
has been tested and qualified at NXP. The Layerscape LDP is a complete Linux
system with the following major components:
· NXP firmware components including: Trusted Firmware-A (TF-A), a reference
implementation of secure world software for Armv7-A and Armv8-A NXP
peripheral firmware components for DPAA1, DPAA2, and PPFE
· NXP bootloaders. Two are offered: U-Boot, based on denx.de plus patches
· NXP Linux kernel, based on kernel.org upstream plus patches · NXP added user
space components · Linux distro standard user space file set (userland),
including compilers and cross compiler
The benefit of using NXP Layerscape LDP userland is the easy availability of
thousands of standard Linux user space packages. The experience of using the
Layerscape LDP is similar to using Ubuntu, but the kernel, firmware, and some
special NXP packages are managed separately. Note: To brief how to help
modify/update individual Layerscape LDP components, such as U-Boot, Linux
kernel, DPL, DPC, on a reference design board when booting the board from a
specific boot source, such as QSPI or SD, see Section 4.7 at NXP community.
Accessing Layerscape LDP
Layerscape LDP is distributed through Git. To build the yocto component, you
must clone the manifest and install Layerscape LDP onto a mass storage device
as an integration which is ready for usage on an NXP reference or evaluation
board. You can build the NXP components either from the source using a script
called bitbake or install from binaries of NXP components using flex-
installer.
For more details, see the links given below:
· Building NXP components: Section 4. · Yocto project: Yocto projects. · NXP
Linux Yocto project: NXP Linux Yocto Project BSP for Desktop PoC.
Build host package
Yocto build requires installation of essential host packages on your host
build.
To buid the host, use the following command:
$ sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential
chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils
iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3
xterm python3-subunit mesa-common-dev zstd liblz4-tool
For more information about how to build Layerscape LDP, see Section 4.5.
Layerscape LDP Git tags
Layerscape LDP Git repositories use the Git tags to indicate component
revisions that are release tested together. Use the git tag command to examine
them and chose a tag to checkout.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
2 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
2 Acronyms and abbreviations
Table 1 below lists and explains the acronyms and abbreviations used in this document.
Table 1.Acronyms and abbreviations
Term
Definition
ACL
Access Control List
AH
Authentication Header (RFC 4302) a network protocol designed to provide
authentication services in IPv4 and IPv6.
AMP
Asynchronous multiprocessing, running multiple operating system images on different processors of the same machine without virtualization.
API
Application Programming Interface
ARP
Address Resolution Protocol
CAAM
Cryptographic Acceleration and Assurance Module
BE
Big Endian
CCSR
Configuration and Control Status Register
CoT
Chain of Trust
CPU
Central Processing Unit, also known more generally as “Processor”
DCD
Device Configuration Data
DCE
Data Compression/Decompression Engine
DCU
Display Control Unit
DMA
Direct Memory Access
DPAA
Data Path Acceleration Architecture
DPDK
Data Plane Development Kit
DSK
Device Secret Key
DTB
Device Tree Blob–the binary representation of device trees
DTS
Device Tree Syntax–the textual representation of device trees
DUT
Device Under Test
EDAC
Error Detection and Correction
eSDHC
Enhaced Secured Digital Host Controller
ESP
Encapsulating Security Payload (RFC 4303) a network protocol designed to
provide a mix of security services in IPv4 and IPv6.
EVB
Edge Virtual Bridge
FDB
Forwarding Data Base
FUID
Freescale Unique ID
GPIO
General Purpose Input/Output
GPP
General Purpose Processor
GPU
Graphics Processing Unit
GUEST_CONSOLE_TELNET_PORT Telnet port for accessing guest console of VM.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
3 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 1.Acronyms and abbreviations…continued
Term
Definition
Guest/VM
The term `Guest’ is used for Linux running inside the virtual machine(s) that are in turn running over Host Linux operating system. VM and Guest have been used interchangeably in this guide.
HAL
Hardware Abstraction Library
HIF
Host Interface
HSM
Hardware security modules
IBR
Internal Boot ROM
IFC
Integrated Flash Chip
inbound (traffic)
Encrypted traffic which is coming from an unprotected interface. This traffic is terminated on the CPU.
IP_ADDR_BRD
This term is used for LS1088ARDB and LS2088ARDB IP address.
IP_ADDR_IMAGE_SERVER
This term is used for IP address of the machine on which all the software images are kept.
IPC
Inter-Process Communication, can be interpreted as being communication
between distinct application execution flows or between distinct hardware
processing units.
IPFwd
IPv4 Forward
IPSec
IP Security, it is a communication standard defined and refined by several public RFCs (such as RFC-2401 and RFC-4301) where hosts exchange encrypted IP data packets.
IPSec Tunnel
A communication convention between two network gateways to IPSec process certain network traffic in a particular way. An IPSec tunnel has two endpoints (which are the gateways), a clearly delimited set of encryption and authentication methods, keys, encapsulation headers and security policies, which define the traffic that is sent through the tunnel.
ISBC
Internal Secure Boot Code
ISR
Interrupt Status Register
ITF
Intent to Fail
ITS
Intent to Secure
KASLR
Kernel Address Space Layout Randomization
KVM
Kernel-based Virtual Machine – A Linux kernel module that allows a user space program access to the hardware virtualization features of NXP processors.
LDP
Linux Distribution POC
LE
Little Endian
LIODN
Logical I/O Device Number
LPUART
Low Power Universal Asynchronous Receiver Transmitter
LSTA
LS Series Trust Architecture
LXC
LLinux Containers
MC
Management Complex
NAT
Network Address Translation
OEM
Original Equipment Manufacturer
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
4 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 1.Acronyms and abbreviations…continued
Term
Definition
OP-TEE
Open Portable Trust Execution Environment
OS
Operating System
OUID
OEM Unique ID
outbound (traffic)
Clear traffic which is coming from a software application which generates traffic that must be encrypted and forwarded via an unprotected interface.
PAMU
Peripheral Access Management Unit
PBL
Pre-Boot Loader
PCD
Parse, Classify, Distribute a software architecture concept in NXP DPAA drivers which allows the user to configure the DPAA hardware (FMan) to do frame parsing, classification or distribution on a series of frame queues.
PCIe
Peripheral Component Interconnect Express
PDCP
Packet Data Convergence Protocol It is one of the layers of the Radio Traffic Stack in UMTS/LTE and performs IP header compression and decompression, transfer of user data and maintenance of sequence numbers for Radio Bearers which are configured for lossless serving radio network subsystem (SRNS) relocation.
PFE
Packet Acceleration Engine
PKCS
Public-Key Cryptography Standards
PME
Pattern Matcher Engine
POC
Proof of Concept
QDS
Qonverge Development System
QEMU
Quick EMUlator – A hosted hypervisor that performs hardware virtualization.
QSPI
Quad Serial Peripheral Interface
RC
Route Cache
RCW
Reset Configuration Word
RDB
Reference Design Board
RFC
Request for Comments a public document which describes a software standard.
SA
Security Association a data record, defined by RFC 4301, which stores the
information related to the IPSec processing needed for a specific network traffic
type (such as encryption/decryption keys and algorithms, traffic endpoints
description, authentication algorithms, and so on).
SAD
Security Association Database the database holding all the valid SAs in a system.
SAI
Serial Audio Interface
SATA
Serial Advanced Technology Attachment
SDK
Software Development Kit
SEC
Security Engine Coprocessor a DPAA hardware block performing cryptographic acceleration and offloading hardware.
SFP
Secure Fuse Processor
SIP DIP
Source Internet Protocol and Destination Internal Protocol
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
5 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 1.Acronyms and abbreviations…continued
Term
Definition
SMMU
System Memory Management Unit
SMP
Symmetric Multi-Processing, running an operating system image on multiple CPUs simultaneously.
SNVS
Secure Non-Volatile Storage
SoC
System on a Chip, a chip integrating one or more processors and on-chip
peripherals.
SP
Security Policy a set of rules that network traffic must comply with in order to be
eligible for IPSec processing.
SPD
Security Policy Database the database storing all the SPs in a system.
SRE
Stateful Rule Engine
SRK
Super Root Key
SRKH
Super Root Key Hash
STP
Spanning Tree Protocol
SUI
String Under Inspection
TA
Trust Architecture
TF-A
Trusted Firmware-A
TFTP_BASE_DIR
Base directory of TFTP server where all the images are kept.
TLB
Translation Lookaside Buffer
TSN
Time-Sensitive Networking
TTL
Time To Live
UDP
User Datagram Protocol
UID
Unique Device ID
UIO
User space I/O
USB
Universal Serial Bus
VEB
Virtual Ethernet Bridge
VEPA
Virtual Ethernet Port Aggregator
VFIO
Virtual Function Input/Output
VID
Voltage IDentifier
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
6 / 1056
NXP Semiconductors
3 Release notes
LLDPUG
Layerscape Linux Distribution POC User Guide
3.1 What is new in this release
3.1.1 List of changes
· NXP Layerscape LDP userland: NXP Layerscape LDP, including Linux distro
main packages and NXP packages Toolchain: gcc-11.2,
glibc-2.36,binutils-2.38, gdb-12.1
· Linux kernel core and virtualization: LTS kernel 6.1.1 update
· Linux kernel drivers: · Data Plane Development Kit (DPDK):
Virtualization – OVS-DPDK · Trust Firmware – A (TF-A): · U-Boot bootloader:
U-Boot v2022.04 update AQR113C on TWR-LS1021A, LS1088ARDB, and LX2162AQDS
· Other tools and utilities: AQR113C firmware Yocto bitbake
3.2 Feature support matrix
The following tables show the features that are supported in this release.
Refer to the legend below to decipher the entries.
Legend:
· Y – Feature is supported by software · / – Feature is not supported by
software · na – Hardware feature is not available
Table 2.Key features Feature
LS1012A LS1021A LS1028A LS1043A LS1046A LS1088A LS2088A LX2160A LX2162A
64-bit User space, BE
/
na
/
/
/
/
/
/
/
32-bit User space, LE
/
Y
/
/
/
/
/
/
/
64-bit User space, LE
Y
na
Y
Y
Y
Y
Y
Y
Y
36b phys mem
na
Y
na
na
na
na
na
na
na
40b phys mem
Y
na
Y
Y
Y
Y
Y
Y
Y
Data Plane Development Kit Y
/
Y
Y
Y
Y
Y
Y
Y
(DPDK)
– VPP excluded
Hugetlbfs
Y
Y
Y
Y
Y
Y
Y
Y
Y
Management Complex
na
na
na
na
na
Y
Y
Y
Y
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
7 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 2.Key features…continued
Open Portable Trust Y
/
Y
Y
Y
Y
Y
Y
Y
Execution Environment (OP-
TEE)
Secure boot (NXP CoT)
Y
Y
Y
Y
Y
Y
Y
Y
Y
Secure boot (Arm CoT)
na
na
na
na
na
na
na
Y
Y
Time Sensitive Network (TSN) na
na
Y
na
na
na
na
na
na
USDPAA Applications
na
na
na
/
/
na
na
na
na
Trusted Firmware-A (TF-A)
Y
na
Y
Y
Y
Y
Y
Y
Y
Verified boot
na
na
na
na
na
na
na
na
Y
Warm reset
na
na
na
na
na
na
na
na
Y
Table 3.Virtualization, Containers and Isolation
Feature
LS1012A LS1021A LS1028A LS1043A LS1046A LS1088A LS2088A LX2160A LX2162A
KVM/QEMU
Y
na
Y
Y
Y
Y
Y
Y
Y
On-chip networking interfaces /
na
Y
na
na
Y
Y
Y
Y
Direct Assignment
PCI
Devices
Direct /
na
Y
/
Assignment
/
Y
Y
Y
Y
LXC
Y
Y
Y
Y
Y
Y
Y
Y
Y
Libvirt
Y
Y
Y
Y
Y
Y
Y
Y
Y
SMMU – default config
na
/
Y
/
/
Y
Y
Y
Y
VFIO for Network Resources
/
na
Y
na
na
Y
Y
Y
Y
Docker
Y
/
Y
Y
Y
Y
Y
Y
Y
Table 4.Linux kernel drivers
Feature
LS1012A LS1021A LS1028A LS1043A LS1046A LS1088A LS2088A LX2160A LX2162A
Audio – I2S, SAI
Y
Y
Y
na
na
na
na
na
na
CAAM DMA
Y
/
/
/
/
/
/
/
/
DCE
na
na
na
na
na
na
Y
Y
Y
DCU
na
Y
na
na
na
na
na
na
na
Display – eDP/DP, LCD
na
na
Y
na
na
na
na
na
na
DMA
Y
Y
Y
Y
Y
Y
Y
Y
Y
DPAA1 – Ethernet, FMan, na
na
na
Y
QMan, BMan
Y
na
na
na
na
DPAA2 – Ethernet, L2 na
na
na
na
na
Y
Y
Y
Y
Switching, QBMan
eSDHC
Y
Y
Y
Y
Y
Y
Y
Y
Y
ENETC
na
na
Y
na
na
na
na
na
na
FlexCAN
na
/
Y
na
na
na
na
Y
Y
FlexSPI
na
na
Y
na
na
na
na
Y
Y
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
8 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 4.Linux kernel drivers…continued
Feature
LS1012A LS1021A LS1028A LS1043A LS1046A LS1088A LS2088A LX2160A LX2162A
GPU
na
na
Y
na
na
na
na
na
na
I2C
Y
Y
Y
Y
Y
Y
Y
Y
Y
IEEE1588, linuxptp
na
Y
Y
Y
Y
Y
Y
Y
Y
IFC
na
Y
na
Y
Y
Y
Y
na
na
IMA-EVM
Y
/
/
Y
Y
Y
Y
/
/
TSN Ethernet Switch
na
na
Y
na
na
na
na
na
na
LPUART
na
Y
/
Y
Y
/
/
na
na
QSPI
Y
Y
na
Y
Y
Y
Y
na
na
PCIe RC
Y
Y
Y
Y
Y
Y
Y
Y
Y
PCIe EP
/
/
/
Y
Y
Y
Y
Y
Y
PFE
Y
na
na
na
na
na
na
na
na
Power Management
Y
Y
Y
Y
Y
Y
Y
Y
Y
Preempt Real-Time
/
/
Y
Y
Y
Y
Y
Y
Y
SATA
Y
Y
Y
Y
Y
Y
Y
Y
Y
SEC
Y
Y
Y
Y
Y
Y
Y
Y
Y
dSPI
/
Y
/
Y
Y
/
Y
na
Y
TDM (QE)
na
na
na
Y
na
na
na
na
na
TSN
na
na
Y
na
na
na
na
na
na
USB
Y
Y
Y
Y
Y
Y
Y
Y
Y
VeTSEC
na
Y
na
na
na
na
na
na
na
VFIO for network resources
/
na
Y
na
na
Y
Y
Y
Y
Watchdog
Y
Y
Y
Y
Y
Y
Y
Y
Y
GPIO
na
na
na
na
Y
Y
na
na
Y
EDAC
Y
Y
Y
Y
Y
Y
Y
Y
Y
3.3 Fixed, open, and closed issues
The types of issues handled in the Layerscape LDP release 6.1.1_1.0.0 are provided below: · Fixed issues: These issues have a software fix that has been integrated into the ‘Fixed In’ Release.
Table 5.Issues fixed in the Layerscape LDP release 6.1.1_1.0.0
ID
Description
DPDK-1827
ovs-host_20g_6c case fails with 100% load.
DPDK-2671
ICV check failures for AES-XCBC IPSec and PDCP alogs.
DPDK-3070
IPSEC ESN Checks fails with raw buffer implementation.
DPDK-3098
Ethernet pause frame is not supported in DPDK.
Disposition LSDK 19.09 LSDK 21.08
LSDK 21.08
LSDK 21.08
Opened in
Fixed in
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
9 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 5.Issues fixed in the Layerscape LDP release 6.1.1_1.0.0…continued
ID
Description
Disposition
DPDK-3599
There is no throughput data during DPDK OVS testing on dpaa2 platform
5.15.32-2.0.0
DPDK-3607
IPSEC event mode does not work on LS1046ARDB
5.15.32-2.0.0
DPDK-3666
L3 forwarding performance degrades on 1 core and 2G throughputs on LS1028ARDB
5.15.52-2.1.0
DPDK-3718
QDMA hangs on PCIe read on LS1046 ARDB.
5.15.5-1.0.0
DPDK-3719
Incorrect mbuf offload flags for L3/L4 checksum
LF-2403
The linux_ipv4_fwd_performance results get degradation from 64 to 1518 frame size on DPAA2 platforms
Fixed
LF-2595
tsn_switch_802_1qav_performance test fails 5.10.72-2.2.0 on LS1028ARDB
LF-2852
The second kernel with kexec cannot boot up on LX2160A.
Fixed
LF-3792
Kexec fails to switch to second kernel on LX2160ARDB
5.10.72-2.2.0
LF-3954
In kdump, usb device cannot be probed in the second kernel.
LSDK 21.08
LF-4266
IMA EVM fix and enforce mode are not supported.
LSDK 20.12
LF-4505
No secure composite firmware image is provided on LX2160ARDB and LX2162 QQDS. For secure boot feature, see “Secure boot” section.
LSDK 21.08
LF-4650
Fuse provisioning build fails on LS1043A and LS1046A.
LSDK 21.08
LF-5105
Probing PCIe EPs behind PCIe switch fails with u-boot.
LSDK 21.08
LF-5134
Display firmware does not work on LS1028 ARDB
5.10.72-2.2.0
LF-5284
Correct HNF-SNF mapping and measure DDR performance improvement on LX2160 ARDB
LSDK 21.08
LF-5365
DPAA2 1588 SINGLE_STEP performance degrades
LSDK 21.08
LF-6222
Audio does not work on LS1028ARDB
5.15.5-1.0.0
LF-6294
LX2120A does not boot up
5.15.32-2.0.0
LF-6322
IFC-NOR secure-boot fails for error “BL2: Failed to load image” on LS2088ARDB
5.15.32-2.0.0
LF-6323
SD secure boot fails on LX2160ARDB
5.15.32-2.0.0
Opened in
5.15.32_2.0.0 LSDK 20.12 LSDK 20.04
Fixed in
5.15.52-2.1.0 5.15.52-2.1.0
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
10 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 5.Issues fixed in the Layerscape LDP release 6.1.1_1.0.0…continued
ID
Description
Disposition
Opened in
Fixed in
LF-7599
Weston service cannot start automatically when system boots up on LS1028ARDB.
5.15.32-2.0.0
LFU-155
On LS1012AFRWY, the Ethernet PHY driver LSDK 21.08 does not work well in U-Boot.
LFU-340
In secure boot, kernel itb validation crashes 5.15.32-2.0.0 during booting.
LFU-346
In secure boot, pfe firmware validation crashes on LS1012ARDB.
5.15.32-2.0.0
LFU-350
SD secure boot fails on TWR-LS1021A
5.15.32-2.0.0
QSDK-7971
The header esbc_validate fails in MC and DPC when secure boot starting on LS1088 ARDB
LSDK 21.08
· Open Issues: Open issues do not currently have a resolution. Workaround suggestions are provided whereever possible.
Table 6.Open issues in the Layerscape LDP release 6.1.1_1.0.0
ID
Description
Disposition Opened Workarounds in
DPDK-2671 ICV check failures for AES-XCBC IPSec and PDCP alogs.
Open
5.15. 522.1.0
DPDK-3070 IPSEC ESN Checks fails with raw buffer implementation
Open
5.15. 522.1.0
DPDK-3098 Ethernet pause frame is not supported in DPDK
Open
5.15. 522.1.0
DPDK-3719 Incorrect mbuf offload flags for L3/L4 checksum
5.15. 32_ 2.0.0
LF-2893
Functionalities that require PCI reset, such as VFIO, will work only with PCI endpoints that support Function Level Reset (FLR).
Open
5.15. 522.1.0
LF-2893/LF- Functionalities that require PCI reset, such as
2260
VFIO, will work only with PCI endpoints that
support Function Level Reset (FLR).
Open
5.15. 522.1.0
LF-3076
It is recommended to run Linux IPSec performance at core frequency 2100MHz on LS2088ARDB.
Open
5.15. 522.1.0
LF-385
Linux IPSec performance degrades on LS2088A RDB on LTS 5.4.
Open
LSDK 20.04
LF-3360
Functionalities that require PCI reset, such as VFIO, will work only with PCI endpoints that support Function Level Reset (FLR).
Open
5.15. 522.1.0
LF-3981
On LX2160ARDB, there is kernel panic when unbinding dpni during Linux qos testing.
5.10. 35_ 2.0.0
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
11 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 6.Open issues in the Layerscape LDP release 6.1.1_1.0.0…continued
ID
Description
Disposition
Opened Workarounds in
LF-4151
On LS1028ARDB and DPAA2 platforms, the system may randomly reset after sleep.
Open
LSDK 21.08
LF-4162
There is kexec-tools 2.0.18 in Ubuntu 20.04. With this version, the second kernel booting fails.
Open
5.15. Install kexec-tools 2.0.21 in 52- Ubuntu 22.04. 2.1.0
LF-4222
Except the following single-pass ciphers, no other ciphers does not get
offloaded to CAAM on the DPAA1 platforms:
– AES128-SHA1- AES128-SHA256- AES256SHA1- AES256-SHA256
Open
5.15. 522.1.0
LF-4266
IMA EVM fix and enforce mode are not supported.
Open
LSDK 20.12
LF-4291
Changes made in the upstream kernel to the pfifo_fast qdisc impact the performance of networking scenarios, introducing a 10% to 14% IP forwarding performance degradation on DPAA1 platforms. These changes were made to prevent out-of-order frames.
Open
5.15. 522.1.0
The offending upstream commit is “Revert “net: dev: introduce support for sch BYPASS for lockless qdisc””. By reintroducing the original commit (“net: dev: introduce support for sch BYPASS for lockless qdisc”), the performance degradation is reverted. On the other hand, this change can introduce out-of- order frames in some scenarios. A second workaround for recovering the performance is changing the queueing discipline from the default pfifo_fast to another qdisc, such as fq_codel. Further configurations of the qdisc might be needed.
LF-4505
No secure composite firmware image is provided on LX2160ARDB and LX2162QQDS. For secure boot feature, see the “Secure boot” section.
Open
5.15. 522.1.0
LF-6686
Openssl job ring interrupt does not increase after openssl testing.
5.15. 32_ 2.0.0
LF-8092
Iperf server has call trace after setting MTU on LS1028ARDB
Open
5.15. 712.2.0
LF-8753
On LS043ARDB and LS1046ARDB, kexec_ kdump: fail to switch to the new kernel with default image or custom build image.
6.1.1 1.0.0 LDP
LF-8837
On LS1012ARDB, Display: desktop can’t display normally on specific monitor after login system.
6.1.1 1.0.0 LDP
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
12 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 6.Open issues in the Layerscape LDP release 6.1.1_1.0.0…continued
ID
Description
Disposition
Opened Workarounds in
LFU-155
On LS1012AFRWY, the Ethernet PHY driver does not work well in U-Boot.
Open
5.15. 522.1.0
LFU-205
Support for all SerDes protocol variations is not on added under DM_ETH.For use of the SGMII/ QSGMII based protocols on LS1088AQDS please disable DM_ETH and related configs.
Open
5.15. 522.1.0
QLINUX11792
On LS1043A and LS1046A, there is call trace on the optical port while testing parallel tcp with DPAA1 upstream driver.
Open
LSDK 19.06
Add the ‘iommu. passthrough=1′ boot parameter when using the upstream driver
QLINUX11797
There is no Kexec support on LS1021A (Armv7) platform.
Open
LSDK 19.06
QSDK-7956
The LS1028A Felix switch suffers from the A-050484 erratum (“Ethernet flowcontrol not functional on L2 switch NPI port when XFH is used”). In the default configuration, where the control interface is configured to be the 2.5 Gbps eno2/swp4 port pair, and when the external ports are running at 1 Gbps, the switch enters congestion for traffic sent to switch ports from the CPU. Traffic streams such as iperf3 TCP see low throughput (~300 Mbps) due to burstypacket drops under congestion inside the switch which trigger the TCPcongestion control algorithms.
Open
5.15. 522.1.0
The workaround for the A-050484 erratum is not available in the v5.10 kernel,
so to avoid the low TCP throughput issue for scenarios where this is
desirable, the recommendation is to move the switch control interface from the
2.5Gbps port pair eno2/swp4 to the 1Gbps port pair eno3/swp5, and use the
2.5Gbps port pair eno2/ swp4 as a plain data port. Under this configuration,
flow control can be enabled on the 2.5Gbps port pair, which avoids congestion
drops inside the switch.
For more details, see “ENETC Ethernet and Felix switch drivers”, and “ENETC
Ethernet and Felix switch drivers” for the detailed changes.
QSDK-7971 The header esbc_validate fails in MC and DPC when secure boot starting on LS1088ARDB
Open
5.15. 522.1.0
Build images for secure boot without bitbake. All the images including DPC and MC binaries should be signed using the cst application.
QSDK-8014
In case of repetitive create/destroy/reset operations on dpdmai object, the MC firmware may enter into an unresponsive state in which no further commands can be issued making the networking applications non-functional until reboot.
Open
LSDK 21.08
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
13 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 6.Open issues in the Layerscape LDP release 6.1.1_1.0.0…continued
ID
Description
Disposition
Opened Workarounds in
QUEFI1950/2033
USXGMII is not supported with UEFI ACPI
Open
LSDK 20.12
QUEFI-1951 QDMA is not supported with UEFI ACPI
Open
LSDK 20.12
QUEFI-2025 AQR113C is not supported in UEFI shell on LX2160ARDB revC.
Open
5.15. 522.1.0
· Closed issues: Closed issues are issues where the root cause and fix are
outside the scope of the Layerscape LDP.
There are no closed issues in the Layerscape LDP release 6.1.1_1.0.0.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
14 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4 Getting started with Layerscape LDP
4.1 Host system requirements
Set up the host system as given below:
1. Install Ubuntu 20.04 LTS on the host machine: a. Obtain sudo permission by
running the command: sudoedit /etc/sudoers b. Add a line:
2. To build the target NXP Layerscape LDP userland for arm64/armhf arch, the
user network environment must have access to the remote Ubuntu official
server.
4.1.1 How to set HTTP proxy in Ubuntu
If your Linux host machine is in a subnet that needs HTTP(s) proxy to access
external Internet, set the environment variable http_proxy and https_proxy as
below:
1. Set proxy in ~/.bashrc (for current user) or in /etc/profile.d/proxy.sh
(for global users), then run source ~/.bashrc or source
/etc/profile.d/proxy.sh to validate the settings. export
http_proxy=”http://
2. Set proxy in /etc/apt/apt.conf Acquire::http::Proxy
“http://
4.2 Download and deploy Layerscape LDP images in Linux environment using flexinstaller
You can build Layerscape LDP easily from source by using Yocto bitbake. It is
a generic task execution engine that allows to run the shell and Python tasks
efficiently, while working within complex inter-task dependency constraints.
To build Layerscape LDP from source, see Section 4.5.
Table 7 lists and explains the command options used in the flex-installer
commands.
Table 7.flex-installer command options Command option Description
-m
Refers to board name.
-f
-B, –bootpart
Refers to firmware image.
Refers to bootpartition image. There is a set of bootpartition images for each
of the Linux kernel versions and platform (64-bit) supported by Layerscape
LDP.
Specify boot partition number to override default (default boot partition is
the 2nd one)
Supported values ls1012afrwy, ls1021atwr, ls1028ardb, ls1043ardb, ls1046ardb,
ls1046afrwy, ls1088ardb, ls2088ardb, lx2160ardbrev2, lx2162aqds
firmware
For example, -B 1 or
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
15 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 7.flex-installer command options…continued Command option Description
Supported values –bootpart=1
-r
Refers to NXP Layerscape LDP userland. There are different rootfs images for default userland and Edgescale userland.
ls-image-main-
-R, –rootpart Specify root partition number to override the default (default root partition is the 4th partition)
For example, specify the third partition as root partition:
-R 3 or
–rootpart=3
-d
Refers to storage device (SD, USB, or SATA)
/dev/
Note:
· Use the command cat /proc/partitions to see a list of devices and their
sizes to make sure that the
correct device names have been chosen.
· The SD/USB/SATA storage drive in the Linux PC is detected as /dev/sdX, where X is a letter such as a, b, c. Make sure to choose the correct device name, because data on this device will be replaced.
· If the Linux host machine supports read/write SD card directly without an
extra SD card reader device,
the device name of SD card is typically mmcblk0.
-e
`-e dtb’ option is used for UEFI in DTB way. This parameter installs grub.cfg, efi.fd
dtb, no need this option in case of U-Boot as bootloader
There is no need to add ‘-e’ option in case of U-Boot as bootloader by default
-u
Specifies URL of distro web server to override the default one for automatically downloading distro.
URL of distro web server
Note:
· The U-Boot based composite firmware must be programmed in flash device (not
in SD card) on LS2088ARDB/LS1012ARDB/LS1012AFRWY, no limitation on the other
Layerscape boards.
· Users can install distro rootfs and bootpartition tarball into SD card (or
USB/SATA disk) on all Layerscape boards.
· To run flex-installer command on the target storage drive connected to a
reference board, you must boot the board with TinyLinux and bring up network
interface. For details, refer to To deploy Layerscape LDP images on a
reference board running TinyLinux.
· To deploy locally custom Layerscape LDP images to the target storage drive
connected to a Linux host machine or a reference board. Usage:
$ flex-installer -b
For list of supported values for
· To deploy custom Layerscape LDP images on a reference board running
TinyLinux
1. After the reference board boots automatically, check whether the reference
board boots TinyLinux or whether it boots Layerscape LDP userland based
distribution. TinyLinux is a non-customizable ramdisk
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
16 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
rootfs deployed in flash media on the reference board. This rootfs fits into
the firmware image on flash and is therefore called tiny.
If the reference board boots TinyLinux, proceed to step #3.
If the reference board boots Layerscape LDP – based distribution, it means
that an older Yocto based distribution may already be present on the storage
device that is plugged into the reference board. In this case, go to step #2
first, to force the board to boot TinyLinux.
2. Force the reference board to boot TinyLinux.
Reboot the board and stop autoboot to enter U-Boot prompt.
Set Ethernet Interface
=>pri bootcmd bootcmd=env exists mcinitcmd && mmcinfo; mmc read 0x80001000
0x6800 0x800;
env exists mcinitcmd && env exists secureboot && mmc read 0x806C0000 0x3600
0x20 && esbc_validate 0x806C0000;env exists mcinitcmd && fsl_mc lazyapply dpl
0x80001000;run distro_bootcmd;run sd_bootcmd;env exists secureboot &&
esbc_halt; 2, run bootcmd (from the info above) =>mmc read 0x80001000 0x6800
0x800 => fsl_mc lazyapply dpl 0x80001000
Enter following command at the U-Boot prompt to boot the board to the
TinyLinux environment for executing flex-installer:
=> run sd_bootcmd (for SD/eMMC boot) => run nor_bootcmd (for IFC-NOR boot) =>
run qspi_bootcmd (for QSPI-NOR boot) => run xspi_bootcmd (for FlexSPI-NOR
boot)
3. Log in to TinyLinux as root and bring up a network interface. Dynamic IP address assignment:
: ifconfig -a #: udhcpc -i eth0 ( or eth1 ,etc.) c
Static IP address assignment:
$ ifconfig
The port name in Linux TinyLinux corresponding to each of the ports on the
reference board chassis is given in section “
$ flex-installer -i pf -d
Or
$ flex-installer -i pf -d
For list of supported values for
$ cd /mnt/mmcblk0p4 (or /mnt/sdx4)
6. Download bootpartition
7. Deploy bootpartition and Layerscape LDP userland to the target device
using the command given below:
flex-installer -f
For the list of supported values for
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
17 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Example:
$ flex-installer -b boot_ls1043ardb_lts_6.1.tgz -r ls-
imagemainls1043ardb.tar.gz -f firmware_ls1043ardb_sdboot.img -d /dev/sdX
· To only install composite firmware to the target storage drive on a Linux
host machine or a reference board. Usage:
$ flex-installer -f
For the list of supported values for
$ flex-installer -f firmware_ls1046ardb_sdboot.img -d /dev/sdx
· To partition and format target storage device with specified number and size
of partitions instead of using the default partitions. Usage:
flex-installer -i pf -p
For the list of supported values for
$ flex-installer -f firmware_ls1043ardb_sdboot.img -b
boot_ls1043ardb_lts_6.1.tgz -r ls-image-
main-ls1043ardb.tar.gz -d /dev/sdX
4.3 Download and deploy Layerscape LDP composite firmware in Windows
environment
To download and deploy the Layerscape LDP composite firmware in Windows
environment, perform the following steps:
Note: The following steps are verified on Windows 10.
1. Download the DD for Windows tool and install it. http://download.si-
linux.co.jp/dd_for_windows/DDWin_Ver0998.zip
2. Create a folder (for example, C:/Layerscape_LDP) and copy the composite
firmware you built in Windows Subsystem Linux (WSL).
3. Run the Windows cmd command and change the current work directory to the
created folder.
C:WindowsSystem32> cd C:/LDP C:LDP> dir
4. Run Windows command copy /b sd_pt_4k.img +
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
18 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
For more instructions, see Section 4.6.
4.4 Deploying Layerscape LDP images to a board using flex-installer
Perform the following steps to deploy the Layerscape LDP images to a board
using a removable storage device, which can be connected to a local Linux host
machine:
1. Connect the removable storage device to the Linux host machine. 2. Install
flex-installer to deploy Layerscape LDP images (this is a one-time activity):
$ git clone https://github.com/nxp-imx/meta-nxp-desktop.git -b
lf-6.1.1-1.0.0-langdale
$ cp meta-nxp-desktop/scripts/flex-installer_1.14.2110.lf
/usr/bin/flexinstaller $ sudo chmod a+x /usr/bin/flex-installer $ which flex-
installer
3. Execute the following flex-installer command to install Layerscape LDP:
$ flex-installer -i pf -d
4.5 Build Layerscape LDP with Yocto bitbake
This section introduces detailed steps to build Layerscape LDP with Yocto
bitbake. The Layerscape LDP build uses a Yocto-based meta layer to generate a
Proof of Concept (POC) image and it works together with Layerscape release
layer (meta-qoriq). It reuses the Linux BSP release framework to manage and
generate the U-Boot bootloader, Linux kernel image, and Layerscape root file
system in the image build. Note: The release version is managed by the
Layerscape Yocto SDK Manifest.
The Layerscape LDP build include main and desktop builds. The main build is
applicable for all the Layerscape SoCs and the desktop build is applicable for
LS1028ARDB only.
4.5.1 Host packages
A Yocto Project build requires some packages that must be installed for the
Yocto Project build.
To set up the Yocto Project build, navigate to the Yocto Project Quick Start
and check for the packages that must be installed for your build machine.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
19 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
The essential Yocto project host packages are given below:
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib
build-essential chrpath socat cpio python python3 python3-pip python3-pexpect
xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa
libsdl1.2-dev pylint3 xterm rsync curl
4.5.2 Download Yocto bitbake
The Yocto project uses OpenEmbedded (OE) to build hosts, and the project uses
bitbake to build a complete Linux image. The bitbake and OE components are
combined to form the reference build host, formerly known as poky. Repo is a
tool built on top of Git. To avail poky, and bitbake tools, download the poky
repository and bitbake tools using the repo tool.
$ repo init -u https://github.com/nxp-qoriq/yocto-sdk -b langdale -m
ls-6.1.1-1.0.0_distro.xml $ repo sync ./-setup-env -m
4.5.3 Build Layerscape LDP image using bitbake
To build custom images with different configurations instead of the default
settings, you can directly deploy the prebuilt Layerscape LDP composite
firmware and distro userland to storage device on target board by Yocto
bitbake.
To build the Layerscape LDP image, run the following command:
$ bitbkake ls-image-lite $ bitbake ls-image-main # (if machine=ls1028ardb,
should bitbake ls-image-desktop )
4.5.4 bitbake commands
The following table lists commands to build Layerscape LDP using bitbake.
Table 8.bitbake commands
S. Build Command No. object
Automated $ DISTRO=fsl-qoriq-distro MACHINE=
build for
$ bitbake
specific For example: board
$ DISTRO=fsl-qoriq-distro MACHINE=ls1028ardb source distro-setup-env
1
$ bitbake ls-image-main
Description
Automatically builds Kernel, and app components for the specific board.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
20 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 8.bitbake commands…continued
S. Build Command No. object
Description
bitbake ls-image-lite bitbake ls-image-tiny
Builds bitbake qoriq-atf 2 ATF and
U-Boot
Builds bitbake
specific For example:
component
bitbake dpdk
bitbake vpp
3
bitbake perf
bitbake ovs-dpdk
bitbake fmc
bitbake openssl
bitbake opencv
Automatically builds ATF image with dependent RCW and bootloader (UBoot or
UEFI).
To build single or multiple components, run the command:
bitbake
Builds bitbake
multiple For example:
app
bitbake packagegroup-fsl-tools-core
4 components
for
specific
subsystem
User can modify or add custom component in the corresponding files, for
example, meta-qoriq/recipesfsl/packagegroups/packag
egroup-fsl-tools-core.bb
Builds various distro userland
bitbake
Generates distro rootfs as per the specified distro type and scale.
Build lite image with the optimized config.
5
bitbake ls-image-main
Build main image for networking feature.
bitbake ls-image-desktop
Build desktop image for a specific board only.
bitbake fsl-image-mfgtool
Build yocto tiny image with limited tools.
Cleans bitbake -c clean <recipe_name/target_name> various images bitbake -c
cleanall <recipe_name/target_name>
6
Removes all the output files for a target.
Removes all the output files, shared state cache, and downloaded sources files
for a target.
bitbake -c cleansstate <recipe_name/target_name> Removes all the output files and shared state cache for a target.
4.5.5 Generate Layerscape LDP composite firmware
Layerscape LDP composite firmware consists of RCW/PBL, ATF, Bootloader (U-Boot
or UEFI), secure headers, Ethernet MAC/PHY firmware, dtb, kernel and tiny
initrd RFS. The composite firmware can be programmed at offset 0x0 in flash
device or at offset block# 8 in SD/eMMC card. Note: Arm CoT is supported only
for LX2160ARDB Rev2 and LX2162AQDS platforms.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
21 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Usage: $ bitbake qoriq-composite-firmware
4.5.6 Generate tarball In this tar ball, the boot image puts dtb, image,
secure-boot header, and the kernel module. boottgz writes in boot part2. Use
this command below to generate this tar ball in Yocto bitbake. Usage:
$ bitbake generate-boottgz
4.5.7 Build TF-A with RCW and U-Boot/UEFI
Layerscape platforms support TF-A (Trusted Firmware-A) which provides a
reference implementation of secure world software for Armv7-A and Armv8-A.
bitbake can automatically build the dependent RCW, U-Boot/UEFI, OPTEE, and CST
to generate TF-A binaries, bl2.pbl and fip.bin images for Layerscape
platforms. Use the commands below to build ATF with RCW and U-Boot/UEFI in
Yocto bitbake. Note: Arm CoT is supported only for LX2160ARDB Rev2 and
LX2162AQDS platforms. Usage:
Usage: bitbake qoriq-atf
Note: If you want to use different RCW instead of the default one, you can
reconfigure rcw_
4.5.8 Build Linux kernel with bitbake
Besides building Layerscape LDP kernel in standalone way (see Section 7.4), it
is easy to automatically build Layerscape LDP kernel with the bitbake command.
To build kernel, use the following command:
bitbake linux-qoriq
4.5.9 Build application components in Yocto bitbake The following commands are
some examples of building application components. Usage:
$ bitbake
Example:
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
22 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Usage:
bitbake dpdk bitbake pktgen-dpdkbitbake vppbitbake fmcbitbake restoolbitbake
tsntool bitbake opencv
System reboots and automatically boot to Layerscape Linux system with the
newly custom kernel.
4.5.10 Deploy new images after modifying the source code of NXP components
locally
1. Clean the old apps images using the command: $ bitbake
2. Modify component bitbake files in directory components/apps/<subsystem
/
according to demand. This step is optional.
3. Build the component and generate the compressed app component tarball. You can find the compiled images in build-desktop/tmp/deploy/images directory: $ bitbake-c compile -f
4.5.11 Build various userlands with custom packages
Layerscape LDP supports different types of distro userlands in various scales
to adapt a variety of use cases, you can select the appropriate distro
userland as per your need.
· Layerscape LDP Main Userland. · Layerscape LDP Lite Userland. · Layerscape
LDP Desktop Userland.
Layerscape LDP Main Userland
The Layerscape LDP default main userland consists of Linux distro-based main
packages and NXP’s packages, which can be generated by the following command:
$ bitbake ls-image-main
Layerscape LDP Lite Userland The Layerscape LDP lite userland consists of
Linux distro packages and a few NXP’s packages, which can be generated by the
following command:
$ bitbake ls-image-lite
Layerscape LDP Desktop Userland The Layerscape LDP desktop userland consists
of Linux distro GNOME desktop packages and some NXP’s packages for platforms
with GPU (for example, LS1028A and i.MX platform). The GOME desktop is
launched automatically by default, it needs to manually launch weston in case
weston is needed. Users can generate and deploy Linux distro desktop userland
by the following command:
$ bitbake ls-image-desktop
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
23 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.5.12 Add a custom machine in Yocto bitbake based on Layerscape LDP release
To add a custom machine, perform the steps given below: For example, LS1043AXX
based on the LS1043A SoC. 1. Run repo init and repo sync to fetch all Git
repositories of Layerscape LDP components for the first
time. 2. Add configs in yocto bitbake for new machine:
Add ls1043axx node in conf/machine/ls1043axx.conf.
4.5.13 Upgrade the existing Layerscape LDP distro with Yocto bitbake on host
To only update boot partition (with customized kernel and modules) on SD card
connected to host machine or target Arm board:
$ flex-installer -b boot_
To only update rootfs tarball on SD card connected to host machine or target
Arm board:
$ flex-installer -r ls-image-main-
To update both bootpartition and rootfs on SD card connected to host machine
or target Arm board:
$ flex-installer -b
4.6 Downloading a TinyDistro image to a Layerscape board using flex-installer
Perform the following steps to download the TinyDistro image to a Layerscape
board using flex-installer:
1. Connect the removable storage device to the Linux host machine. 2. Install
flex-installer to deploy TinyDistro images (this is a one-time activity):
$ git clone https://github.com/nxp-imx/meta-nxp-desktop.git -b
lf-6.1.1-1.0.0-langdale
$ cp meta-nxp-desktop/scripts/flex-installer_1.14.2110.lf
/usr/bin/flexinstaller $ sudo chmod a+x /usr/bin/flex-installer $ which flex-
installer
3. Execute the following flex-installer command to install TinyDistro image:
$ flex-installer -i pf -d
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
24 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
=> fsl_mc lazyapply dpl 0x80001000
7. Run one of the following commands as applicable: · => run sd_bootcmd (for
SD/eMMC boot)
· => run nor_bootcmd (for IFC-NOR boot)
· => run qspi_bootcmd (for QSPI-NOR boot)
· => run xspi_bootcmd (for FlexSPI-NOR boot)
8. Log in to TinyDistro as “root/root” and bring up a network interface:
$ ifgonfig -a # Dynamic IP address assignment: $ udhcpc -i
4.7 Quick start guides for Layerscape boards
This section describes:
· Quick start guide for FRWY-LS1012A · Quick start guide for LS1012ARDB ·
Quick start guide for TWR-LS1021A · Quick start guide for LS1028ARDB · Quick
start guide for LS1043ARDB · Quick start guide for FRWY-LS1046A · Quick start
guide for LS1046ARDB · Quick start guide for LS1088ARDB · Quick start guide
for LS2088ARDB · Quick start guide for LX2160ARDB Rev2 · Quick start guide for
LX2162AQDS
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
25 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.1 Quick start guide for FRWY-LS1012A
This section explains:
· Introduction · FRWY-LS1012A reference information · Program Layerscape LDP
composite firmware image
4.7.1.1 Introduction
The following sections describe the procedure to program the Layerscape LDP
composite firmware for FRWY-LS1012A. Also, this section explains the most
common use case procedure to download and deploy Layerscape LDP default images
to FRWY-LS1012A using flex-installer. For more information, see Section 4.2.
For more information on the different components of the board, and on how to
configure and boot the board, see Layerscape LS1012A Freeway Board Getting
Started Guide.
4.7.1.2 FRWY-LS1012A reference information
This section provides general information about FRWY-LS1012A which may come in
handy as a reference while completing steps for deploying Layerscape LDP that
follow.
4.7.1.2.1 Ethernet port map
The table below shows the mapping between the labels on the FRWY-LS1012A, port in U-Boot and port in Linux.
Table 9. Ethernet port mapping Label on board ETH1 ETH2
Port in U-Boot pfe_eth0 pfe_eth1
Port in Linux eth0 eth1
4.7.1.2.2 System memory map
In 64-bit U-Boot, there is a 1:1 mapping of physical address and effective
address. After system startup, the bootloader maps physical address and
effective address as shown in the following table:
Start Physical Address 0x00_0000_0000 0x00_0100_0000 0x00_1000_0000 0x00_1001_0000 0x00_4000_0000 0x00_8000_0000 0x40_0000_0000
End Physical Address 0x00_000F_FFFF 0x00_0FFF_FFFF 0x00_1000_FFFF 0x00_1001_FFFF 0x00_47FF_FFFF 0x00_FFFF_FFFF 0x47_FFFF_FFFF
Memory Type Secure boot ROM CCSR OCRAM1 OCRAM2 QSPI DRAM PCI Express1
Size 1 MB 240 MB 64 KB 64 KB 128 MB 2 GB 32G
4.7.1.2.3 Supported boot options
FRWY-LS1012A supports the following boot options:
· QSPI NOR Flash
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
26 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Note: QSPI NOR flash is the only boot option available on the FRWY-LS1012A.
The FRWY-LS1012A supports onboard Winbond W25M161AWEIT single/dual/quad-SPI
serial flash memory with 16 Mbit NOR and 1 Gbit NAND space in a single chip.
U-Boot 2020.04-21450-gbde1a7f (Sep 18 2020 – 21:55:22 +0800) SoC: LS1012AE
Rev2.0 (0x87040020) Clock Configuration:
CPU0(A53):1000 MHz Bus: 250 MHz DDR: 1000 MT/s Reset Configuration Word (RCW):
00000000: 0800000a 00000000 00000000 00000000 00000010: 33050000 c000000c
40000000 00001800 00000020: 00000000 00000000 00000000 000c47f2 00000030:
00000000 1082a120 00000096 00000000 DRAM: 958 MiB Using SERDES1 Protocol:
13061 (0x3305) MMC: FSL_SDHC: 0, FSL_SDHC: 1 Loading Environment from SPI
Flash… SF: Detected w25q16dw with page size 256 Bytes, erase size 4 KiB, total
2 MiB OK In: serial Out: serial Err: serial Model: FRWY-LS1012A Board Board:
FRWY-LS1012A Version: RevC Net: SF: Detected w25q16dw with page size 256
Bytes, erase size 4 KiB, total 2 MiB PFE class pe firmware for Linux PFE tmu
pe firmware for Linux PFE class pe firmware for u-boot PFE tmu pe firmware for
u-boot eth0: pfe_eth0, eth1: pfe_eth1
4.7.1.3 Program Layerscape LDP composite firmware image
To program Layerscape LDP composite firmware image in QSPI NOR flash on FRWY-
LS1012A: 1. Copy firmware on host machine to TFTP server.
cp
2. Under U-Boot, download the firmware to the reference board using one of
the following options: · Load firmware from the TFTP server => tftp $load_addr
firmware_ls1012afrwy_qspiboot.img
· Load firmware image from partition on mass storage device (SD, USB, or SATA)
=> load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1012afrwy_qspiboot.img
Or => load usb
Or => load scsi
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
27 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Note: Use the following command if the SD card is formatted/created using
Layerscape LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1012afrwy_qspiboot.img Use the following
command if the SD card is formatted/created on a Windows PC:
=> fatload
=> fatload mmc 0:2 $load_addr firmware_ls1012afrwy_qspiboot.img Use the
following command if the SD card is formatted/created on a Linux PC:
=> ext2load
=> ext2load mmc 0:2 $load_addr firmware_ls1012afrwy_qspiboot.img The
Layerscape LDP flex-installer command puts the images on the second partition,
so that 0:2 is used in the load command. If the SD card is formatted on
Windows PC or Linux PC for single partition only, then 0 should be used
instead of 0:2 in the fatload/ext2load command. 3. Program the firmware to
QSPI NOR flash.
=> sf probe 0:0 => sf erase 0 +$filesize && sf write $load_addr 0 $filesize
4. Reset and boot the board from QSPI NOR flash. The system will
automatically boot up TinyDistro (log in using root/root) or Layerscape LDP
distro (log in using user/user) available on the removable storage device.
=> reset
4.7.1.4 Downloading a TinyDistro image to a Layerscape board using flex-
installer
Perform the following steps to download the TinyDistro image to a Layerscape
board using flex-installer:
1. Connect the removable storage device to the Linux host machine. 2. Install
flex-installer to deploy TinyDistro images (this is a one-time activity):
$ git clone https://github.com/nxp-imx/meta-nxp-desktop.git -b
lf-6.1.1-1.0.0-langdale
$ cp meta-nxp-desktop/scripts/flex-installer_1.14.2110.lf
/usr/bin/flexinstaller $ sudo chmod a+x /usr/bin/flex-installer $ which flex-
installer
3. Execute the following flex-installer command to install TinyDistro image:
$ flex-installer -i pf -d
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
28 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
6. Power on the board and enter into U-Boot to allocate the Ethernet
interface:
=> pri bootcmd bootcmd=env exists mcinitcmd && mmcinfo; mmc read 0x80001000
0x6800 0x800;
env exists mcinitcmd && env exists secureboot && mmc read 0x806C0000 0x3600
0x20 && esbc_validate 0x806C0000;env exists mcinitcmd &&
fsl_mc lazyapply dpl 0x80001000;run distro_bootcmd;run sd_bootcmd;env exists
secureboot && esbc_halt; => mmc read 0x80001000 0x6800 0x800 => fsl_mc
lazyapply dpl 0x80001000
7. Run one of the following commands as applicable: · => run sd_bootcmd (for
SD/eMMC boot)
· => run nor_bootcmd (for IFC-NOR boot)
· => run qspi_bootcmd (for QSPI-NOR boot)
· => run xspi_bootcmd (for FlexSPI-NOR boot)
8. Log in to TinyDistro as “root/root” and bring up a network interface:
$ ifgonfig -a # Dynamic IP address assignment: $ udhcpc -i
4.7.2 Quick start guide for LS1012ARDB
This section explains:
· Introduction · LS1012ARDB reference information · Program Layerscape LDP
composite firmware image
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
29 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.2.1 Introduction
The following sections describe the procedure to program Layerscape LDP
composite firmware for LS1012ARDB. Also, this section explains the most common
use case procedure to download and deploy Layerscape LDP default images to
LS1012ARDB using flex-installer. For more information, see Section 4.2.
For more information on the different components of the board, and on how to
configure and boot the board, see LS1012A Reference Design Board Getting
Started Guide.
4.7.2.2 LS1012ARDB reference information
This section provides general information about LS1012ARDB which may come in
handy as a reference while completing steps for deploying Layerscape LDP that
follow.
4.7.2.2.1 Ethernet port map The table below shows how the Ethernet ports can be mapped to Linux, U-Boot, and labels on the 1U box.
Label on 1U box
ETH_1 ETH_2
Port name in U-Boot
pfe_eth0 pfe_eth1
Port name in Linux based userland
eth0
eth1
Comments
1G SGMII 1G RGMII
The following figures show the LS1012ARDB chassis front and rear views:
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
30 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.2.2.2 System memory map
Start physical address 0x00_0000_0000 0x00_0100_0000 0x00_1000_0000 0x00_1001_0000 0x00_4000_0000 0x00_8000_0000 0x08_8000_0000 0x40_0000_0000
End physical address 0x00_000F_FFFF 0x00_0FFF_FFFF 0x00_1000_FFFF 0x00_1001_FFFF 0x00_5FFF_FFFF 0x00_FFFF_FFFF 0x0F_FFFF_FFFF 0x47_FFFF_FFFF
Memory type Secure Boot ROM CCSR OCRAM1 OCRAM2 QSPI DRAM DRAM2 PCI Express1
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
Size 1 MB 240 MB 64 KB 64 KB 512 MB 2 GB 30G 32G
© 2023 NXP B.V. All rights reserved.
31 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.2.2.3 Supported boot options LS1012ARDB supports the following boot options: · QSPI NOR flash
4.7.2.2.4 Onboard switch options
The RDB has user selectable switches for evaluating different boot options for the LS1012A device as given in the table below (‘0’ is OFF, ‘1’ is ON).
Table 10.Booting from QSPI NOR flash bank1
1
2
3
4
5
6
7
8
SW1
1
0
1
0
0
1
1
0
SW2
0
0
0
0
0
0
0
0
Table 11.Booting from QSPI NOR flash bank2
1
2
3
4
5
6
7
8
SW1
1
0
1
0
0
1
1
0
SW2
0
0
0
0
0
0
1
0
4.7.2.2.5 Flash bank usage
The LS1012ARDB supports onboard Spansion S25FS512SAGMFI011 quad-SPI serial
flash memory with 64 MB space. There are two virtual banks on the RDB that can
be selected through DIP switch settings (see Table 1 and Table 2 above).
To protect the default U-Boot in QSPI NOR flash bank1, it is a convention
employed by NXP to deploy work images into QSPI NOR flash bank2, and then
switch to QSPI NOR flash bank2 for testing. Switching to flash2 can be done in
software using I2C commands and effectively swaps QSPI NOR flash bank1 with
QSPI NOR flash bank2. This protects QSPI NOR flash bank1 and keeps the board
bootable under all circumstances.
U-Boot 2020.04-21450-gbde1a7f (Sep 18 2020 – 21:58:27 +0800)
SoC: LS1012AE Rev2.0 (0x87040020)
Clock Configuration:
CPU0(A53):1000 MHz
Bus:
250 MHz DDR:
1000 MT/s
Reset Configuration Word (RCW):
00000000: 0800000a 00000000 00000000 00000000
00000010: 35080000 c000000c 40000000 00001800
00000020: 00000000 00000000 00000000 00014571
00000030: 00000000 18c2a120 00000096 00000000
DRAM: 958 MiB
Using SERDES1 Protocol: 13576 (0x3508)
MMC: FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from SPI Flash… SF: Detected s25fs512s with page size 256
Bytes, erase size 256 KiB, total 64 MiB
OK
In: serial
Out: serial
Err: serial
Model: LS1012A RDB Board
Board: LS1012ARDB Version: RevE, boot from QSPI: bank2
Net: SF: Detected s25fs512s with page size 256 Bytes, erase size 256 KiB,
total 64 MiB
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
32 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
PFE class pe firmware for Linux PFE tmu pe firmware for Linux PFE class pe firmware for u-boot PFE tmu pe firmware for u-boot eth0: pfe_eth0, eth1: pfe_eth1 =>
How to boot from QSPI NOR flash bank2
Note:
The I2C IO-expander can be used to override the onboard DIP switch settings.
1. To check which bank booted, refer to the U-Boot log. You will see either
“QSPI: bank 1” or “QSPI: bank2″ printed in the log. For example: Board:
LS1012ARDB Version: unknown, boot from QSPI: bank1
2. i2C command to switch from QSPI NOR flash bank1 to QSPI NOR flash bank2 ”
i2c mw 0x24 0x7 0xfc; i2c mw 0x24 0x3 0xf5 ”
3. Program QSPI flash as per flash layout 4. To boot from QSPI NOR flash
bank2 give “reset” command. 5. To move back to QSPI NOR flash bank1 from QSPI
NOR flash bank2, power on/off the board or use “i2c
mw 0x24 0x3 0xf4 ” and then enter “reset” command.
4.7.2.3 Program Layerscape LDP composite firmware image
To program Layerscape LDP composite firmware image in QSPI NOR flash on
LS1012ARDB: 1. Copy firmware on host machine to TFTP server.
cp
2. Reset the board to boot from QSPI NOR flash 1. Check U-Boot log for
message. Board: LS1012ARDB Version: unknown, boot from QSPI: bank1
3. Switch from QSPI NOR flash 1 to flash 2: => i2c mw 0x24 0x7 0xfc => i2c mw
0x24 0x3 0xf5
4. Under U-Boot, download the firmware to the reference board using one of
the following options: · Load firmware from the TFTP server => tftp $load_addr
firmware_ls1012ardb_qspiboot.img
· Load firmware image from partition on mass storage device (SD, USB, or SATA)
=> load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1012ardb_qspiboot.img
Or => load usb
Or => load scsi
Note:
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
33 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Use the following command if the SD card is formatted/created using Layerscape
LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1012ardb_qspiboot.img Use the following
command if the SD card is formatted/created on a Windows PC:
=> fatload
=> fatload mmc 0:2 $load_addr firmware_ls1012ardb_qspiboot.img Use the
following command if the SD card is formatted/created on a Linux PC:
=> ext2load
=> ext2load mmc 0:2 $load_addr firmware_ls1012ardb_qspiboot.img Also note that
Layerscape LDP flex-installer command puts the images on the second partition,
so 0:2 is used in the load command. If the SD card is formatted on Windows PC
or Linux PC for single partition only, then 0 should be used instead of 0:2 in
the fatload/ext2load command. 5. Program the firmware to QSPI NOR flash 2.
=> sf probe 0:0 => sf erase 0 +$filesize && sf write $load_addr 0 $filesize
6. Reset and boot the board from QSPI NOR flash 2. The system will
automatically boot up TinyDistro (log in using root/root) or Layerscape LDP
distro (log in using user/user) available on the removable storage device.
=> reset
4.7.3 Quick start guide for TWR-LS1021A
This section explains: · Introduction · TWR-LS1021A reference information ·
Program Layerscape LDP composite firmware image
4.7.3.1 Introduction
The following sections describe the procedure to program Layerscape LDP
composite firmware for TWRLS1021A. Also, this section explains the most common
use case procedure to download and deploy Layerscape LDP default images to to
TWR-LS1021A using flex-installer. For more information, see Section 4.2. For
more information on the different components of the board, and on how to
configure and boot the board, see TWR-LS1021A Reference Design Board Getting
Started Guide.
4.7.3.2 TWR-LS1021A reference information
This section provides general information about TWR-LS1021A which may come in
handy as a reference while completing steps for deploying Layerscape LDP that
follow.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
34 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.3.2.1 Port map The table below shows the mapping between U-Boot port name and Linux TinyDistro port name.
Port name in U-Boot eTSEC1 eTSEC2 eTSEC3
Port name in TinyDistro eth0 eth1 eth2
4.7.3.2.2 System memory map
Start Physical Address 0x0100_0000
End Physical Address 0x0FFF_FFFF
0x1000_0000
0x1000_FFFF
0x1001_0000
0x1001_FFFF
0x2000_0000
0x20FF_FFFF
0x4000_0000
0x5FFF_FFFF
0x6000_0000
0x67FF_FFFF
0x7FB0_0000
0x7FB0_0FFF
0x8000_0000
0xFFFF_FFFF
Memory Type CCSR OCRAM0 OCRAM1 DCSR QSPI NOR Flash Board CPLD DDR
Size 240 MB 64 KB 64 KB 16 MB 512 MB 128 MB 4 KB 2 GB
4.7.3.2.3 Supported boot options
TWR-LS1021A supports the following boot options: · NOR · SD
4.7.3.2.4 Onboard switch options
The RDB has user selectable switches for evaluating different boot options for
the TWR-LS1021A device as given in the table below (‘0’ is OFF, ‘1’ is ON).
Boot source NOR bank 0 (default) NOR bank 1 SD card
SW2[1:8] 10001111 10001111 00101111
SW3[1:8] 01100101 01101101 01100101
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
35 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Note that changing the boot device configuration from the default setting may
require additional changes in the RCW or in other code images. For information
on RCW naming convention for TWR-LS1021A, see https:// github.com/nxp-
qoriq/rcw/blob/master/ls1021atwr/README.
4.7.3.2.5 Flash Bank usage
TWR-LS1021A provides a special feature that allows a single NOR flash to be
divided into multiple parts called “banks”. This is done by board-level logic
that modifies address signals. As there is only one NOR flash physically, the
banks are sometimes called “virtual” banks. The benefit of this feature is
that it allows more than one set of images to be independently deployed to one
NOR flash. This is very helpful during development because the U-Boot image in
one bank can be used to program an image set into a different bank. If the new
images are flawed, the old images are still functional. The NOR flash on TWR-
LS1021A is divided into two banks. The banks are called bank 0 and bank 1. To
determine the current bank, refer to the example U-Boot log given below:
U-Boot 2020.04-gbde1a7f952 (Sep 27 2020 – 17:36:54 +0800) CPU: Freescale
LayerScape LS1021E, Version: 2.0, (0x87081120) Clock Configuration:
CPU0(ARMV7):1200 MHz, Bus:300 MHz, DDR:800 MHz (1600 MT/s data rate), Reset
Configuration Word (RCW): 00000000: 0608000c 00000000 00000000 00000000
00000010: 30000000 00007900 e0025a00 21046000 00000020: 00000000 00000000
00000000 18000000 00000030: 00080000 481b7340 00000000 00000000 Model: LS1021A
TWR Board Board: LS1021ATWR CPLD: V3.2 PCBA: V2.0 VBank: 1 DRAM: 1 GiB Using
SERDES1 Protocol: 48 (0x30) Firmware ‘Microcode version 0.0.1 for LS1021a
r1.0’ for 1021 V1.0 QE: uploading microcode ‘Microcode for LS1021a r1.0’
version 0.0.1 Flash: 128 MiB MMC: FSL_SDHC: 0 Loading Environment from Flash…
OK EEPROM: NXID v16777216 In: serial Out: serial Err: serial SEC0: RNG
instantiated Net: eth0: ethernet@2d10000, eth1: ethernet@2d50000, eth2:
ethernet@2d90000 =>
4.7.3.2.6 Boot option switching Boot option switching can be performed in
U-Boot using the following commands: · Switch to NOR bank 0 (default):
=>boot_bank 0
· Switch to NOR bank 1: =>boot_bank 1
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
36 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.3.3 Program Layerscape LDP composite firmware image
This topic explains steps to program NOR firmware image to IFC NOR flash on
TWR-LS1021A and SD firmware image to SD card on TWR-LS1021A.
To program Layerscape LDP composite NOR firmware image to IFC NOR flash on
TWR-LS1021A, perform the following steps:
1. Copy firmware on host machine to TFTP server. $ cp
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
37 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
The Layerscape LDP flex-installer command puts the images on the second
partition, so 0:2 is used in the load command. If the SD card is formatted on
Windows PC or Linux PC for single partition only, then 0 should be used
instead of 0:2 in the fatload/ext2load command. 4. To program the composite
firmware into IFC NOR flash, perform the following steps: · To program
alternate bank:
=> protect off 64000000 +$filesize && erase 64000000 +$filesize && cp.b
$load_addr 64000000 $filesize
· To program current bank: => protect off 60000000 +$filesize && erase
60000000 +$filesize && cp.b $load_addr 60000000 $filesize
5. Reset and boot the board from IFC NOR flash. The system will automatically
boot up TinyDistro (log in using root/root) or Layerscape LDP distro (log in
using user/user) available on the removable storage device. · To boot from NOR
flash bank 1. => boot_bank 1
· To boot from NOR flash bank 0. => boot_bank 0
To program Layerscape LDP composite SD firmware image to SD card on TWR-
LS1021A, perform the following steps: 1. Copy firmware on host machine to TFTP
server.
cp
2. Reboot the board from NOR bank 0 and stop autoboot to enter U-Boot prompt.
3. Under U-Boot, download the firmware to the reference board using one of the
following options:
· Load firmware from the TFTP server => tftp $load_addr
firmware_ls1021atwr_sdboot.img
· Load firmware image from partition on mass storage device (SD, USB, or SATA)
=> load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1021atwr_sdboot.img
or => load usb
or => load scsi
Note: Use the following command if the SD card is formatted/created using
Layerscape LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1021atwr_sdboot.img
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
38 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Use the following command if the SD card is formatted/created on a Windows PC:
=> fatload
Use the following command if the SD card is formatted/created on a Linux PC:
=> ext2load
Also note that Layerscape LDP flex-installer command puts the images on the
second partition, so 0:2 is used in the load command. If the SD card is
formatted on Windows PC or Linux PC for single partition only, then 0 should
be used instead of 0:2 in the fatload/ext2load command. 4. Write the firmware
to SD card.
=> mmc dev 0; mmc write $load_addr 8 1f000
5. Make sure the DIP switch settings on the board are for SD card. 6. Reset
and boot the board from SD card. The system will automatically boot up
TinyDistro (log in using root/
root) or Layerscape LDP distro (log in using user/user) available on the
removable storage device.
4.7.4 Quick start guide for LS1028ARDB
This section explains:
· Introduction · LS1028ARDB reference information · Program Layerscape LDP
composite firmware image
4.7.4.1 Introduction
The following sections describe the procedure to program Layerscape LDP
composite firmware for LS1028ARDB. Also, this section explains the most common
use case procedure to download and deploy Layerscape LDP default images to
LS1028ARDB using flex-installer. For more information, see Section 4.2.
For more information on the different components of the board, and on how to
configure and boot the board, see LS1028A Reference Design Board Getting
Started Guide.
4.7.4.2 LS1028ARDB reference information
This section provides general information about LS1028ARDB which may come in
handy as a reference while completing steps for deploying Layerscape LDP
images that are mentioned in sections that follow.
4.7.4.2.1 Ethernet port map
Port name in chassis Port name in U-Boot
1G MAC1
enetc-0
Port name in Yocto based TinyDistro
eno0
1G SWP0
swp0
swp0
Port name in Linux based userland eno0
swp0
Description
ENETC PF 0 connected over SGMII on SoC lane A Ethernet switch port 0
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
39 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
1G SWP1 1G SWP2 1G SWP3
swp1 swp2 swp3
swp1 swp2 swp3
4.7.4.2.2 System memory map
Table 12.System memory map
Start address
End address
0x0000_0000_0000 0x0000_000F_FFFF
0x0000_0010_0000 0x0000_00FF_FFFF
0x0000_0100_0000 0x0000_0FFF_FFFF
0x0000_1000_0000 0x0000_10FF_FFFF
0x0000_1100_0000 0x0000_11FF_FFFF
0x0000_1200_0000 0x0000_13FF_FFFF
0x0000_1400_0000 0x0000_17FF_FFFF
0x0000_1800_0000 0x0000_181F_FFFF
0x0000_1820_0000 0x0000_182F_FFFF
0x0000_1830_0000 0x0000_18FF_FFFF
0x0000_1900_0000 0x0000_19FF_FFFF
0x0000_1A00_0000 0x0000_1BFF_FFFF
0x0000_1C00_0000 0x0000_1CFF_FFFF
0x0000_1D00_0000 0x0000_1FFF_FFFF
0x0000_2000_0000 0x0000_2FFF_FFFF
Size 1 MB 15 MB 240 MB 16 MB 16 MB 32 MB 64 MB 2 MB 1 MB 13 MB 16 MB 32 MB 16 MB 48 MB 256 MB
0x0000_3000_0000 0x0000_4000_0000 0x0000_6000_0000 0x0000_8000_0000
0x0000_3FFF_FFFF 0x0000_5FFF_FFFF 0x0000_7FFF_FFFF 0x0000_9FFF_FFFF
256 MB 512 MB 512 MB 512 MB
0x0000_A000_0000 0x0000_C000_0000 0x0000_E000_0000 0x0001_0000_0000 0x0001_F000_0000
0x0000_BFFF_FFFF 0x0000_DFFF_FFFF 0x0000_FFFF_FFFF 0x0001_EFFF_FFFF 0x0001_F07F_FFFF
512 MB 512 MB 512 MB 3.75 GB 8 MB
0x0001_F080_0000 0x0001_F0A0_0000
0x0001_F09F_FFFF 0x0001_F7FF_FFFF
2 MB 118 MB
swp1 swp2 swp3
Switch front panel ports are all connected over QSGMII on SoC lane B
Ethernet switch port 1
Ethernet switch port 2
Ethernet switch port 3
Allocation CCSR – Boot ROM Reserved CCSR Reserved Reserved Reserved Reserved
OCRAM Reserved Reserved CoreSight STM Reserved Reserved Reserved FlexSPI
Region #1
Reserved Reserved Reserved GPP DRAM Region #1(0-2 GB)
Comment 64 KB
128 KB 16 MB
More FlexSPI space below
Reserved ECAM config space
Register block space Reserved
Embedded RC +EPECAM (256 MB)
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
40 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 12.System memory map…continued
Start address
End address
0x0001_F800_0000 0x0001_F83F_FFFF
0x0001_F840_0000 0x0001_FBFF_FFFF
0x0001_FC00_0000 0x0001_FC3F_FFFF
0x0001_FC40_0000 0x0001_FFFF_FFFF
0x0002_0000_0000 0x0003_FFFF_FFFF
0x0004_0000_0000 0x0004_0FFF_FFFF
0x0004_1000_0000 0x0004_FFFF_FFFF
Size 4 MB 60 MB 4 MB 60 MB 8 GB 256 MB 3.75 GB
0x0005_0000_0000 0x0006_0000_0000 0x0007_0000_0000 0x0007_4000_0000 0x0008_0000_0000 0x0008_2000_0000 0x000C_0000_0000 0x0010_0000_0000 0x0020_0000_0000 0x0020_8000_0000 0x0040_0000_0000 0x0060_0000_0000 0x0080_0000_0000
0x0005_FFFF_FFFF 0x0006_FFFF_FFFF 0x0007_3FFF_FFFF 0x0007_FFFF_FFFF 0x0008_1FFF_FFFF 0x000B_FFFF_FFFF 0x000F_FFFF_FFFF 0x001F_FFFF_FFFF 0x0020_7FFF_FFFF 0x003F_FFFF_FFFF 0x005F_FFFF_FFFF 0x007F_FFFF_FFFF 0x0087_FFFF_FFFF
4 GB 4 GB 1 GB 3 GB 512 MB 15.5 GB 16 GB 64 GB 2 GB 126 GB 128 GB 128 GB 32 GB
0x0088_0000_0000 0x008F_FFFF_FFFF 32 GB
Allocation
Comment
Reserved
Reserved
Reserved
Reserved
Reserved
SPI Hole
FlexSPI Region #2 (256 MB – 4 GB)
3.75 GB
Reserved
Reserved
DCSR
Reserved
Reserved
Reserved
Reserved
Reserved
Reserved
GPP DRAM Region #2
Reserved
GPP DRAM Region #3
PCI Express 1
High-speed I/O (0x0080_0000_0000 0x00FF_FFFF_FFFF)
PCI Express 2
4.7.4.2.3 Supported boot options
LS1028ARDB supports the following boot options:
· FlexSPI NOR flash (referred to as “FSPI” or “FSPI flash” in the following
sections). CS refers to Chip Select. · eMMC · SD card (SDHC1)
4.7.4.2.4 Onboard switch options
The LS1028ARDB board supports user selectable switches for evaluating
different boot options for the LS1028A device as given in the table below (‘0’
is OFF, ‘1’ is ON).
Boot source FSPI NOR (default) SD Card (SDHC1) eMMC
LLDPUG
User guide
SW2[1:8] 1111_1000 1000_1000 1001_1000
SW3[1:8] 1111_0000 1111_0000 1111_0000
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
SW5[1:8] 0011_1001 0011_1001 0011_1001
© 2023 NXP B.V. All rights reserved.
41 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
In addition to the above switch settings, make sure the following jumper settings are correct.
Table 13.LS1028ARDB jumper settings
Jumper
Type
Name/function
J6
1×2-pin connector TA_BB_EN enable
J7
1×2-pin connector VBAT_EN
J27
1×2-pin connector PROG_MTR voltage control (for
NXP use only)
J28
1×2-pin connector TA_PROG_SFP voltage control
(for NXP use only)
Description
Open: TA_BB_TMP_DETECT_B pin is High (default value) Shorted:
TA_BB_TMP_DETECT_B pin is Low
Open: Disable battery backup for TA_BB_VDD (default value) Shorted: Enable
battery backup for TABB VDD
Open: PROG_MTR pin is powered off (default value) Shorted: PROG_MTR pin is
powered by OVDD (1.8 V)
Open: TA_PROG_SFP pin is powered off (default value) Shorted: TA_PROG_SFP pin
is powered by OVDD (1.8 V)
4.7.4.2.5 FlexSPI NOR Flash Chip-select
FlexSPI NOR flash is a simple and convenient destination for deploying images
so it is frequently used.
The benefit of this feature is that it allows more than one set of images to
be independently deployed to the one NOR flash. This is very helpful during
development because you can use the U-Boot image in one chipselect to program
an image set into a different chip-select. If the new images are flawed, the
old images are still functional to let you deploy corrected images.
The logic on the board usually allows the NOR flash to be accessed from
different CS (chip select) option. Each CS is connected to dedicated flash
devices. U-Boot prints which CS is loaded from. The output looks like
following.
=> NOTICE: Fixed DDR on board
NOTICE: 4 GB DDR4, 32-bit, CL=11, ECC on
NOTICE: BL2: v1.5(release):LSDK-20.12-Internal
NOTICE: BL2: Built : 07:04:31, Nov 14 2020
NOTICE: BL2: Booting BL31
NOTICE: BL31: v1.5(release):LSDK-20.12-Internal
NOTICE: BL31: Built : 07:04:34, Nov 14 2020
NOTICE: Welcome to LS1028 BL31 Phase
U-Boot 2020.04-gc7ec91b1f4 (Nov 14 2020 – 07:04:19 +0800)
SoC: LS1028AE Rev1.0 (0x870b0010)
Clock Configuration:
CPU0(A72):1500 MHz CPU1(A72):1500 MHz
Bus:
400 MHz DDR:
1600 MT/s
Reset Configuration Word (RCW):
00000000: 3c004010 00000030 00000000 00000000
00000010: 00000000 018f0000 0030c000 00000000
00000020: 020031a0 00002580 00000000 00003296
00000030: 00000000 00000010 00000000 00000000
00000040: 00000000 00000000 00000000 00000000
00000050: 00000000 00000000 00000000 00000000
00000060: 00000000 00000000 200e705a 00000000
00000070: bb580000 00000000
Model: NXP Layerscape 1028a RDB Board
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
42 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Board: LS1028AE Rev1.0-RDB, Version: C, boot from NOR FPGA: v5 (RDB) SERDES1
Reference : Clock1 = 100.00MHz Clock2 = 100.00MHz DRAM: 3.9 GiB DDR 3.9 GiB
(DDR4, 32-bit, CL=11, ECC on) Using SERDES1 Protocol: 47960 (0xbb58) PCIe1:
pcie@3400000 Root Complex: no link PCIe2: pcie@3500000 Root Complex: no link
WDT: Started with servicing (60s timeout) MMC: FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from SPI Flash… SF: Detected mt35xu02g with page size 256
Bytes, erase size 128 KiB, total 256 MiB OK EEPROM: NXID v1 In: serial Out:
serial Err: serial Net: eth0: enetc-0, eth2: enetc-2, eth4: swp0, eth5: swp1,
eth6: swp2, eth7:
swp3 =>
Boot option switching can be performed in U-Boot using the following
statements.
· Switch to FlexSPI NOR flash (default):
=>qixis_reset
· Switch to SD:
=>qixis_reset sd
· Switch to eMMC:
=>qixis_reset emmc
4.7.4.3 Program Layerscape LDP composite firmware image
This topic explains steps to program FlexSPI NOR firmware image to FlexSPI NOR
flash on LS1028ARDB and SD/eMMC firmware image to SD/eMMC card on LS1028ARDB.
To program Layerscape LDP composite firmware image to FlexSPI NOR flash on
LS1028ARDB: 1. Copy firmware on host machine to TFTP server.
$ cp
2. Reboot the board from FlexSPI NOR flash and stop autoboot to enter U-Boot
prompt. 3. Under U-Boot, download the firmware to the reference board using
one of the following options:
· Load firmware from the TFTP server => tftp $load_addr
firmware_ls1028ardb_xspiboot.img
· Load firmware image from partition on mass storage device (SD, USB, or SATA)
=> load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1028ardb_xspiboot.img
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
43 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Or
=> load usb
Or
=> load scsi
Note: Use the following command if the SD card is formatted/created using
Layerscape LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1028ardb_xspiboot.img Use the following
command if the SD card is formatted/created on a Windows PC:
=> fatload
=> fatload mmc 0:2 $load_addr firmware_ls1028ardb_xspiboot.img Use the
following command if the SD card is formatted/created on a Linux PC:
=> ext2load
=> ext2load mmc 0:2 $load_addr firmware_ls1028ardb_xspiboot.img Also note that
Layerscape LDP flex-installer command puts the images on the second partition,
so 0:2 is used in the load command. If the SD card is formatted on Windows PC
or Linux PC for single partition only, then 0 should be used instead of 0:2 in
the fatload/ext2load command. 4. Program the firmware to FlexSPI NOR flash.
=> sf probe 0:0 => sf erase 0 +$filesize && sf write $load_addr 0 $filesize
5. Reset and boot the board from FlexSPI NOR flash. The system will
automatically boot up TinyDistro (log in using root/root) or Layerscape LDP
distro (log in using user/user) available on the removable storage device.
=> qixis_reset
To program Layerscape LDP composite firmware image to SD/eMMC on LS1028ARDB:
1. Copy firmware on host machine to TFTP server. · For SD boot: $ cp
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
44 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
For SD boot: => tftp $load_addr firmware_ls1028ardb_sdboot.img
For eMMC boot: => tftp $load_addr firmware_ls1028ardb_emmcboot.img
· Load firmware image from partition on mass storage device (SD, USB, or SATA)
For SD boot: => load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1028ardb_sdboot.img
or => load usb
or => load scsi
For eMMC boot: => load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1028ardb_emmcboot.img
or => load usb
or => load scsi
Note: Use the following command if the SD card is formatted/created using
Layerscape LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1028ardb_emmcboot.img Use the following
command if the SD card is formatted/created on a Windows PC:
=> fatload
=> fatload mmc 0:2 $load_addr firmware_ls1028ardb_emmcboot.img Use the
following command if the SD card is formatted/created on a Linux PC:
=> ext2load
=> ext2load mmc 0:2 $load_addr firmware_ls1028ardb_emmcboot.img
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
45 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Also note that Layerscape LDP flex-installer command puts the images on the
second partition, so 0:2 is used in the load command. If the SD card is
formatted on Windows PC or Linux PC for single partition only, then 0 should
be used instead of 0:2 in the fatload/ext2load command. 4. Program the
firmware to SD card. => mmc dev 0;mmc write $load_addr 8 1fff8
5. Program the firmware to eMMC card. => mmc dev 1;mmc write $load_addr 8
1fff8
6. Reset and boot the board from SD/eMMC card. The system will automatically
boot up TinyDistro (log in using root/root) or Layerscape LDP distro (log in
using user/user) available on the removable storage device. · For SD boot: =>
qixis_reset sd
· For eMMC boot: => qixis_reset emmc
4.7.5 Quick start guide for LS1043ARDB
This section explains: · Introduction · LS1043ARDB reference information ·
LS1043ARDB recovery information · Program Layerscape LDP composite firmware
image · Frame Manager Configuration (FMC) tool
4.7.5.1 Introduction
The following sections describe the procedure to program Layerscape LDP
composite firmware for LS1043ARDB. Also, this section explains the most common
use case procedure to download and deploy Layerscape LDP default images to
LS1043ARDB using flex-installer. For more information, see Section 4.2. For
more information on the different components of the board, and on how to
configure and boot the board, see LS1043A Reference Design Board Getting
Started Guide. For a list of brief how-tos to help you modify/update
individual Layerscape LDP components such as, TF-A binaries, Linux kernel,
DPAA1 FMan microcode on LS1043ARDB when booting the board from a specific boot
source, such as NOR, NAND, or SD, see NXP community.
4.7.5.2 LS1043ARDB reference information
This section provides general information about LS1043ARDB which may come in
handy as a reference while completing steps for deploying Layerscape LDP that
follow.
4.7.5.2.1 Port map
The port name in Linux TinyDistro corresponding to each of the six ports on
the reference board chassis is given in the table below.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
46 / 1056
NXP Semiconductors
Port name on chassis QSGMII.P0 QSGMII.P1 QSGMII.P2 QSGMII.P3 RGMII1 RGMII2 10G Copper
Port name in U-Boot FM1@DTSEC1 FM1@DTSEC2 FM1@DTSEC3 FM1@DTSEC4 FM1@DTSEC5 FM1@DTSEC6 FM1@TGEC1
LLDPUG
Layerscape Linux Distribution POC User Guide
Port name in Tinydistro eth0 eth1 eth2 eth3 eth4 eth5 eth6
Port name in Linux fm1-mac1 fm1-mac2 fm1-mac5 fm1-mac6 fm1-mac3 fm1-mac4 fm1-mac9
4.7.5.2.2 System memory map
Start Physical Address 0x00_0000_0000 0x00_0100_0000 0x00_1000_0000 0x00_1001_0000 0x00_2000_0000 0x00_6000_0000 0x00_7E80_0000 0x00_7FB0_0000 0x00_8000_0000
End Physical Address 0x00_000F_FFFF 0x00_0FFF_FFFF 0x00_1000_FFFF 0x00_1001_FFFF 0x00_20FF_FFFF 0x00_67FF_FFFF 0x00_7E80_FFFF 0x00_7FB0_0FFF 0x00_FFFF_FFFF
Memory Type Secure Boot ROM CCSRBAR OCRAM0 OCRAM1 DCSR IFC – NOR Flash IFC – NAND Flash IFC – FPGA DRAM1
Size 1 MB 240 MB 64 KB 64 KB 16 MB 128 MB 64 KB 4 KB 2 GB
4.7.5.2.3 Supported boot options
LS1043ARDB supports the following boot options: · NOR · NAND · SD
4.7.5.2.4 Onboard switch options
The RDB has user selectable switches for evaluating different boot options for
the LS1043A device as given in the table below (‘0’ is OFF, ‘1’ is ON).
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
47 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Boot source NOR bank 0 (default) NOR bank 4 SD card NAND
SW3[1:8] 10110011 10110011 10110011 10110011
SW4[1:8] 00010010 00010010 00100000 10000010
SW5[1:8] 10100010 10100110 00100010 10100110
4.7.5.2.5 NOR Flash (Virtual) Banks
LS1043ARDB provides a special feature that allows a single NOR flash to be
divided into multiple parts called “banks”. This is done by board-level logic
that modifies address signals. As there is only one NOR flash physically, the
banks are sometimes called “virtual” banks. The benefit of this feature is
that it allows more than one set of images to be independently deployed to one
NOR flash. This is very helpful during development because the U-Boot image in
one bank can be used to program an image set into a different bank. If the new
images are flawed, the old images are still functional. The logic on the board
usually allows the NOR flash to be divided into up to 8 banks, but the NOR
flash on LS1043ARDB is divided into two halves. The halves are called bank 0
and bank 4. Bank switching can be done in in software using cpld commands. To
determine the current bank, refer to the example U-Boot log given below:
U-Boot 2020.04-gc7ec91b1f4 (Nov 12 2020 – 06:46:07 +0800) SoC: LS1043AE Rev1.1
(0x87920011) Clock Configuration:
CPU0(A53):1600 MHz CPU1(A53):1600 MHz CPU2(A53):1600 MHz CPU3(A53):1600 MHz
Bus: 400 MHz DDR: 1600 MT/s FMAN: 500 MHz Reset Configuration Word (RCW):
00000000: 08100010 0a000000 00000000 00000000 00000010: 14550002 80004012
e0025000 c1002000 00000020: 00000000 00000000 00000000 00038800 00000030:
00000000 00001101 00000096 00000001 Model: LS1043A RDB Board Board:
LS1043ARDB, boot from vBank 4 CPLD: V2.0 PCBA: V6.0 SERDES Reference Clocks:
SD1_CLK1 = 156.25MHZ, SD1_CLK2 = 100.00MHZ DRAM: 1.9 GiB (DDR4, 32-bit, CL=11,
ECC off) Using SERDES1 Protocol: 5205 (0x1455) SEC0: RNG instantiated Firmware
‘Microcode version 0.0.1 for LS1021a r1.0’ for 1021 V1.0 QE: uploading
microcode ‘Microcode for LS1021a r1.0’ version 0.0.1 Flash: 128 MiB NAND: 512
MiB MMC: FSL_SDHC: 0 Loading Environment from Flash… OK EEPROM: NXID v1 In:
serial Out: serial Err: serial Net: Fman1: Uploading microcode version
106.4.18 PCIe1: pcie@3400000 disabled PCIe2: pcie@3500000 Root Complex: no
link PCIe3: pcie@3600000 Root Complex: x1 gen1 e1000: 00:15:17:5c:63:d5
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
48 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
FM1@DTSEC1, FM1@DTSEC2, FM1@DTSEC3, FM1@DTSEC4, FM1@DTSEC5, FM1@DTSEC6, FM1@TGEC1, e1000#0 [PRIME] Warning: e1000#0 MAC addresses don’t match: Address in SROM is 00:15:17:5c:63:d5 Address in environment is 00:e0:0c:00:22:07 Warning: e1000#0 failed to set MAC address => =>
4.7.5.2.6 Boot option switching Boot switching can be performed in U-Boot
using the following commands: · Switch to NOR bank 0 (default):
=>cpld reset · Switch to NOR bank 4:
=>cpld reset altbank
· Switch to NAND: =>cpld reset nand
· Switch to SD: =>cpld reset sd
4.7.5.3 LS1043ARDB recovery information
If LS1043ARDB board fails to boot from NOR bank 0, you can recover NOR bank 0
from NOR bank 4 by following these steps: 1. Run the command:
$ cp
2. Boot LS1043ARDB from NOR bank 4 with the following switch settings: SW3 =
10110011, SW4 = 00010010, SW5 = 10100110
3. Program NOR bank 0 from NOR bank 4: => tftp $load_addr
firmware_ls1043ardb_norboot.img => protect off 64000000 + $filesize && erase
64000000 +$filesize && cp.b $load_addr 64000000 $filesize
4. Reset and boot the board from NOR bank 0: => cpld reset
Note: If LS1043ARDB fails to boot from both the NOR banks, you need to recover
the board using CodeWarrior for LS Series, Arm v8 ISA. For steps to recover
the board using the CodeWarrior tool, see section “8.6 Board Recovery” in ARM
V8 ISA, Targeting Manual
4.7.5.4 Program Layerscape LDP composite firmware image
This topic explains steps to program NOR firmware image to IFC NOR flash on
LS1043ARDB and SD firmware image to SD card on LS1043ARDB.
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
49 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
To program Layerscape LDP composite NOR firmware image to IFC NOR flash on
LS1043ARDB: 1. Copy firmware on host machine to TFTP server.
$ cp
2. Reboot the board from NOR flash bank 0 and stop autoboot to enter U-Boot
prompt. 3. Under U-Boot, download the firmware to the reference board using
one of the following options:
· Load firmware from the TFTP server => tftp $load_addr
firmware_ls1043ardb_norboot.img
· Load firmware image from partition on mass storage device (SD, USB, or SATA)
=> load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1043ardb_norboot.img
or => load usb
or => load scsi
Note: Use the following command if the SD card is formatted/created using
Layerscape LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1043ardb_norboot.img Use the following
command if the SD card is formatted/created on a Windows PC:
=> fatload
=> fatload mmc 0:2 $load_addr firmware_ls1043ardb_norboot.img Use the
following command if the SD card is formatted/created on a Linux PC:
=> ext2load
=> ext2load mmc 0:2 $load_addr firmware_ls1043ardb_norboot.img
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
50 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Also note that Layerscape LDP flex-installer command puts the images on the
second partition, so 0:2 is used in the load command. If the SD card is
formatted on Windows PC or Linux PC for single partition only, then 0 should
be used instead of 0:2 in the fatload/ext2load command. 4. Program the
composite firmware into IFC NOR flash. · To program alternate bank:
=> protect off 64000000 +$filesize && erase 64000000 +$filesize && cp.b
$load_addr 64000000 $filesize
· To program current bank:
=> protect off 60000000 +$filesize && erase 60000000 +$filesize && cp.b
$load_addr 60000000 $filesize
5. Reset and boot the board from IFC NOR flash. The system will automatically
boot up TinyDistro (log in using root/root) or Layerscape LDP distro (log in
using user/user) available on the removable storage device. · To boot from NOR
flash bank 0.
=> cpld reset
· To boot from NOR flash bank 4.
=> cpld reset altbank
To program Layerscape LDP composite SD firmware image to SD card on
LS1043ARDB: 1. Copy firmware on host machine to TFTP server.
$ cp
2. Reboot the board from NOR flash bank 0 and stop autoboot to enter U-Boot
prompt. 3. Under U-Boot, download the firmware to the reference board using
one of the following options:
· Load firmware from the TFTP server => tftp $load_addr
firmware_ls1043ardb_sdboot.img
· Load firmware image from partition on mass storage device (SD, USB, or SATA)
=> load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1043ardb_sdboot.img
or => load usb
or => load scsi
Note: Use the following command if the SD card is formatted/created using
Layerscape LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1043ardb_sdboot.img
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
51 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Use the following command if the SD card is formatted/created on a Windows PC:
=> fatload
Use the following command if the SD card is formatted/created on a Linux PC:
=> ext2load
Also note that Layerscape LDP flex-installer command puts the images on the
second partition, so 0:2 is used in the load command. If the SD card is
formatted on Windows PC or Linux PC for single partition only, then 0 should
be used instead of 0:2 in the fatload/ext2load command. 4. Write the firmware
to SD card.
=> mmc dev 0; mmc write $load_addr 8 1f000
5. Reset and boot the board from SD card. The system will automatically boot
up TinyDistro (log in using root/ root) or Layerscape LDP distro (log in using
user/user) available on the removable storage device.
=> cpld reset sd
4.7.5.5 Frame Manager Configuration (FMC) tool
By default, FMan has been configured for Parse-Classify-Distribute (PCD). This
means that without any further action from the user, FMan enqueues received
frames from a particular flow to the same receive queue. This prevents Rx
packet reorder issues and improves performance.
This default FMan configuration uses configuration and policy files that are
provided in NXP Layerscape LDP to perform PCD. These files are in xml format
and are created with the objective of preserving packet ordering per flow. For
LS1043ARDB, these files are available at the following path:
/etc/fmc/config/private/ls1043ardb/RR_FQPP_1455
However, if a user wants to apply a configuration other than the one which is
applied by default, the user needs to run following command after the board
boots to Linux.
1. Change directory to the parent directory of the user’s custom
configuration and policy files 2. Run the FMC tool command:
$ fmc c <config.xml> p <policy.xml> a
4.7.6 Quick start guide for FRWY-LS1046A
This section explains:
· Introduction · FRWY-LS1046A reference information · Program Layerscape LDP
composite firmware image
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
52 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.6.1 Introduction
The following sections describe the procedure to program Layerscape LDP
composite firmware for FRWYLS1046A. Also, this section explains the most
common use case procedure to download and deploy Layerscape LDP default images
to FRWY-LS1046A using flex-installer. For more information, see Section 4.2.
For more information on the different components of the board, and on how to
configure and boot the board, see Layerscape FRWY-LS1046A Board Getting
Started Guide.
4.7.6.2 FRWY-LS1046A reference information
This section provides general information about FRWY-LS1046A. The information
may come in handy as a reference while performing steps for deploying
Layerscape LDP images that are mentioned in sections that follow.
4.7.6.2.1 Ethernet port map
Port name in chassis
1G PORT1
Port name in U-Boot FM1@DTSEC1
1G PORT2 FM1@DTSEC5
1G PORT3 FM1@DTSEC6
1G PORT4 FM1@DTSEC10
Port name in Tinydistro fm1-mac1
fm1-mac5
fm1-mac6
fm1-mac10
Port name in Linux Description
eth1
QSGMII copper
interface
eth2
QSGMII copper
interface
eth3
QSGMII copper
interface
eth4
QSGMII copper
interface
4.7.6.2.2 System memory map
Table 14.System memory map
Start address (Hex)
Module name
Size
00_0000_0000 00_0010_0000
00_0100_0000
00_1000_0000 00_1001_0000 00_1004_0000 00_1100_0000 00_1200_0000 00_1300_0000
00_2000_0000 00_2400_0000 00_4000_0000
Secure Boot ROM 1 MB
Extended Boot ROM
15 MB
CCSR Register Space
240 MB
OCRAM1
64 KB
OCRAM2
64 KB
Reserved
65408 KB
Reserved
16 MB
STM
16 MB
Reserved
208 MB
DCSR
64 MB
Reserved
448 MB
QuadSPI
512 MB
Accessible with x-bit addressing
32
36
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
40 Y Y
Y
Y Y Y Y Y Y Y Y Y
© 2023 NXP B.V. All rights reserved.
53 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Table 14.System memory map…continued
Start address (Hex)
Module name
Size
Accessible with x-bit addressing
32
36
40
00_6000_0000 IFC region 1(0 – 512 MB
Y
Y
Y
512 MB)
00_8000_0000 DRAM1 (0 – 2 GB) 2 GB
Y
Y
Y
01_0000_0000 Reserved
0.0625 GB
N
Y
Y
01_0400_0000 Reserved
3.9375 GB
N
Y
Y
02_0000_0000 Reserved
1 GB
N
Y
Y
02_4000_0000 Reserved
7 GB
N
Y
Y
04_0000_0000 Reserved
0.25 GB
N
Y
Y
04_1000_0000 Reserved
0.25 GB
N
Y
Y
04_2000_0000 Reserved
0.25 GB
N
Y
Y
04_3000_0000 Reserved
1.25 GB
N
Y
Y
04_8000_0000 Reserved
2 GB
N
Y
Y
05_0000_0000 QMan S/W Portal 128 MB
N
Y
Y
05_0800_0000 BMan S/W Portal 128 MB
N
Y
Y
05_1000_0000 Reserved
4 GB – 256 MB
N
Y
Y
06_0000_0000 Reserved
0.5 GB
N
Y
Y
06_2000_0000 IFC region 2 (512 3.5 GB
N
Y
Y
MB – 4 GB)
07_0000_0000 Reserved
4 GB
N
Y
Y
08_0000_0000 Reserved
2 GB
N
Y
Y
08_8000_0000 DRAM2
30 GB
N
Y
Y
10_0000_0000 Reserved
64 GB
N
Y
Y
20_0000_0000 Reserved
128 GB
N
N
Y
40_0000_0000 PCI Express 1
32 GB
N
N
Y
48_0000_0000 PCI Express 2
32 GB
N
N
Y
50_0000_0000 PCI Express 3
32 GB
N
N
Y
58_0000_0000 Reserved
160 GB
N
N
Y
80_0000_0000 Reserved
32 GB
N
N
Y
88_0000_0000 DRAM3 (32 – 512 480 GB
N
N
Y
GB)
4.7.6.2.3 Supported boot options
The FRWY-LS1046A board supports the following boot options: · QSPI NOR flash
(referred to as “QSPI” or “QSPI flash” in the following sections). CS refers
to chip select. · Micro-SD card (SDHC1)
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
54 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.6.2.4 Onboard switch options
The FRWY-LS1046A board has user selectable switches for evaluating different
boot options for the LS1046A device as given in the table below (‘0’ is OFF,
‘1’ is ON).
Boot source QSPI NOR (default) Micro-SD card (SDHC1)
SW1[1:10] 0_0100_0100_0 0_0100_0000_0
Note: User can only switch between QSPI NOR to Micro-SD and vice versa using
switch settings, there is no command to switch between them.
In addition to the above switch settings, ensure that the following jumper
settings are correct.
Table 15.FRWY-LS1046A jumper settings
Part identifier
Jumper type
Description
J72
1×2 connector
UART selection header
J8
1×2 connector
J14
1×2 connector
J11
1×2 connector
J9
1×2 connector
VDD voltage selection header Reset mode selection header
PROG_MTR voltage control header (NXP use only)
TA_BB_VDD voltage control header
Jumper settings
· Open: UART1 port is accessed remotely through a 1×4 header (J73)
· Shorted: A USB 2.0 micro AB connector (J58) is connected to UART1 port
through a USB-to-UART bridge (default setting)
· Open: VDD = 0.9 V · Shorted: VDD = 1 V (default setting)
· Open: RESET_REQ_B pin of the processor is disconnected
· Shorted: RESET_REQ_B pin triggers system reset when asserted (default
setting)
· Open: PROG_MTR pin of the processor is powered off (default setting)
· Shorted: PROG_MTR pin is powered by OVDD (1.8 V)
· Open: TA_BB_VDD pin of the processor is powered off
· Shorted: TA_BB_VDD pin is powered by VDD (1/0.9 V) (default setting)
4.7.6.2.5 QSPI NOR flash
QSPI NOR flash is a simple and convenient destination for deploying images;
therefore, it is most common medium for deploying images. When the board boots
from QSPI, the U-Boot log looks as follows:
U-Boot 2020.04-gc7ec91b1f4 (Nov 17 2020 – 15:26:56 +0800)
SoC: LS1046AE Rev1.0 (0x87070010)
Clock Configuration:
CPU0(A72):1600 MHz CPU1(A72):1600 MHz CPU2(A72):1600 MHz
CPU3(A72):1600 MHz
Bus:
600 MHz DDR:
2100 MT/s FMAN:
700 MHz
Reset Configuration Word (RCW):
00000000: 0c150010 0e000000 00000000 00000000
00000010: 30400506 00800012 40025000 c1000000
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
55 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
00000020: 00000000 00000000 00000000 00038800 00000030: 20044100 24003101 00000096 00000001 Model: LS1046A FRWY Board Board: LS1046AFRWY, Rev: A, boot from QSPI SD1_CLK1 = 100.00MHZ, SD1_CLK2 = 100.00MHZ DRAM: 3.9 GiB (DDR4, 64-bit, CL=15, ECC on) SEC0: RNG instantiated Using SERDES1 Protocol: 12352 (0x3040) Using SERDES2 Protocol: 1286 (0x506) NAND: 512 MiB MMC: FSL_SDHC: 0 Loading Environment from SPI Flash… SF: Detected mt25qu512a with page size 256 Bytes, erase size 64 KiB, total 64 MiB OK EEPROM: NXID v1 In: serial Out: serial Err: serial Net: SF: Detected mt25qu512a with page size 256 Bytes, erase size 64 KiB, total 64 MiB Fman1: Uploading microcode version 106.4.18 PCIe1: pcie@3400000 disabled PCIe2: pcie@3500000 Root Complex: no link PCIe3: pcie@3600000 Root Complex: no link FM1@DTSEC1, FM1@DTSEC5, FM1@DTSEC6, FM1@DTSEC10 =>
4.7.6.3 Program Layerscape LDP composite firmware image
This topic explains steps to program QSPI NOR firmware image to QSPI NOR flash
on FRWY-LS1046A and SD firmware image to SD card on FRWY-LS1046A. To program
Layerscape LDP composite firmware image to QSPI NOR flash on FRWY-LS1046A: 1.
Copy firmware on host machine to tftp server.
$ cp
2. Reboot the board from QSPI NOR flash and stop autoboot to enter U-Boot
prompt. 3. Under U-Boot, download the firmware to the reference board using
one of the following options:
· Load firmware from the TFTP server => tftp $load_addr
firmware_ls1046afrwy_qspiboot.img
· Load firmware image from partition on mass storage device (SD or USB) =>
load mmc
For example: => load mmc 0:2 $load_addr firmware_ls1046afrwy_qspiboot.img
Or => load usb
Note:
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
56 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Use the following command if the SD card is formatted/created using Layerscape
LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1046afrwy_qspiboot.img Use the following
command if the SD card is formatted/created on a Windows PC:
=> fatload
=> fatload mmc 0:2 $load_addr firmware_ls1046afrwy_qspiboot.img Use the
following command if the SD card is formatted/created on a Linux PC:
=> ext2load
=> ext2load mmc 0:2 $load_addr firmware_ls1046afrwy_qspiboot.img Also note
that Layerscape LDP flex-installer command puts the images on the second
partition, so 0:2 is used in the load command. If the SD card is formatted on
Windows PC or Linux PC for single partition only, then 0 should be used
instead of 0:2 in the fatload/ext2load command. 4. Program the firmware to
QSPI NOR flash. => sf probe 0:0 => sf erase 0 +$filesize && sf write
$load_addr 0 $filesize
5. Ensure that switch settings on the board are for QSPI NOR flash and power
cycle the board. The system will automatically boot up TinyDistro (log in
using root/root) or Layerscape LDP distro (log in using user/ user) available
on the removable storage device.
To program Layerscape LDP composite firmware image to SD card on FRWY-LS1046A:
1. Copy firmware on host machine to tftp server. $ cp
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
57 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
Use the following command if the SD card is formatted/created using Layerscape
LDP flex-installer command:
=> load
=> load mmc 0:2 $load_addr firmware_ls1046afrwy_sdboot.img Use the following
command if the SD card is formatted/created on a Windows PC:
=> fatload
=> fatload mmc 0:2 $load_addr firmware_ls1046afrwy_sdboot.img Use the
following command if the SD card is formatted/created on a Linux PC:
=> ext2load
=> ext2load mmc 0:2 $load_addr firmware_ls1046afrwy_sdboot.img Also note that
Layerscape LDP flex-installer command puts the images on the second partition,
so 0:2 is used in the load command. If the SD card is formatted on Windows PC
or Linux PC for single partition only, then 0 should be used instead of 0:2 in
the fatload/ext2load command. 4. Program the firmware to SD card. => mmc dev
0; mmc write $load_addr 8 1f000
5. Ensure that switch settings on the board are for SD boot and power cycle
the board. The system will automatically boot up TinyDistro (log in using
root/root) or Layerscape LDP distro (log in using user/user) available on the
removable storage device.
4.7.6.4 Frame Manager Configuration (FMC) tool
By default, FMan has been configured for Parse-Classify-Distribute (PCD). This
means that without any further action from the user, FMan enqueues received
frames from a particular flow to the same receive queue. This prevents Rx
packet reorder issues and improves performance.
This default FMan configuration uses configuration and policy files that are
provided in NXP Layerscape LDP to perform PCD. These files are in xml format
and are created with the objective of preserving packet ordering per flow. For
FRWY-LS1046A, these files are available at the following path:
/etc/fmc/config/private/ls1046afrwy/NN_NNQNNPNP_3040_0506
However, if a user wants to apply a configuration other than the one which is
applied by default, the user needs to run following command after the board
boots to Linux.
1. Change directory to the parent directory of the user’s custom
configuration and policy files. 2. Run the FMC tool command:
$ fmc c <config.xml> p <policy.xml> a
4.7.7 Quick start guide for LS1046ARDB This section explains: · Introduction
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
58 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
· LS1046ARDB reference information · LS1046ARDB recovery information · Program Layerscape LDP composite firmware image · Frame Manager Configuration (FMC) tool
4.7.7.1 Introduction
The following sections describe the procedure to program Layerscape LDP
composite firmware for LS1046A. Also, this section explains the most common
use case procedure to download and deploy Layerscape LDP default images to
LS1046A using flex-installer. For more information, see Section 4.2.
For more information on the different components of the board, and on how to
configure and boot the board, see LS1046A Reference Design Board Getting
Started Guide.
For a list of brief how-tos to help you modify/update individual Layerscape
LDP components such as, U-Boot, Linux kernel, DPAA1 FMan microcode on
LS1046ARDB when booting the board from a specific boot source, such as QSPI or
SD, see NXP community.
4.7.7.2 LS1046ARDB reference information
This section provides general information about LS1046ARDB which may come in
handy as a reference while completing steps for deploying Layerscape LDP that
follow.
4.7.7.2.1 Ethernet port map
The port name in Linux TinyDistro corresponding to each of the six ports on
the reference board chassis is given in the table below.
Port name on chassis
RGMII1 RGMII2 SGMII1 SGMII2 10G Copper 10G SEP+
Port name in U-Boot
FM1@DTSEC3 FM1@DTSEC4 FM1@DTSEC5 FM1@DTSEC6 FM1@TGEC1 FM1@TGEC2
Port name in Linux (Tiny Distro) eth0 eth1 eth2 eth3 eth4 eth5
Port name in Linux (NXP Layerscape LDP userland) fm1-mac3 fm1-mac4 fm1-mac5 fm1-mac6 fm1-mac9 fm1-mac10
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
59 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
4.7.7.2.2 System memory map
Start Physical Address 0x00_0000_0000 0x00_0100_0000 0x00_1000_0000 0x00_1001_0000 0x00_2000_0000 0x00_7E80_0000 0x00_7FB0_0000 0x00_8000_0000 0x05_0000_0000 0x05_0800_0000 0x08_8000_0000 0x40_0000_0000 0x48_0000_0000 0x50_0000_0000
End Physical Address 0x00_000F_FFFF 0x00_0FFF_FFFF 0x00_1000_FFFF 0x00_1001_FFFF 0x00_20FF_FFFF 0x00_7E80_FFFF 0x00_7FB0_0FFF 0x00_FFFF_FFFF 0x05_07FF_FFFF 0x05_0FFF_FFFF 0x09_FFFF_FFFF 0x47_FFFF_FFFF 0x4F_FFFF_FFFF 0x57_FFFF_FFFF
Memory Type Secure Boot ROM CCSRBAR OCRAM0 OCRAM1 DCSR IFC – NAND Flash IFC – CPLD DRAM1 QMan S/W Portal BMan S/W Portal DRAM2 PCI Express1 PCI Express2 PCI Express3
Size 1 MB 240 MB 64 KB 64 KB 16 MB 64 KB 4 KB 2 GB 128 M 128 M 6 GB 32G 32G 32G
4.7.7.2.3 Supported boot options
LS1046ARDB supports the following boot options: · SD · QSPI NOR flash
4.7.7.2.4 Onboard switch options
The RDB has user selectable switches for evaluating different boot options for
the LS1046A device as given in the table below (‘0’ is OFF, ‘1’ is ON).
Boot source QSPI NOR flash0 (default) QSPI NOR flash1 SD card
SW3[1:8] 01000110 01001110 01000110
SW4[1:8] 00111011 00111011 00111011
SW5[1:8] 00100010 00100010 00100000
Note: Changing the boot device configuration from the default setting may
require additional changes in the RCW or in other code images.
For information on RCW naming convention for LS1046ARDB, see
https://github.com/nxp-qoriq/rcw/blob/ master/ls1046ardb/README.
4.7.7.2.5 QSPI NOR flash banks
LS1046ARDB has two QSPI NOR flash connected over QSPI controller. Only one
QSPI NOR flash is available at a time depending upon the board switch settings
as given in preceding topic. These switch settings can also be overridden by
CPLD commands. To protect the default U-Boot in flash0, it is a convention
employed by NXP to deploy work images into the flash1, and then switch to the
flash1 for testing. Switching to the flash1 can be done in software using CPLD
command that effectively swaps the flash0 with the flash1. This protects
flash0
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
60 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
and keeps the board bootable under all circumstances. To determine the current
bank, refer to the example U-
Boot log given below (flash0 is displayed as vBank 0 and flash1 is displayed
as vBank 4).
U-Boot 2020.04-21450-gbde1a7f (Sep 18 2020 – 22:10:28 +0800) SoC: LS1046AE
Rev1.0 (0x87070010) Clock Configuration:
CPU0(A72):1800 MHz CPU1(A72):1800 MHz CPU2(A72):1800 MHz CPU3(A72):1800 MHz
Bus: 700 MHz DDR: 2100 MT/s FMAN: 800 MHz Reset Configuration Word (RCW):
00000000: 0e150012 10000000 00000000 00000000 00000010: 11335559 40005012
40025000 c1000000 00000020: 00000000 00000000 00000000 00238800 00000030:
20124000 00003101 00000096 00000001 Model: LS1046A RDB Board Board:
LS1046ARDB, boot from QSPI vBank 4 CPLD: V2.2 PCBA: V2.0 SERDES Reference
Clocks: SD1_CLK1 = 156.25MHZ, SD1_CLK2 = 100.00MHZ DRAM: 15.9 GiB (DDR4,
64-bit, CL=15, ECC on) DDR Chip-Select Interleaving Mode: CS0+CS1 SEC0: RNG
instantiated Using SERDES1 Protocol: 4403 (0x1133) Using SERDES2 Protocol:
21849 (0x5559) NAND: 512 MiB MMC: FSL_SDHC: 0 Loading Environment from SPI
Flash… SF: Detected s25fs512s with page size 256 Bytes, erase size 256 KiB,
total 64 MiB OK EEPROM: NXID v1 In: serial Out: serial Err: serial Net: SF:
Detected s25fs512s with page size 256 Bytes, erase size 256 KiB, total 64 MiB
Fman1: Uploading microcode version 106.4.18 PCIe1: pcie@3400000 Root Complex:
no link PCIe2: pcie@3500000 Root Complex: no link PCIe3: pcie@3600000 Root
Complex: x1 gen1 e1000: 00:15:17:8a:c6:5b FM1@DTSEC3, FM1@DTSEC4, FM1@DTSEC5,
FM1@DTSEC6, FM1@TGEC1, FM1@TGEC2, e1000#0 [PRIME] Warning: e1000#0 MAC
addresses don’t match: Address in SROM is 00:15:17:8a:c6:5b Address in
environment is 00:e0:0c:00:8e:06 Warning: e1000#0 failed to set MAC address =>
=>
4.7.7.2.6 Boot option switching Boot switching can be performed in U-Boot
using the following commands: · Switch to QSPI NOR flash0 (default):
=>cpld reset
LLDPUG
User guide
All information provided in this document is subject to legal disclaimers.
Rev. L6.1.1_1.0.0 — 10 May 2023
© 2023 NXP B.V. All rights reserved.
61 / 1056
NXP Semiconductors
LLDPUG
Layerscape Linux Distribution POC User Guide
· Switch to QSPI NOR flash1: =>cpld reset altbank
· Switch to SD: =>cpld reset sd
4.7.7.3 LS1046ARDB recovery information
If LS1046ARDB board fails to boot from QSPI NOR flash 0, you can recover QSPI
NOR flash 0 from QSPI NOR flash 1 by following these steps: 1. Download the
prebuilt composite firmware image:
$ cp
2. Boot LS1046ARDB from QSPI NOR flash1 with the following switch settings:
SW3 = 01001110, SW4 = 00111011, SW5 = 00100010
3. Program QSPI NOR flash0 from QSPI NOR flash1: => tftp $load_addr
firmware_ls1046ardb_qspiboot.img => sf probe 0:1 => sf erase 0 +$filesize &&
sf write $load_addr 0 $filesize
4. Reset and boot the board from QSPI NOR flash0: => cpld reset
Note: If LS1046ARDB fails to boot from both the QSPI NOR flash banks, you need
to recover the board using CodeWarrior for LS Series, Arm v8 ISA. For steps to
recover the board using the CodeWarrior tool, see section “8.6 Board Recovery”
in ARM V8 ISA, Targeting Manual
4.7.7.4 Program Layerscape LDP composite firmware image
This topic explains steps to program QSPI NOR firmware image to QSPI NOR flash
on LS1046ARDB and SD firmware image to SD card on LS1046ARDB. To program
Layerscape LDP composite firmware image to QSPI NOR flash on LS1046ARDB: 1.
Copy firmware on host machine to tftp server.
$ cp