Hello John and Richard,
I greatly appreciate your help on my project. After spending a considerable time with the tools and documentation (and with your advice), I was finally able to boot the test_board petalinux project entirely from QSPI.
There were several issues that needed to be addressed:
1) When working with Petalinux 2020 version - there were several broken files, and I could not get the petalinux project to build out-of-the-box. Many multiple definitions and missing references. I suspect that there is a difference in the older vs newer gcc libraries that was causing me grief.
In short, I was never able to build the test_board petalinux project under any circumstances using 2020 Vivado, Vitis and Petalinux with updated Ubuntu and packages.
2) My next problem was with the 2021 versions of everything. I was able to fully build everything for booting from SD - but could not get it to boot from QSPI.
The Xilinx instructions for modifying the process were unclear at best, and wrong in many instances when using 2021 versions of everything.
3) I managed to get the attention form someone at Xilinx, and he pointed me to this page:
https://support.xilinx.com/s/article/000033588?language=en_USThis page replaces the instructions for building the petalinux project, and worked perfectly for me.
4) I also found one issue with the Trenz provided tools that tripped me up.
Specifically, when programming the QSPI with the Vivado HW manager, and selecting the option to "Update the Entire Device", the flash process consistently failed (using fsbl_flash.elf)
I chose this option because I wanted to erase the entire flash, but it looks like the fsbl flash elf does not do this. However, when selecting the option to update only the size of the configuration file, then the programming completed correctly.
I think there is a bug in the generated special fsbl flash elf that does not work correctly when attempting to erase the entire QSPI device. It stops erasing at 0x4000000 - which is not the entire device and not sufficient for the BOOT.bin file.
"sf erase 0 4000000"
Thank you again for your help.
Dave Rector
*:^)