I'm working with a board with Zynq Ultrascale+ on which I have an embedded Linux. I used Petalinux 2017.1 to obtain FSBL and U-Boot. The reason is that Petalinux configures U-Boot according to my hardware definition file, which I find quite convenient.
My first hardware design had just 1 QSPI Flash (with the controller of the processor) and was working fine. But now I added a second SPI device on the PL, and, with the configuration of Petalinux, U-Boot tries to use it as main SPI flash. Since this SPI device is actually not connected to any kind of flash, U-Boot says "spi_flash_probe() failed".
The same happens to me with the SD card: if I add a eMMC, Petalinux takes it as main and tries to boot from there.
This should not happen, since there are configuration options for these 2 parameters when calling "petalinux-config":
Anyway, it doesn't matter what I select there. It doesn't make a different.
Due to this problem, I cannot use the U-Boot generated by Petalinux anymore because my board wouldn't boot automatically:
I cannot store my environment on flash, since it's not working anymore
I cannot read uEnv.txt, since Petalinux is taking the eMMC as main SD.
Does anyone know how I can configure which Flash and SD are the main ones?