1 ------------------------------------------------- 2 Simple steps used to test the QSPI at U-Boot 3 ------------------------------------------------- 4 5 For #1, build the patched U-Boot and load MLO/u-boot.img 6 7 ---------------------------------- 8 Boot from another medium like MMC 9 ---------------------------------- 10 11 U-Boot# mmc dev 0 12 mmc0 is current device 13 U-Boot# fatload mmc 0 0x82000000 MLO 14 reading MLO 15 55872 bytes read in 8 ms (6.7 MiB/s) 16 U-Boot# fatload mmc 0 0x83000000 u-boot.img 17 reading u-boot.img 18 248600 bytes read in 19 ms (12.5 MiB/s) 19 20 -------------------------------------------------- 21 Commands to erase/write u-boot/mlo to flash device 22 -------------------------------------------------- 23 U-Boot# sf probe 0 24 SF: Detected S25FL256S_64K with page size 256 Bytes, erase size 64 KiB, total 32 MiB, mapped at 5c000000 25 SF: Warning - Only lower 16MiB accessible, Full access #define CONFIG_SPI_FLASH_BAR 26 U-Boot# sf erase 0 0x10000 27 SF: 65536 bytes @ 0x0 Erased: OK 28 U-Boot# sf erase 0x20000 0x10000 29 SF: 65536 bytes @ 0x20000 Erased: OK 30 U-Boot# sf erase 0x30000 0x10000 31 SF: 65536 bytes @ 0x30000 Erased: OK 32 U-Boot# sf erase 0x40000 0x10000 33 SF: 65536 bytes @ 0x40000 Erased: OK 34 U-Boot# sf erase 0x50000 0x10000 35 SF: 65536 bytes @ 0x50000 Erased: OK 36 U-Boot# sf erase 0x60000 0x10000 37 SF: 65536 bytes @ 0x60000 Erased: OK 38 U-Boot# sf write 82000000 0 0x10000 39 SF: 65536 bytes @ 0x0 Written: OK 40 U-Boot# sf write 83000000 0x20000 0x60000 41 SF: 393216 bytes @ 0x20000 Written: OK 42 43 For #2, set sysboot to QSPI-1 boot mode(SYSBOOT[5:0] = 100110) and power 44 on. ROM should find the GP header at offset 0 and load/execute SPL. SPL 45 then detects that ROM was in QSPI-1 mode (boot code 10) and attempts to 46 find a U-Boot image header at offset 0x20000 (set in the config file) 47 and proceeds to load that image using the U-Boot image payload offset/size 48 from the header. It will then start U-Boot. 49