This guide is designed to provide a step-by-step walkthrough on in-system programming (ISP) for flash devices on the SP7350 platform. Covering a range of devices including eMMC, SPI-NOR flashes, SPI-NAND flashes, and 8-bit NAND flashes, the document aims to simplify the ISP process. Follow the outlined steps to seamlessly download, compile, and write images to flash devices, ultimately enabling you to boot the system from these devices.
...
In the configuration menu:
Choose the board you want to build the image for. For instance, press 1 to select "SP7350 Ev Board."
Choose the device from which the system will boot. For example, press 1 to specify booting from the eMMC device. SP7350 supports booting from eMMC, SPI-NAND, SPI-NOR and 8-bit NAND flashes.
Choose the size of your the flash device. For example, press 4 to select an 8 GiB eMMC device.
Choose the root file-system for Linux. For example, press 5 to opt for “Ubuntu MATE MATE 22.04” as the root file-system.
Decide whether to use the overlay file system. For example, press 2 to choose not to use an overlay file-system.
Choose image security. Press 1 to select building “No secure” images.
Once you have completed the configuration selections in the menu, the system will start configuring the building environment. This process may take tens seconds or even a few minutes, depending on your computer's performance. Please wait patiently for the configuration process to conclude.
Please note that the system takes additional time to complete its initial run during the configuration process, as it requires the download of the toolchain.
Build Code
After completing all configurations, you are ready to initiate the code build. Execute the following command to commence the build process:
...
xboot.img: Image file of X-Boot, the first-stage boot-loader responsible for DDR SDRAM initialization and training, loading images of TF-A, OP-TEE, U-Boot, and initiating the execution of TF-A.
u-boot.img: Image file of U-boot, the second-stage boot-loader responsible for loading and running the Linux kernel image.
uImage: Image file of the compressed Linux kernel with a U-Boot header.
rootfs.img: Image file of the root file-system of Linux.
dtb: Device-tree blob file. Note: dtb has been merged into the U-Boot image. This copy is provided for your reference; U-Boot will load the dtb inside it.
fip.img: Image file comprising images of Trusted Firmware-A (TF-A) and Open Portable Trusted Execution Environment (OP-TEE).
ISPBOOOT.BIN: Binary file containing X-boot, U-boot, and all other images. It is for in-system programming.
...