Files
monok8s/docs/flashing-usb.md

1.5 KiB

We have two type of flashing

  1. (Production) Copy the files into the USB drive. Then boot into initramfs. Then flash the image into the eMMC.
  2. Flash the image directly into USB. And boot using it.

Flashing into eMMC

  1. make release
  2. Format the USB in vfat
  3. Copy out/[RELEASE].img.gz and out/board.itb to your usb drive's root
  4. Run the following commands one step at a time
usb start
usb tree
fatls usb 0:1   # For fat
ext4ls usb 0:1  # For ext4 if you insist
fatload usb 0 0x80000000 board.itb
extload usb 0 0x80000000 board.itb

setenv bootargs "console=ttyS0,115200 earlycon=uart8250,mmio,0x21c0500 root=/dev/ram0 rootwait rw"
bootm 0x80000000
  1. Once booted into initramfs, run
flash-emmc.sh
  1. Reboot into uboot, boot using the following commands
setenv kernel_addr_r 0xa0000000;
setenv bootargs "${bootargs_console} root=emmc:2 bootpart=A rw rootwait delayacct rootfstype=ext4";
ext4load mmc 0:2 ${kernel_addr_r} /boot/kernel.itb && bootm ${kernel_addr_r};
  1. You'll soon be booted into the console. After that, you can tail /var/log/monok8s/bootstrap.log to see the bootstrapping status

Flashing into USB drive

This will make your USB drive be the primary booting device.

On MacOS

  1. ./macos/flashusb.sh

On Windows (Work In Progress)

usb start;
setenv kernel_addr_r 0xa0000000;
setenv bootargs "${bootargs_console} root=usb:2 bootpart=A rw rootwait delayacct rootfstype=ext4";
ext4load usb 0:2 ${kernel_addr_r} /boot/kernel.itb && bootm ${kernel_addr_r};