We are building a customized hardware based on LS1043ARDB. We replaces IFC NOR with QSPI.
I followed the code in LS1043AQDS and LS1046ARDB. And made changes to the u-boot code to add support for QSPI.
I have following questions -
1) I downloaded the RCW source code from https://source.codeaurora.org/external/qoriq/qoriq-components/rcw.
and generated the .bin file. I see some instructions in qspi_readme to flash this image on the flash.
There is also config files in u-boot/board/freescale/ls1043ardb. For eg, ls1043_nand_rcw. cfg. I copied the ls1043aqds_rcw_qspi.cfg to LS1043ardb.
Question -What is the difference between the .bin file generated using RCW source code and the .cfg file which has the raw digits.
When you boot the first time, is there a particular order in which you need them? Do you need both .bin and .cfg or either or to boot a new QSPI flash?
2) Question - Do I need a new PBL image? How do I compile a new Preboot loader image?
Any help appreciated.
Thank you so much Yiping for your reply.
One more question.
What do I need to change in the code to configure it to use hard-code RCW?
I know we need to change the cfg_rcw_src value to 0x9e but is there anything else you change in the code?
In CodeWarrior initialization file, you could define "USE_SAFE_RCW = True" to use hard-coded RCW on the target board.
You could refer to section 1 in Use CodeWarrior for ARMv8 to Debug U-boot and Linux Kernel and Bring up Bare Boards.
Thank you for your reply. We are using LSDK 19.06 and not LSDK 20.
1) Is it necessary to use TF-A image? If not, can we continue to use PPA with LSDK 19.06?
2) If I use non TF-A image, is modifying u-boot/board/freescale/ls1043ardb/ ls1043_qspi_rcw. cfg enough?
Dont I need the rcw_qspiboot.rcw from rcw source code at all?
3) For non TF-A, do I still need a separate process to build PreBoot Loader (PBL image)?
4) Modifying ls1043ardb_qspi_defconfig and rcw_qspi.cfg will generate RCW + PBI + U-boot?
4) For the first time boot, I read that you can use Hard coded RCW so it will bypass writing RCW to the flash.
Is writing the cfg_rcw_src registers the value of 0x9e enough ? What other changes you need for first time booting from QSPI flash?
Thank you so much for answering.
In recent released LSDK TF-A images are generated, bl2_<boot_mode>.pbl( includes RCW+PBI+BL2), TF-A fip.bin includes (BL31 + TEE (BL32) + U-Boot/ UEFI (Bl33)).
In u-boot build configuration file ls1043ardb_tfa_defconfig will be used, so ls1043aqds_rcw_qspi.cfg will not be used to generate u-boot image.
If you use non TF-A image, you need to modify u-boot/board/freescale/ls1043ardb/ ls1043_qspi_rcw. cfg for your customized target board. U-boot configuration file ls1043aqds_qspi_defconfig will be used，the generated u-boot binary image includes RCW.