I am trying to do something a little bit different: I'm trying to boot OpenWrt not off its flash memory, but rather off USB.
My candidate is a My Book Live Duo that usually boots off one of the two SATA drives since it has quite insufficient flash memory.
So far I had success booting an initramfs image from USB (kernel.img is the initramfs kernel image, kernel.dtb is obviously the device tree file):
usb reset fatload usb 0:1 1000000 /kernel.img fatload usb 0:1 1800000 /kernel.dtb bootm 1000000 - 1800000
This successfully loads and boots the initramfs build from a FAT formatted USB stick.
But of course, an initramfs image is not suitable for regular operation since it would not retain configuration. Booting a full OpenWrt uImage fails. I'm thinking it needs to be compiled in a special way to work with USB to carry rootfs/overlayfs. (Maybe you can tell I'm not completely familiar with the innards of OpenWrt.)
Searching the OpenWrt/LEDE pages and forums and the rest of the web, I came up empty. Is there anyone who can shed a little light on this? I'm thinking this would be beneficial to other people and devices, too.