We have built a custom board using Rev 2.0 of the LS1021A in which the UART pins are not accessible.
Our goal is to boot from SPI flash and interact with U-Boot through LPUART.
Since the Linux SDK for LS1021A v0.4 does not support building a PBL for SPI flash, we have built our own. Our PBL is based on the one shipped in IFC NOR Bank 0 of the TWR board but modified with our custom RCW and a "Boot Location Pointer" of 40001000 (offset 0x1000 of SPI flash).
Our PBL is as follows:
08080010 00000000 00000000 10000000
10000000 08007922 60025A00 81046000
00000000 00000000 00000000 2003E800
00004504 24BB3140 00000000 00000000
After applying a 64-bit byte swap to the PBL before programming (as suggested in this post), the LS1 is able to successfully read in the PBL, verify the CRC, jump to the boot entry location, and read about 3KB of the U-Boot built from the Linux SDK for LS1021A v0.4 with no modifications (other than setting UBOOT_CONFIG ??= "qspi" in meta-fsl-arm/conf/machine/ls1021atwr.conf).
At this point in the boot process, reading from SPI flash has ceased, nothing has come out of LPUART, and LPUART is unresponsive.
We are unsure whether this means that something went wrong or that U-Boot is waiting for input over UART.
If you have any advice or insight into the build process or SPI booting with LPUART enabled, we would greatly appreciate it.
Thank you in advance!