Booting Yggdrasil OS on SiFive HiFive Unmatched Rev B RISC-V board:

* TODO: proper format for initrd image

Prerequisites:

* OpenSBI + u-boot (can use the u-boot from the Freedom U SDK that comes with the board)
* yggdrasil-kernel.bin
* initrd.img

Steps:

1. Copy yggdrasil-kernel.bin and initrd.img into some directory and start a TFTP server there
2. Connect to HFU's serial port, ethernet and enter u-boot
3. Run the following commands in u-boot:

### If using DHCP

=> setenv autoload no
=> setenv initrd_addr_r 0x90000000
=> dhcp
=> tftpboot ${initrd_addr_r} <SERVER IP>:initrd.img
=> tftpboot ${loadaddr} <SERVER IP>:yggdrasil-kernel.bin
=> tftpboot ${fdt_addr_r} <SERVER IP>:hifive-unmatched-a00.dtb
=> fdt resize
=> booti ${loadaddr} ${initrd_addr_r}:60000000 ${fdt_addr_r}

Two-liner (server is 13.0.0.1, board is 13.0.0.2):

setenv ipaddr 13.0.0.2;setenv initrd_addr_r 0x90000000;tftpboot ${initrd_addr_r} 13.0.0.1:initrd.img;tftpboot ${loadaddr} 13.0.0.1:yggdrasil-kernel.bin;tftpboot ${fdt_addr_r} 13.0.0.1:hifive-unmatched-a00.dtb;fdt resize
booti ${loadaddr} ${initrd_addr_r}:60000000 ${fdt_addr_r}

One-liner without initrd

setenv ipaddr 13.0.0.2;tftpboot ${loadaddr} 13.0.0.1:yggdrasil-kernel.bin;tftpboot ${fdt_addr_r} 13.0.0.1:hifive-unmatched-a00.dtb;fdt resize;booti ${loadaddr} - ${fdt_addr_r}
