FEL/USBBoot

To boot over USB a number of steps needs to be taken


 * 1) Make the device enter FEL mode
 * 2) Initialize the board using a special u-boot SPL image for your board
 * 3) Load the code that should be executed. Normally u-boot

fel write 0x2000 bin/fel-boot-cubieboard.bin fel exe 0x2000 fel write 0x4a000000 u-boot.bin fel exe 0x4a000000

u-boot SPL FEL
SPL FEL is a special stripped down u-boot SPL which only initializes the board. It is built from the u-boot sources by building a board variant with _FEL in their name which produces an SPL FEL for that board in u-boot/spl/u-boot-spl.bin

For convenience there is prebuilt SPL FEL binaries for some common boards in sunxi-tools/bin/

usb-boot script
In sunxi-tools you can find a script which automates USB booting of Linux

Usage: ./usb-boot board u-boot.bin [boot.scr|-] [kernel script.bin [initramfs]]

board is the type of board you have. Names which SPL FEL image to use (see bin folder), or alternatively a full path to the SPL FEL binary to use.

u-boot.bin is the path of the u-boot binary you want to use.

boot.scr is an optional boot script for autobooting from RAM. There is a default script used if none is provided. Use - to not load a boot script.

kernel is the path to your kernel uImage.

script.bin is the path to script.bin for your board

initramfs is an optional initramfs/initrd image (u-boot mkimage format).