But this richness means that the user space file is large, too large for RAM disks. Therefore, LS1028A BSP requires installation to and use of a mass storage device such as • SD card • USB flash drive • USB hard drive Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Click here 2.4 Feature Support Matrix The following tables show the features that are supported in this release. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 9
• Switchdev support • TSN Qci, Qbv, Qbu, Qav, 802.1CB support ENETC-TSN • 1588 two steps time stamping support • Qbv, Qbu, Qci, Qav protocol support Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
• Table3: Open/known issues: Contains Issues which have do not currently have a resolution. Workaround suggestions are provided wherever possible. Table 3. Fixed issues Description Status QLINUX-10979 LS1028ARDB - flextimer: no 'ftm_alarm' under /sys/ Fixed devices/platform/soc/2800000.ftm0/ Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 11
LS1028ARDB: video playback using GStreamer hang quickly on weston QLINUX-11423 LS1028AQDS: Kernel booting failed using LPUART U-Boot NOTE PPA is replaced by ‘TF-A’ , that is, Trusted Firmware for ARM in this release. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
User can run the command cut -d: -f1 /etc/group | sort to check if docker group is included in the list of all the available groups. Add your account to “ docker” group $ sudo usermod -aG docker <accountname> $ sudo gpasswd –a <accountname> docker Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
This option is typically useful when a remote Linux host server is used, and/or the user is accessing the reference board remotely. For this option, a network connection to the reference board is required. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 17
U-Boot image in one chip-select 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. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 18
MDIO MUX: no MDIO MUX node Hit any key to stop autoboot: Boot option switching can be performed in U-Boot using the following statements. • Switch to FlexSPI NOR flash (default): =>qixis_reset Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
5. After a successful installation, the message “installation finished successfully” appears. Execute the following command to unmount all mounted partitions of the target device. Example: $ sudo umount /run/media/sdX 6. Unplug removable storage device from the Linux host and plugin into the reference board. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
BSP images to the storage device on a reference board. The reference board may be accessed by the user remotely. For this option, a network connection to the reference board is required. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 21
For LS1028ARDB, this interface is named as Eth0 in TinyDistro and is labeled as 1G MAC0 on chassis front panel as shown in diagram below. 5. Use flex-installer to create and format the partitions for storage device (USB/SATA/SD). Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 22
$ flex-installer -i install -b bootpartition_<arch>_lts_<version>.tgz -r rootfs_ubuntu_<codename>_<arch>_<timestamp>.tgz -d /dev/mmcblk0 eMMC $ cd /run/media/mmcblk1p3 b. Download bootpartition_<arch>_<version>.tgz and using the ubuntu_<codename>_<arch>_rootfs_<timestamp>.tgz wget command. $ flex-installer -i install -b bootpartition_<arch>_lts_<version>.tgz -r rootfs_ubuntu_<codename>_<arch>_<timestamp>.tgz -d /dev/mmcblk1 Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 23
=> mmc write a0000000 8 0x25000 where, 0x25000 is number of blocks (max) on eMMC that are required to write the eMMC composite firmware. Each block is 512 bytes size. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
The '-s' option is used for secure boot, OPTEE and FUSE_PROVISIONING are not enabled by default, change CONFIG_BUILD_OPTEE=n to y and/or change CONFIG_FUSE_PROVISIONING=n to y in configs/build_lsdk.cfg to enable it if necessary. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 25
(if -a <arch> is not specified, arm64 arch is used by default) $ flex-builder -c linux:custom -a arm64 (optional, customize kernel config in interactive menu) $ flex-builder -c linux -a arm64 Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 26
(arm64 is the default arch if -a <arch> is not specified) To add new application component in Flexbuild, follow the steps below: 1. Add new <component> to apps_repo_list and set CONFIG_BUILD_<component>=y in configs/build_xx.cfg. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 27
=> run sd_bootcmd (or run xspi_bootcmd to enter Tiny distro Linux environment) Download app_components_LS_arm64.tgz via wget or scp command root@TinyDistro:~# tar xf app_components_LS_arm64.tgz root@TinyDistro:~# cp -a components_LS_arm64/* /run/media/mmcblk0p3 root@TinyDistro:~# reboot Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 28
TF-A image based on U-Boot for SD boot on LS1043AXX $ cd packages/firmware/atf $ git checkout LSDK-18.12 -b LSDK-18.12-LS1043AXX $ flex-builder -c atf -m ls1043axx -b sd Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 29
$ flex-builder -i mkrfs -a arm64 $ flex-builder -c apps -a arm64 $ flex-builder -i mkbootpartition -a arm64 $ flex-builder -i merge-component -a arm64 $ flex-builder -i compressrfs -a arm64 Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 30
• After booting and logging in to Linux on the target board, download the prebuilt distro tarballs generated by Flexbuild and install using the commands below: $ flex-installer -i pf -d /dev/sdx $ cd /run/media/{mmcblk0p3 or sdx3}, then download distro images to SD/USB/SATA storage disk via Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 31
◦ Option 2: Download the prebuilt image using the command. wget $ wget https://www.nxp.com/lgfiles/sdk/ls1028a_bsp_03/ firmware_ls1028ardb_uboot_xspiboot.img ◦ Option 3: To locally generate firmware_ls1028ardb_uboot_xspiboot.img, run the command as below: $ flex-builder -i mkfw -m ls1028ardb -b xspi Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Write OTPMK fuse values on shadow registers. md 1e90014 80000900 md 1e80024 00000000 You will see ‘0’ in the second nibble. No parity errors, that is, bits marked in read are all 0’s. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 33
4. Put the board into RSP (reset pause). config_chain {ls1028a dap}; display ccs::get_config_chain; # To enable RSP: ccs::config_chain testcore; jtag::lock; jtag::state_move test_logic_reset; jtag::scan_out ir 4 3; jtag::scan_out dr 6 1; Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
• Support native build on aarch64/armhf machine for ARM arch target. • Support creating an Ubuntu docker container and building LSDK inside it when the host machine is using CentOS, RHEL, Fedora, SUSE, Debian, non-18.04 Ubuntu, etc. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 36
• Run flex-builder docker command on the existing non Ubuntu 18.04 host to create a ubuntu 18.04 docker container in which GCC 7.3.0 is available, then build LSDK in docker. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
License(GPL) version 2. It rapidly attracted developers around the world. In 2015 the Linux kernel has received contributions from nearly 12,000 programmers from more than 1,200 companies. The software is officially released on http://www.kernel.org website Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
These are done through make commands, below we will talk about commands you probably need to know as a kernel user. make Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 39
Specific command to load the default configuration of different platforms for LS1028A BSP will be: • For Layerscape ARMv8 platforms in 64bit mode: $ make defconfig lsdk.config • For Layerscape ARMv7 platforms: $ make multi_v7_defconfig multi_v7_lpae.config lsdk.config Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 40
• Copy kernel image, dtb and kernel modules from your kernel tree to the staging folder of the flexbuild script (Skip if you are using the flexbuild -c linux to build the kernel directly). — For 64-bit ARM: $ cp arch/arm64/boot/Image.gz ${path-to-flexbuild}/build/linux/kernel/arm64/ $ cp arch/arm64/boot/dts/freescale/*.dtb ${path-to-flexbuild}/build/linux/kernel/arm64/ $ make modules_install INSTALL_MOD_PATH=${path-to-flexbuild}/build/linux/kernel/arm64/ Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
CAAM DMA driver. The driver is based on the DMA engine framework and it is located under the DMA Engine support category in the kernel config menu. Kernel Configure Options Tree Overview Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 44
Enable common helper function support for sdhci platform and OF drivers CONFIG_MMC_SDHCI_OF_ Enable NXP eSDHC support ESDHC Source Files The driver source is maintained in the Linux kernel source tree. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 45
MMC write: dev # 0, block # 0, count 2 ... 2 blocks written: OK => mmc read 82000000 0 2 MMC read: dev # 0, block # 0, count 2 ... 2 blocks read: OK Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 47
SD card working on UHS-I speed mode. When the card is on UHS-I speed mode, this hardware problem may cause unexpected result after board reset. The workaround is using power off/on instead of reset when using SD UHS-I card. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
ENETC hardware timestamping support 2. Felix switch Kernel Configure Tree View Options Description Enable 1588 driver for Felix switch Device Drivers ---> [*] Network device support ---> Ethernet driver support ---> Microsemi devices Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 49
ENETC PTP driver 2. Felix switch Source File Description drivers/net/ethernet/mscc/felix_board.c Felix switch driver drivers/net/ethernet/mscc/felix_ptp.c Felix PTP driver Device Tree Binding 1. ENETC Property Type Status Description integer Required Register map Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 50
L2 Ethernet protocol with -2 option for CPU port with bridge case. Known Bugs, Limitations, or Technical Issues • The Felix switch interrupt had not been implemented in driver. Polling method in work queue was used instead temporary for timestamping support. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Below are the configure options need to be set/unset while doing "make menuconfig" for kernel Kernel Configure Tree View Options Description LPUART driver and enable console support Device Drivers ---> Character devices ---> Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 52
1. Boot up U-Boot from bank0, and update rcw and U-Boot for LPUART support to bank4, first copy the rcw and U-Boot binary to the TFTP directory. 2. Please refer to the platform deploy document to update the rcw and U-Boot. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Set the system time from RTC when startup and resume CONFIG_RTC_HCTOSYS_D "rtc0" RTC used to set the system EVICE time CONFIG_RTC_INTF_SYSFS y/m/n Enable RTC to use sysfs Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 57
MC object device driver dpaa2_rtc registered rtc-ds3232 0-0068: setting system clock to 2000-01-01 00:00:51 UTC (946684851) NOTE: Please refer to the related DTS file to enable the RTC driver before building. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
DMA jobs from, different work queues. This module can be found on Freescale LS SoCs. Identifier Below are the configure identifiers which are used in kernel source code and default configuration files. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Enables SATA controller CONFIG_SATA_AHCI_QORI y/m/n Enables SATA controller Source Files The driver source is maintained in the Linux kernel source tree. Source File Description drivers/ata/ahci_qoriq.c Platform AHCI SATA support Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 62
First data block=0 Maximum filesystem blocks=268435456 8 block groups 32768 blocks per group, 32768 fragments per group 8160 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376 Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Note: there are cases when fewer rings are accessible / visible in the kernel - for e.g. when firmware like Primary Protected Application (PPA) reserves one of the rings. • Queue Interface (QI) - available on SoCs implementing DPAA v1.x (Data Path Acceleration Architecture) Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 64
QI frontend based implementation of echainiv(authenc(hmac(sha1),cbc(aes))) algorithm is: $ ./crconf update driver "echainiv-authenc-hmac-sha1-cbc-aes-caam-qi" type 3 priority 5000 Figure 3. Linux kernel - SEC device drivers overview Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 65
Hardware crypto devices ---> driver backend (SEC); all non-DPAA2 sub-options depend on <*> Freescale CAAM-Multicore platform driver backend (SEC) Enable debug output in CAAM Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 67
No test for echainiv(authenc(hmac(sha256),cbc(des))) (echainiv-authenc-hmac-sha256-cbc-des-caam) alg: No test for echainiv(authenc(hmac(sha384),cbc(des))) (echainiv-authenc-hmac-sha384-cbc-des-caam) alg: No test for echainiv(authenc(hmac(sha512),cbc(des))) (echainiv-authenc-hmac-sha512-cbc-des-caam) alg: No test for authenc(hmac(md5),rfc3686(ctr(aes))) (authenc-hmac-md5-rfc3686-ctr-aes-caam) alg: No test for seqiv(authenc(hmac(md5),rfc3686(ctr(aes)))) (seqiv-authenc-hmac-md5-rfc3686-ctr-aes- caam) Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 68
No test for echainiv(authenc(hmac(sha384),cbc(des))) (echainiv-authenc-hmac-sha384-cbc-des-caam- alg: No test for echainiv(authenc(hmac(sha512),cbc(des))) (echainiv-authenc-hmac-sha512-cbc-des-caam- platform caam_qi: algorithms registered in /proc/crypto caam_jr 1710000.jr: registering rng-caam caam 1700000.crypto: caam pkc algorithms registered in /proc/crypto [...] Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 69
3. verify the kernel gets entropy: $ rngtest -C 1000 < /dev/random If it blocks, a kernel entropy supplier daemon, such as rngd, may need to be run. See linux/Documentation/hw_random.txt for more info. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 71
Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 72
(public key / asymmetric algorithms) can be turned off too, if needed. caamrng frontend (Random Number Generation) may be turned off in case there is an alternate source of entropy available to the kernel. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 73
No test for authenc(hmac(sha224),ecb(cipher_null)) (authenc-hmac-sha224-ecb-cipher_null-caam) alg: No test for authenc(hmac(sha256),ecb(cipher_null)) (authenc-hmac-sha256-ecb-cipher_null-caam) [...] alg: No test for authenc(hmac(md5),cbc(aes)) (authenc-hmac-md5-cbc-aes-caam) alg: No test for echainiv(authenc(hmac(md5),cbc(aes))) (echainiv-authenc-hmac-md5-cbc-aes-caam) alg: No test for echainiv(authenc(hmac(sha1),cbc(aes))) (echainiv-authenc-hmac-sha1-cbc-aes-caam) [...] Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 74
SEC hardware. Documentation regarding how to set up an IPsec tunnel can be found in corresponding open source IPsec suite packages, e.g. strongswan.org, openswan, setkey, etc. DPAA2-specific section contains a generic helper script to configure IPsec tunnels. Running OpenSSL Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 75
— Enqueue a frame descriptor (FD) into a QMan frame queue. Returns 0 if OK, -EBUSY if QMan driver fails to enqueue the FD for some reason or if congestion is detected. Synopsis int dpaa2_caam_enqueue(struct device *dev, struct caam_request *req); Arguments dev: DPSECI device. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
The default kernel configuration enables support for USB_DWC3 as built-in kernel module. Kernel Configure Tree View Options Kernel Configure Tree View Options Description Enables USB host controller support Device Drivers---> USB support ---> Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 77
Network Control Model (NCM) support < > Gadget Filesystem < > Function Filesystem <M> Mass Storage Gadget < > Serial Gadget (with CDC ACM and CDC OBEX support) Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 78
Enables OSS PCM OSS_PLUGINS (digital audio) API - Include plugin system CONFIG_SND_SUPP Enables old ALSA API ORT_OLD_API CONFIG_SND_USB Enables USB sound devices CONFIG_SND_USB_A y/m/n Enables USB Audio/ UDIO MIDI driver Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 79
Host Controller xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected usbcore: registered new interface driver usb-storage Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 80
There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 82
Mass Storage Gadget To use ramdisk as a backing store use the following root@freescale /$ mkdir /mnt/ramdrive root@freescale /$ mount -t tmpfs tmpfs /mnt/ramdrive -o size=600M Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Watchdog device driver support kernel built-in mode. U-Boot Configuration Runtime options Env Variable Env Description Sub option Option Description bootargs Kernel command line setenv othbootargs Sets the watchdog timer argument passed to kernel wdt_period=35 period timeout Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 87
• Set NFS rootfs. Build a rootfs image which includes watchdog daemon. • Set boot parameter. On the U-Boot prompt, set following parameter: Set nfsargs: setenv bootargs wdt_period=35 root=/dev/nfs rw nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip: $gatewayip:$netmask:$hostname:$netdev:off console=$consoledev,$baudrate $othbootargs Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
The following figure shows the Ethernet ports as presented in U-Boot. Note that not all ports are available. enetc#0 enetc#1 enetc#2 enetc#3 swp4 swp5 switch swp0 swp1 swp2 swp3 QSGMII Figure 4. U-boot network interfaces on RDB Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 89
QSXGMII add-on card. Interface naming in Linux The following figure shows how Ethernet ports are presented in Linux. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 90
Internal 0000:00:00.2 Connected internally (MAC to MAC) to swp4. This is used to carry traffic between the switch and software running on Arm cores. Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
For this binding, the follwing properties are required, their bindings already defined in ethernet.txt, under Documentation/ devicetree/bindings/net/* in the kernel source tree. Required: • phy-handle – reference to a PHY device node for switch ports [0 … 3]. Defined in ethernet.txt. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
In CPU port mode, the user will use the net device interface of the switch port or the bridge interface. The below figure shows the connection of the L2Switch with the host CPU: Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 98
MAC and VLAN tables. As mentioned earlier, the frames transiting a non-CPU port are not carrying any custom tags. In this mode only, the peer net device port (that is, ENETC port) acts Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 99
The following script configures the L2Switch for the above setup: • Creates a bridge interface br0 • For each interface: — sets the MAC address — adds it to the bridge interface — brings up the interface Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 100
0000:00:00.5 swp0: Unsupported PHY speed: 0 Vitesse VSC8514 1f8100000:10: attached PHY driver [Vitesse VSC8514] (mii_bus:phy_addr=1f8100000:10, irq=POLL) br0: port 1(swp0) entered blocking state br0: port 1(swp0) entered forwarding state Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 101
0000:00:00.5 swp5: Link is Up - 1Gbps/Full - flow control off fsl_enetc 0000:00:00.2 eno2: Link is Up - 1Gbps/Full - flow control off fsl_enetc 0000:00:00.6 eno3: Link is Up - 1Gbps/Full - flow control off Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 102
L2 forwarding does not work by default. Another difference from bridge mode is that each switch port interface can be used independently to send and receive packets. Figure 8. on page 103 shows the high-level view of this mode. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
4.2.13.1 Tsntool user manual The tsntool is a tool to set the hardware TSN capability ethernet ports. Source code Use the following link to get the access of tsntool source code: https://github.com/openil/tsntool.git. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 104
Set queues map to PCP tag (specific for LS1028A switch) sendpkt Not supported regtool Register read/write of bar0 of PFs (specific for LS1028A ENETC) ptptool Not supported Tsntool command parameters The following table describes the tsntool supported command parameters. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 105
ConfigChange. Default set to 1. --configchangetime <value> ConfigChangeTime command cbstreamidget --device <ifname> Interface, such as eth0/sw0p0 --index <value> Index entry number in this controller. Must have. Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 106
Default to set enable if no enable or disable input --configchange configchange --enblkinvrx PSFPGateClosedDueToInvalidRxEnable --blkinvrx PSFPGateClosedDueToInvalidRx --initgate PSFPAdminGateStates --initipv AdminIPV --cycletime Default not set. Get by gatelistfile. --cycletimeext PSFPAdminCycleTimeExtension --basetime PSFPAdminBaseTime Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 107
Index entry number in this controller. Must have. --disable Not set disable then to be set enable. --cir <value> cir. kbit/s. --cbs <value> cbs. octets. Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 108
: offset into pci memory region to act upon data : data to be written command ctset --device <ifname> Interface, such as eth0/sw0p0 Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 109
0x0 to 0xFFF. --his_len <value> SEQ_HISTORY_LEN: Refer to SEQ_HISTORY, Min 1 and Max --rtag_pop_en REDTAG_POP: If True, then the redundancy tag is popped by rewriter. Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
The tsntool is an application configuration tool to configure the TSN capability. You can find files /usr/bin/tsntool and /usr/lib/ libtsn.so in the rootfs. Run tsntool to start the setting shell. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Set frame path from eth0 to external by link enetc MAC0 - SWP0. Figure 11. QBU test setup NOTE • 0x11f10 Port MAC Merge Frame Assembly OK Count Register • 0x11f18 Port MAC Merge Fragment Count TX Register (MAC_MERGE_MMFCTXR) Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Follow the following commands to enable timestamp on switch: #Init PTP: devmem 0x1fc0900a0 w 0x00000004 #Get PTP real time(second): devmem 0x1fc0900c4 4.2.13.4.3 Qbv test The following figure shows the Qbv test setup. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 119
# ’basetime’ (current_second_time+offset)<<32 + current_nsecond_time #send one broadcast frame to eth4 on TestCenter. #Frame could not pass eth5 until time offset. Gate time limitation echo “t0 00000000b 20000” > qbv0.txt Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
#set queue 1 to be preemptable tsntool> qbuset --device eth7 --preemptable 0x02 # Send two streams from TestCenter, then check the number of additional mPackets transmitted by PMAC: devmem 0x1fc010e48 32 && devmem 0x1fc010280 Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
# Send one yellow stream (rate = 300M) on TestCenter. ethtool -S eth4 # Not all frames could pass and get yellow and red frames. 4.2.13.4.6 Qav test case The following figure shows Qav test case setup. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
# Capture frames on eth6 on TestCenter. # Get Frame sequence is: (PCP=1), (PCP=2), (PCP=2), (PCP=1), (PCP=2), (PCP=2),… 4.2.13.4.7 Seamless redundancy test case The following figure shows the Seamless redundancy test case setup. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
[*] IMX8 HD Display Controller [*] Bootup logo---> [*] Standard 224-color Linux logo Device tree configuration The following is default device tree configuration for LS1028A RDB and QDS board: &edp { fsl,no_edid; Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 126
Agreement and you acknowledge that you have the authority, for yourself or on behalf of your company, to bind your company to these terms. You may then download or install the file. … Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 127
Erase Group Size: 512 Bytes MMC read: dev # 0, block # 18432, count 512 ... 512 blocks read: OK Loading hdp firmware from 0x00000000a0000000 offset 0x0000000000002000 Loading hdp firmware Complete Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Source files The GPU driver source is maintained in the Linux kernel source tree. Source File Description drivers/mxc/* GPU module support Test procedure Follow the below procedure to use GPU. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 130
4 (p=16)... running kernel 5 (p=32)... running kernel 6 (p=64)... Kernel execution time on GPU (kernel 0) : 0.000342 seconds Kernel execution time on GPU (kernel 1) : 0.000215 seconds Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
LS1028AQDS rcw_1300_audio.rcw, SDHC1_BASE_PMUX = 3 Kernel configure options tree view The following table describes the tree view of the kernel configuration options. Options Description Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 132
CONFIG_SND_PCM_OSS y/m/n Enable OSS digital audio CONFIG_SND_PCM_OSS_P y/m/n Support conversion of LUGINS channels, formats and rates CONFIG_SND_SUPPORT_O y/m/n Enable support old ALSA API LD_API Table continues on the next page... Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 133
0x66 0x53 0x4 c. The lineout interface is J34. 3. On the LS1028AQDS board: a. Set the switch SW6[1] = OFF and switch SW6[2] = ON. b. Connect the jumpers for J59. Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 134
4. Run the following command to test playback. aplay aplay -f S16_LE -r 44100 -t wav -c 2 44k-16bit-stereo.wav 5. Use alsamixer to adjust the volume for playing by the option “PCM” . Layerscape LS1028A BSP User Guide, Rev. 0.3, 04/2019 NXP Semiconductors...
Page 136
How To Reach Us Information in this document is provided solely to enable system and software implementers to use NXP products. There are no express or implied copyright licenses granted hereunder to Home Page: design or fabricate any integrated circuits based on the information in this document. NXP nxp.com reserves the right to make changes without further notice to any products herein.
Need help?
Do you have a question about the Layerscape LS1028A BSP and is the answer not in the manual?
Questions and answers