Hi,
I am having a persistent problem with LS1046ARDB board which is experiencing spontaneous resets preventing booting into Linux. I initially started with default settings on DIP switches but I could not get it to boot from QSPI. I would always get ASLEEP LED turned on and no console messages.
So far I have been able to get it to start into u-boot but only from SD Card. However, once in u-boot prompt it will stay up for a while but it will reset after a short time.
Is this a known issue with the LS1046ARDB boards?
I had something similar happening with LS1043ARDB when JTAG was attached.
As for versions, mine is REV B2 and u-boot reports following:
Model: #LS1046A RDB Board
Board: #LS1046ARDB, boot from SD
CPLD: V2.3
PCBA: V2.0
Thanks,
Pawel Wodnicki
Console log:
U-Boot SPL 2018.03 (Sep 04 2019 - 19:11:18 +0800)
Initializing DDR....using SPD
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
Trying to boot from MMC1
U-Boot 2018.03 (Sep 04 2019 - 19:11:18 +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: 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: V2.0
SERDES Reference Clocks:
SD1_CLK1 = 156.25MHZ, SD1_CLK2 = 100.00MHZ
I2C: ready
DRAM: Detected UDIMM 18ASF1G72AZ-2G3B1
446 MiB (DDR4, 64-bit, CL=15, ECC on)
SEC0: RNG instantiated
Using SERDES1 Protocol: 4403 (0x1133)
Using SERDES2 Protocol: 21849 (0x5559)
MMC: FSL_SDHC: 0
Loading Environment from MMC... OK
EEPROM: NXID v1
In: serial
Out: serial
Err: serial
SCSI: Net:
MMC read: dev # 0, block # 18432, count 128 ...
Fman1: Uploading microcode version 106.4.18
PCIe0: pcie@3400000 Root Complex: no link
PCIe1: pcie@3500000 Root Complex: no link
PCIe2: pcie@3600000 Root Complex: no link
FM1@DTSEC3 [PRIME], FM1@DTSEC4, FM1@DTSEC5, FM1@DTSEC6, FM1@TGEC1, FM1@TGEC2
Hit any key to stop autoboot: 0
Device: FSL_SDHC
Manufacturer ID: 3
OEM: 5344
Name: SP64G
Bus Speed: 50000000
Mode : SD High Speed (50MHz)
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 59.5 GiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes
620277 bytes read in 40 ms (14.8 MiB/s)
45421123 bytes read in 1945 ms (22.3 MiB/s)
## Loading kernel from FIT Image at 86000000 ...
Trying 'kernel@1' kernel subimage
Description: ARM64 Linux kernel
Type: Kernel Image
Compression: gzip compressed
Data Start: 0x860000dc
Data Size: 10032809 Bytes = 9.6 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x80080000
Entry Point: 0x80080000
Verifying Hash Integrity ... OK
## Loading fdt from FIT Image at 86000000 ...
Trying 'fdt@1' fdt subimage
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x8699183c
Data Size: 27516 Bytes = 26.9 KiB
Architecture: AArch64
Load Address: 0x90000000
Verifying Hash Integrity ... OK
Loading fdt from 0x8699183c to 0x90000000
Booting using the fdt blob at 0x90000000
Uncompressing Kernel Image ... OK
Using Device Tree in place at 0000000090000000, end 0000000090019b7b
WARNING: SEC firmware not running, no kaslr-seed
Starting kernel ...
"Synchronous Abort" handler, esr 0x02000000
elr: 00000000676cf000 lr : 0000000082004684 (reloc)
elr: 0000000081420000 lr : 000000009bd55684
x0 : 0000000090000000 x1 : 0000000000000000
x2 : 0000000000000000 x3 : 0000000000000000
x4 : 0000000080080000 x5 : 0000000000000001
x6 : 00000000000003c9 x7 : 0000000000000000
x8 : 000000009bc4bf00 x9 : 0000000001008000
x10: 000000000a200023 x11: 0000000000000002
x12: 0000000000000002 x13: 000000009bc4ed86
x14: 000000009bc4be3c x15: 000000009bd52b0c
x16: 000000000000003f x17: 000000009bc812e0
x18: 000000009bc4ed70 x19: 000000009bdd6580
x20: 0000000000000000 x21: 0000000000000000
x22: 0000000000000003 x23: 000000009bc80bf8
x24: 000000009bdc9540 x25: 00000000860000dc
x26: 000000009bd556ac x27: 0000000000000400
x28: 0000000080080000 x29: 000000009bd5564c
Resetting CPU ...
resetting ...
U-Boot SPL 2018.03 (Sep 04 2019 - 19:11:18 +0800)
Initializing DDR....using SPD
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
Trying to boot from MMC1
Hello Pawel Wodnicki,
It seems that you are using u-boot image built by yourself, you could use LSDK 19.06 QSPI firmware image.
$ wget https://www.nxp.com/lgfiles/sdk/lsdk1906/firmware_ls1046ardb_uboot_qspiboot.img
You deploy QSPI firmware image with the following commands under SD u-boot.
=> load mmc 0:2 0xa0000000 firmware_ls1046ardb_uboot_qspiboot.img
or
=> tftp 0xa0000000 firmware_ls1046ardb_uboot_qspiboot.img
=> sf probe 0:1
=> sf erase 0 +$filesize && sf write 0xa0000000 0 $filesize
Please refer to the following procedure to deploy SD boot firmware.
wget https://www.nxp.com/lgfiles/sdk/lsdk1906/firmware_ls1046ardb_uboot_sdboot.img
Under Linux prompt:
$ flex-installer -f firmware_ls1046ardb_uboot_sdboot.img -d /dev/mmcblk0 (or /dev/sdx)
Under u-boot:
=> tftp 0xa0000000 firmware_ls1046ardb_uboot_sdboot.img
=> mmc write 0xa0000000 8 1f000
Thanks,
Yiping
Hi yipingwang,
I have not been able to build my own SD Card image yet.
And so far I have been using prebuilt baremetal SD Card image from OpenIL v1.6:
OpenIL-images-v1.6/ls1046ardb-baremetal/sdcard.img
But I will switch to lsdk 1906 image as per your suggestion:
https://www.nxp.com/lgfiles/sdk/lsdk1906/firmware_ls1046ardb_uboot_sdboot.img
Thank you for providing details on how to update QSPI!
Regards,
Pawel Wodnicki
Hi,
After another round of testing using firmware_ls1046ardb_uboot_sdboot.img SD Card image I am convinced that my problems are due to faulty hardware. After plugging SD Card with the new imagem, my board would not boot period. Only once I was able to get some output from u-boot, but this happened after I pressed down on the FPGA chip.
So it is pretty clear that my board is sensitive to mechanical pressure on the FPGA chip as right now this the only way to get LS1046a out of reset (briefly) or even to get ASLEEP diode to light up.
Is this a known manufacturing problem with the LS1046ARDB boards?
Can NXP help fixing my board?
Thanks,
Pawel Wodnicki
Hello Pawel Wodnicki,
You could create a service request from the following link to check your hardware problem.
Commercial Support and Engineering Services | NXP
Thanks,
Yiping
Hi yipingwang,
I only see links to software related support on the Commercial Support and Engineering Services page.
Regards,
Pawel Wodnicki