Maybe I should be more specific:
I flashed the QSPI with an image using Xilinx's SDK (adjusting SW5 before and after). I removed the SD card, then power-cycled, and found it unable to boot... I would have expected it to fall back on the QSPI, but instead, it seems obsessed with the missing SD card:
ZynqMP> Xilinx Zynq MP First Stage Boot Loader
Release 2017.2 Apr 3 2019 - 11:58:54
Xilinx Zynq MP First Stage Boot Loader
Release 2017.2 Apr 3 2019 - 11:58:54
Xilinx Zynq MP First Stage Boot Loader
Release 2017.2 Apr 3 2019 - 11:58:54
NOTICE: ATF running on XCZU9EG/silicon v4/RTL5.1 at 0xfffea000, with PMU firmware
NOTICE: BL31: Secure code at 0x0
NOTICE: BL31: Non secure code at 0x8000000
NOTICE: BL31: v1.3(release):0d9d51a
NOTICE: BL31: Built : 20:01:58, Apr 9 2019
U-Boot 2017.01 (Apr 09 2019 - 16:02:50 -0400) Xilinx ZynqMP ZCU102 revB
I2C: Error, wrong i2c adapter 0 max 0 possible
Error, wrong i2c adapter 0 max 0 possible
ready
DRAM: 4 GiB
EL Level: EL2
Chip ID: xczu9eg
MMC: sdhci_send_command: MMC: 1 busy timeout increasing to: 200 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 400 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 800 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 1600 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 3200 ms.
sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
sdhci@ff170000 - probe failed: -70
sdhci@ff160000: 0 (eMMC)sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
SF: Detected n25q512a with page size 512 Bytes, erase size 128 KiB, total 128 MiB
*** Warning - bad CRC, using default environment
Error, wrong i2c adapter 0 max 0 possible
Error, wrong i2c adapter 0 max 0 possible
In: serial
Out: serial
Err: serial
Bootmode: QSPI_MODE
Net: ZYNQ GEM: ff0e0000, phyaddr 1, interface rgmii-id
eth0: ethernet@ff0e0000
U-BOOT for 6trenz
ethernet@ff0e0000 Waiting for PHY auto negotiation to complete....... done
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
BOOTP broadcast 5
BOOTP broadcast 6
BOOTP broadcast 7
BOOTP broadcast 8
BOOTP broadcast 9
BOOTP broadcast 10
BOOTP broadcast 11
BOOTP broadcast 12
BOOTP broadcast 13
BOOTP broadcast 14
BOOTP broadcast 15
BOOTP broadcast 16
BOOTP broadcast 17
Retry time exceeded
Hit any key to stop autoboot: 0
Device: sdhci@ff160000
Manufacturer ID: 13
OEM: 14e
Name: Q2J54
Tran Speed: 25000000
Rd Block Len: 512
MMC version 5.0
High Capacity: Yes
Capacity: 3.6 GiB
Bus Width: 8-bit
Erase Group Size: 512 KiB
HC WP Group Size: 8 MiB
User Capacity: 3.6 GiB WRREL
Boot Capacity: 16 MiB ENH
RPMB Capacity: 512 KiB ENH
sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
** Bad device mmc 1 **
I tried editing the platform-top.h and commenting out the
#define CONFIG_EXTRA_ENV_SETTINGS \
.
.
.
That allowed me to boot from the QSPI, but I received an "invalid FIT image"-type message from uboot, so I'm not sure if that was the correct thing to meddle with.
Any help is appreciated.