This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/AM5728: QSPI boot issue

Part Number: AM5728

Tool/software: Linux

Hi,

we are designing a custom board which we are planning to use qspi booting.Using commands below, we write MLO,u-boot.img,am57xx-evm-reva3.dtb,zImage files to the QSPI NOR flash:

U-Boot # tftp ${loadaddr} MLO
U-Boot # sf write ${loadaddr} 0x00000 0x40000
U-Boot # tftp ${loadaddr} u-boot.img
U-Boot # sf write ${loadaddr} 0x40000 0x100000
U-Boot # tftp ${loadaddr} am57xx-evm-reva3.dtb
U-Boot # sf write ${loadaddr} 0x140000 0x80000
U-Boot # tftp ${loadaddr} zImage
U-Boot # sf write ${loadaddr} 0x1e0000 0x800000

then, the u-Boot can start up successfully, but when I type:
U-Boot # sf read ${loadaddr} 0x1e0000 0x800000
U-Boot # sf read ${fdtaddr} 0x140000 0x80000
U-Boot # bootz ${loadaddr} - ${fdtaddr}

the kernel do not start up, it shows "Bad Linux ARM zImage magic".

I read the data in QSPI NOR flash using "sf read" command, I find the reading data is different to the source data from tftp.why? Is it related to qspi memory map?
thanks.