Qoriq LS1046ARDB Yocto SDK wic image

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Qoriq LS1046ARDB Yocto SDK wic image

1,397 Views
pholden
Contributor III

I got an image for LS1046ARDB finally built for the LS Qoriq Yocto SDK, I am working with branch "styhead".  Now I want to make it bootable by SD card.  I have two questions:

1.  u-boot.  Where is the sdcard defconfig for LS1046ARDB?  I've changed "UBOOT_CONFIG" to add 'sdcard', but there is no corresponding defconfig to go with it.

2.  wic image.  How do I configure LS1046ARDB to generate a wic image I can dd to the SD card?  I tried adding "IMAGE_FSTYPES = "wic" to my local.conf, but bitbake no longer works.

Tags (3)
0 Kudos
Reply
6 Replies

1,357 Views
pholden
Contributor III

So far I've figured out the "wic" part of my question. 

I'm still wondering where the SDCARD u-boot defconfig is for the LS1046ARDB.  Using the tfa defconfig is definitely not working for SDCARD image.

0 Kudos
Reply

1,345 Views
Oswalag
NXP TechSupport
NXP TechSupport

Hello,

To select SD card as the bootable source it is selected by the RCW, when you perform bitbake qoriq-composite-firmware you will build the image of the firmware (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. 

bitbake qoriq-composite-firmware will create 3 options:

firmware_ls1046ardb_uboot_nandboot.img
firmware_ls1046ardb_uboot_norboot.img
firmware_ls1046ardb_uboot_sdboot.img

select the sdboot option.

0 Kudos
Reply

1,323 Views
pholden
Contributor III

Thanks, I ran bitbake and used "dd" to push the sdboot file to the SD card at offset block 8.  I now have the following when I run sd_bootcmd:

 

=> run sd_bootcmd
Trying load from SD ..
Device: FSL_SDHC
Manufacturer ID: 3
OEM: 5344
Name: SK32G
Bus Speed: 50000000
Mode: SD High Speed (50MHz)
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 29.7 GiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes

MMC read: dev # 0, block # 32768, count 81920 ... 81920 blocks read: OK
## Loading kernel from FIT Image at a0000000 ...
Using 'ls1046ardb' configuration
Trying 'kernel' kernel subimage
Description: ARM64 Kernel
Type: Kernel Image
Compression: gzip compressed
Data Start: 0xa00000d0
Data Size: 14994654 Bytes = 14.3 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x84080000
Entry Point: 0x84080000
Verifying Hash Integrity ... OK
## Loading ramdisk from FIT Image at a0000000 ...
Using 'ls1046ardb' configuration
Trying 'initrd' ramdisk subimage
Description: initrd for arm64
Type: RAMDisk Image
Compression: uncompressed
Data Start: 0xa0e4ce5c
Data Size: 21968191 Bytes = 21 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x00000000
Entry Point: 0x00000000
Verifying Hash Integrity ... OK
## Loading fdt from FIT Image at a0000000 ...
Using 'ls1046ardb' configuration
Trying 'ls1046ardb-dtb' fdt subimage
Description: ls1046ardb-dtb
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0xa2370ec4
Data Size: 39209 Bytes = 38.3 KiB
Architecture: AArch64
Load Address: 0x90000000
Verifying Hash Integrity ... OK
Loading fdt from 0xa2370ec4 to 0x90000000
Booting using the fdt blob at 0x90000000
Uncompressing Kernel Image
Loading Ramdisk to 8eb0c000, end 8ffff53f ... OK
Loading Device Tree to 000000008eaef000, end 000000008eb0b928 ... OK
PCIe1: pcie@3400000 Root Complex: no link
PCIe2: pcie@3500000 Root Complex: no link
PCIe3: pcie@3600000 Root Complex: no link
WARNING failed to get smmu node: FDT_ERR_NOTFOUND
WARNING failed to get smmu node: FDT_ERR_NOTFOUND

Starting kernel ...

 

0 Kudos
Reply

1,322 Views
pholden
Contributor III

When I restart the dev board and do not stop at uboot prompt,  I get the following on debug port:

 

Type [C-a] [C-h] to see available commands
Terminal ready
NOTICE: UDIMM 18ADF2G72AZ-3G2R1

NOTICE: 16 GB DDR4, 64-bit, CL=15, ECC on, CS0+CS1
NOTICE: BL2: v2.4(release):LSDK-21.08-0-g340b20bcb
NOTICE: BL2: Built : 14:22:32, May 9 2025
NOTICE: BL2: Booting BL31
NOTICE: BL31: v2.4(release):LSDK-21.08-0-g340b20bcb
NOTICE: BL31: Built : 14:22:32, May 9 2025
NOTICE: Welcome to ls1046ardb BL31 Phase


U-Boot 2021.04 (May 09 2025 - 14:22:07 -0400)

SoC: LS1046AE Rev1.0 (0x87070010)
Clock Configuration:
CPU0(A72):1800 MHz CPU1(A72):1800 MHz CPU2(A72):1800 MHz
CPU3(A72):1800 MHz
Bus: 600 MHz DDR: 2100 MT/s FMAN: 700 MHz
Reset Configuration Word (RCW):
00000000: 0c150012 0e000000 00000000 00000000
00000010: 11335559 40005012 60040000 c1000000
00000020: 00000000 00000000 00000000 00238800
00000030: 20124000 00003101 00000096 00000001
Model: LS1046A RDB Board
Board: LS1046ARDB, boot from SD
CPLD: V2.3
PCBA: V3.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
Using SERDES1 Protocol: 4403 (0x1133)
Using SERDES2 Protocol: 21849 (0x5559)
NAND: 512 MiB
MMC: FSL_SDHC: 0
Loading Environment from MMC... *** Warning - bad CRC, using default environment

EEPROM: NXID v1
In: serial
Out: serial
Err: serial
SEC0: RNG instantiated
Net:
MMC read: dev # 0, block # 18432, count 128 ...
Fman1: Uploading microcode version 106.4.18
eth0: fm1-mac3, eth1: fm1-mac4, eth2: fm1-mac5, eth3: fm1-mac6, eth4: fm1-mac9, eth5: fm1-mac10
Hit any key to stop autoboot: 5

 

 

bootargs is still pointing to /dev/ram0:

=> printenv bootargs
bootargs=console=ttyS0,115200 root=/dev/ram0 earlycon=uart8250,mmio,0x21c0500 mtdparts=1550000.spi-0:1m(rcw),15m(u-boot),48m(kernel.itb);7e800000.flash:16m(nand_uboot),48m(nand_kernel),448m(nand_free)

So it's not at all trying to boot from microSD.  I checked the switches (as defined in user guide for LS1046ARDB) and they look fine.

0 Kudos
Reply

1,104 Views
Oswalag
NXP TechSupport
NXP TechSupport

Hello, 

You don't have to modify bootargs, or any other configuration. 

Please follow the LLDPUG with an official branch like Mickledore, the built images are configured for SDcard options, no more configurations needed and the firmware should give you something like 10 seconds to stop in U-boot.

https://www.nxp.com/docs/en/user-guide/UG10081_LLDP_6.1.55_2.2.0.pdf

After you install the machine requirements you can also use as reference the link below to build the images.

https://github.com/nxp-imx/meta-nxp-desktop/blob/lf-6.1.55-2.2.0-mickledore/README.md

Also make sure you are using the correct version of flex-installer, in this case flex-installer_1.14.2110.lf to deploy the Layerscape LDP images in the SD card.

0 Kudos
Reply

1,087 Views
pholden
Contributor III

Thanks for the update, I'll try this out next.  Right now, I am just using TFTP/Ext2Load because I had to start making progress on the driver and user app I'm working on for my client.  But I will definitely try your suggestion and  let you know how I make out.

 

Thanks again!

 

0 Kudos
Reply