Stuck when booting from external USB SSD

When trying to boot OpenWrt x86-64 using a 2.5" SATA-to-USB adapter (StarTech ASM1051E), I get stuck on waiting for root device PARTUUID=. The only fix I've found is to disable UASP by adding usb-storage.quirks=174c:55aa:u to /boot/grub/grub.cfg as a boot parameter. My question though is, if other Linux distros boot just fine with UASP enabled then why can't OpenWrt?

Things to note:

  • Used dd to image latest openwrt-22.03.2-x86-64-generic-ext4-combined-efi.img
  • OpenWrt boots from devices that don't support UASP (flash drive, microSD-to-USB adapter)
  • Issue only occurs on certain USB ports on my desktop but every USB port on my laptop
  • Pre-packaging every USB-related kmod package (using https://firmware-selector.openwrt.org) doesn't solve the problem
  • Tried booting with and without powered USB hub
  • Tried booting both UEFI and BIOS mode

Doing some quick research, this config doesn't disable anything. It specifies your device as an USB-attached storage device.

Why are you under the belief this disables something?

That option forces legacy usb-storage driver instead of uasp.

Bump 4 months later.