Booting over TFTP

This guide will presume you have a suitable TFTP server set up, for example tftpd-hpa and as such will not explain how to set them up or how to use them.

Booting from U-Boot command-line

These methods are done by running the commands on a serial console, the pins of which can be found on the Quick Start wiki page, or via the example uenv.txt files at the bottom. If these for some reason don't work, please ensure that "rw" is present in bootargs and restart your TFTP servers.

The first block is the version with only TFTP, this will run the kernel.fit from your local machine but will not run root filesystem. This means that it will only handle Starkl for the 4Kopen board.

setenv ethaddr YOUR_BOARDS_MAC_ADDRESS

setenv machineaddr YOUR_COMPUTERS_IP_ADDRESS

setenv autoload no

dhcp

setenv load_addr 0x98000000

setenv console ttyAS0

setenv bootargs_st "bpa2parts=BPA2_Region|aud-coded|aud-transcoded|vid-coded|vid-transcoded|vid-raw-input|vid-output-0|vid-decimated-1|vid-copied-1|vid-macroblock-0|vid-extra-data-0|vid-extra-data-1|v4l2-coded-video-buffers|vid-enc-data-0|vid-enc-scaled-0|vid-encoded-0|v4l2-clut|v4l2-grab|gfx-memory|aud-codec-data|vid-codec-data|aud-output-0|aud-output-1|vid-output-1|vid-decimated-0|vid-copied-0|vid-macroblock-1|blitter|vid-enc-data-1|vid-enc-scaled-1|vid-encoded-1|coredisplay-video|multicom|hades-l3|BPA2_Region0|BPA2_Region1|display-secure:936M:0xC3900000,v4l2-vb2|v4l2-stmc8jpg|v4l2-stmvout|v4l2-compo:184M:0xB8100000,modules|audio:8M:0xB7900000,DTU_PART:16384:0xFEEFC000,BPA2_SecureShm|streaming-shm:2032k:0xFED00000,bigphysarea|te-buffers|m2m-ca3:86M:0x88000000,STMCReserve:32768:0x87FF8000"

setenv bootargs_mem vmalloc=1167m mem=898629632@0x82000000 init=/init

setenv bootargs "root=PARTUUID=8edc4cfc-02 rootwait rw init=/sbin/init console=${console},115200 ${bootargs_mem} ${bootargs_st}"

tftp $load_addr ${machineaddr}:kernel.fit

bootm $load_addr

Booting from uenv.txt

For Starkl over TFTP, the required uenv.txt is as follows:

ethaddr=YOUR_BOARDS_MAC_ADDRESS_HERE
machineaddr=YOUR_COMPUTERS_IP_ADDRESS_HERE
autoload=yes
load_addr=0x98000000
bootcmd=run boot_tftp
boot_tftp=dhcp ${load_addr} ${machineaddr}:kernel.fit; bootm $load_addr;