
While I haven't tested this patchset - I have tested SPI booting with v2022.01 after applying lots of patches. I found that the magic value reported by bootrom when booting from SPI will be 0x34 on clearfog. The current sources only handle 0x32, hence having or not having SPL_SPI will always lead to returning to the bootrom.
Please consider pulling in this patch: https://github.com/SolidRun/u-boot/commit/f4f8a69740a8415c05359e01e51650f445... I can send it separately if you like.
Tested with the patch on a Clearfog Base: ================== Without SPL_SPI same return to BootROM ... mv_ddr: completed successfully Trying to boot from BOOTROM Returning to BootROM (return address 0xffff05c4)... BootROM: Image checksum verification PASSED
U-Boot 2023.04-rc2... ================== With SPL_SPI loads directly from SPI ... mv_ddr: completed successfully Trying to boot from SPI
U-Boot 2023.04-rc2... ==================
I'm not sure how to run proper timing tests on the process, but stopwatch timing just between seeing "Trying to boot" and "U-Boot 2023.04-rc2" showed the return to BootROM under 1 second, and the direct from SPI around 4 seconds. I thought the goal of loading from SPI directly was speed, but returning to BootROM is significantly faster on this board.
which I have tested by adding these config options:
I tested the new spi_defconfig with and without SPL_SPI; no other changes