The goal of the document is to illustrate how to in-system program images to flash devices of SP7350 platforms. SP7350 supports in-system for eMMC devices, SPI-NOR flashes, SPI-NAND flashes and 8-bit NAND flashes. For details, please follow the following steps.
Table of Contents |
---|
Download and compile source files of SP7350
Please refer to: A guide to downloading and compiling SP7350 code
for downloading and compiling sources for SP7350 platforms.
Copy ISPBOOOT.BIN to a USB flash drive
After completion of compilation processes, a binary file ISPBOOOT.BIN is stored in out folder in project top folder. Please copy the ISPBOOOT.BIN file to root directory of a USB flash drive.
Note that the USB flash drive should be formatted to DOS/Windows FAT32 or FAT16 file-system. SP7350 can only load files from an USB flash drive which is formatted to FAT32 or FAT16 file-system. Note that FAT32 or FAT16 file-system should be in the first or the sole partition of the USB flash drive.
Set boot-selection switch to “Boot from USB”
Set boot-selection switch to “Boot from USB”. For example, if you are using SP7350 Evaluation Board, please set boot-select switch SW2 to all OFF (1111) and SW3 to OFF-OFF-ON-OFF (1101) for booting from a USB flash drive. Refer to picture below:
...
Refer to Appendix for details of boot selection switch of SP7350 Evaluation Board and boot-strap pins of SP7350.
Write all images to flash device
Plug your USB flash drive which contains ISPBOOOT.BIN into an USB socket of SP7350 platform. Turn on power of SP7350 platform. After power on, SP7350 starts to ”boot from USB” drive. It first loads x-boot from ISPBOOOT.BIN in the USB flash drive. x-boot loads fip and U-Boot images. U-Boot will then loads all images, verify md5-checksum and write them to flash device one by one. Wait for writing to complete. Finally, you will see screen like:
...
“ISP all: Done” means all images were written to eMMC successfully.
Boot system from flash device
Set boot-select switch to boot from flash device, for example, in previous step, you write images to an eMMC device, please set boot select switch to “boot from eMMC device”. If you are using SP7350 Evalution board, please set boot-selection switch SW2 to all OFF (1111) and SW3 to all OFF (1111) for booting from the eMMC device. Refer to picture below:
...
Now, you are ready to boot SP7350 from eMMC device. Turn on power of SP7350 platform again to boot system.
In-system program (ISP) from an SD card
Note that you can also copy your ISPBOOOT.BIN file to root directory of a micro SD card to do in-system-program to a flash device. The SD card be formatted to DOS/Windows FAT32 or FAT16 file-system. Note that SP7350 only detects ISPBOOOT.BIN in the first partition.
Set boot-selection switch to “boot from SD card”. For example, if you are using SP7350 Evaluation Board, please set boot-selection switch SW2 to all OFF (1111) and SW3 to OFF-OFF-ON-ON (1100) for booting from SD card.
...
Plug your SD card into micro SD socket of SP7021 board, and then turn on power of SP7350 platform. SP7350 will start to do ISP from SD card as in-system program from a USB flash drive.
Appendix
Boot-selection switch of SP7350 Evaluation Board
Refer to definition of boot selection switch of SP7350 Valuation Board below:
Boot devices | DIP-SW2 | DIP-SW3 | ||||||
1 | 2 | 3 | 4 | 1 | 2 | 3 | 4 | |
eMMC boot | x | x | 1 | x | 1 | 1 | 1 | 1 |
SPI-NAND boot | x | x | 1 | x | 1 | 1 | 1 | 0 |
USB boot | x | x | 1 | x | 1 | 1 | 0 | 1 |
SDC boot | x | x | 1 | x | 1 | 1 | 0 | 0 |
SPI-NOR boot | x | x | 1 | x | 1 | 0 | 1 | 1 |
8-bit NAND | x | x | 1 | x | 1 | 0 | 0 | 0 |
“1” means switch OFF while “0” means switch ON. “x” means don’t care.
Boot-strap pins of SP7350
Refer to definition of boot-strap pins of SP7350 below:
Boot-strap pins of SP7350 | Boot devices | |||||||
MX6 | MX5 | MX4 | MX3 | MX2 | MX1 | MX0 | ||
1 | 1 | 1 | 1 | 1 | x | x | eMMC boot | |
1 | 1 | 1 | 0 | 1 | x | x | SPI-NAND boot | |
1 | 1 | 0 | 1 | 1 | x | x | USB boot | |
1 | 1 | 0 | 0 | 1 | x | x | SDC boot | |
1 | 0 | 1 | 1 | 1 | x | x | SPI-NOR | |
1 | 0 | 0 | 0 | 1 | x | x | 8-bit NAND |