apm821xx: MBL DUO-only: enable USB-Storage for boot from USB support
authorChristian Lamparter <chunkeey@gmail.com>
Sat, 17 Feb 2024 20:16:12 +0000 (21:16 +0100)
committerChristian Lamparter <chunkeey@gmail.com>
Sat, 2 Mar 2024 13:08:07 +0000 (14:08 +0100)
commit8b0407d15d2ffc8eac341bbf2ad585cb8efd1163
treeb533ea51f8d64ab8bcf771c613710378e7e28448
parent7e53473ee87244ee9dd462fb82b24b1cf26e93a7
apm821xx: MBL DUO-only: enable USB-Storage for boot from USB support

it is possible to boot and run OpenWrt from an image on an USB-Stick
on the MyBook Live DUO. (No, the MyBook Live Single does NOT have an
USB-Port and attempts at enabling it sadly all failed... so far).

To do that:
First, prepare a USB-Stick by writing the raw and uncompressed OpenWRT
factory image for the device onto the stick (i.e.
 # gunzip -c openwrt-*wd_mybooklive*-factory.img.gz > /dev/sd$XX).

Then enter the u-boot via an attached TTL/CMOS 3.3V cable adapter and
give the following commands a try in the:

 usb start; sata init
 ext2load usb 0:1 ${fdt_addr_r} /boot/apollo3g.dtb
 ext2load usb 0:1 ${kernel_addr_r} /boot/uImage
 setenv bootargs 'root=/dev/sdc2 rw rootfstype=squashfs,ext4 rootdelay=5'
 run addtty; bootm ${kernel_addr_r} - ${fdt_addr_r}

Notes:
 - booting from USB-Sticks takes a long time! Be prepared to wait a few
   minutes. (~3 minutes for 4 MiB /boot/uImage file on a USB 2.0 Stick)

 - the bootargs part 'root=/dev/sdX2' depends on how many HDDs/SSDs are
   slotted in. (if none: then use sda, if one: sdb. if two: sdc)

 - rootdelay is important as the storage on the USB-Sticks do not show
   up fast enough. 5 seconds might be excessive though.

 - it's possible to concat these commands together in one line and
   write it into u-boot's "bootcmd" environment variable and save the
   environment to make the device to always boot from USB from then on.

   if you have accidentally overridden the 'bootcmd' and want to return
   to 'spec' enter the following commands :

   setenv bootcmd 'run boot_sata_script_ap2nc'
   saveenv

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
target/linux/apm821xx/sata/config-default