I wanted to boot my Raspberry Pi 4 from an external SSD connected via a USB-to-SATA cable. According to Jeff Geerling's video, it's pretty straightforward using the latest version of the firmware - but try as I might I couldn't get it to start. Tried re-imaging the SSD; also used the SD card copier, to copy the SD contents across to the SSD; but regardless it didn't seem to detect on boot (it was accessible after starting up using the SD, so I knew it probably wasn't a powering issue).
After much muddling around, came across rpi-eeprom-config, and realised that BOOT_ORDER was was set to 0x1 -- according to this page that's SD card mode. Also according to that page, the default is supposed to be 0xf41
(try SD, if not found, try USB). Ran sudo rpi-eeprom-config --edit
, changed the value, saved, rebooted and voila, the SSD was bootable, and has been seemlessly working since then.
I'm sure this info has been posted elsewhere, but given I couldn't find it, posting here in case it's of use to someone else.