I have just bought Raspberry Pi 4 Model B with 4 Gb of RAM.
It successfully boots from microSD card. But can't boot from USB. The reason of this is old bootloader - my board has pieeprom-2020-04-16.bin
.
So we need to update bootloader to allow USB boot.
With the Raspbian or Ubuntu 20.04 LTS system which is already installed to MicroSD card it is possible by downloading the related package and flashing this bootloader to the EEPROM:
cd ~/Downloads
wget http://ports.ubuntu.com/pool/multiverse/r/rpi-eeprom/rpi-eeprom_9.0-1ubuntu1_armhf.deb
dpkg -x rpi-eeprom_9.0-1ubuntu1_armhf.deb rpi-eeprom
sudo rpi-eeprom-update -d -f rpi-eeprom/lib/firmware/raspberrypi/bootloader/critical/pieeprom-2020-09-03.bin
For Ubuntu MATE 20.10 installed on the microSD card this maybe done in simpler way:
sudo rpi-eeprom-update -d -f /lib/firmware/raspberrypi/bootloader/critical/pieeprom-2020-09-03.bin
and then reboot RaspberryPi to take effect. Then remove microSD card.
With newer bootloader the RPi 4 will be able to boot the latest Ubuntu MATE 20.10 images directly from USB flash/SSD:
Troubleshooting:
If you see that RPi is demanding 'sdcard'
device on boot (so does not boot from USB) - then write 2020-08-20-raspios-buster-armhf-lite.zip
image to the SDcard, login to it with pi and raspberry, run sudo raspi-config
, go to Update and wait for raspi-config
reload, then go to 6 Advanced Options → A7 Boot ROM version → E1 Latest, select Yes and then 6 Advanced Options → A6 Boot order → B1 USB boot, reboot, poweroff, remove SDcard. Then connect USB flash/SSD and power on the RPi.
Notes:
You can always check the bootloader version with sudo vcgencmd bootloader_version
.