[WORKAROUND] rpi 4 USB SSD Boot Problem

This is for ARMv8 based devices

[WORKAROUND] rpi 4 USB SSD Boot Problem

Postby Lander1979 » Sat May 23, 2020 5:13 pm

I tried setting up the Rpi 4 to boot from a USB3 SSD using the new rpi 4 experimental eeprom update. I was successful in getting the system up and running. It does work.

However the very first time pacman -Syu is performed the system no longer boots from USB.

EDIT:
Originally I thought that alarm may have flashed the eeprom again, but as moonman has pointed out alarm does not flash the eeprom. It does seem however that alarm comes with it's own version of the *elf and *.dat driver files that it does tend to update.

WORKAROUND:
When pacman overwrites the *.elf and *.dat files in /boot and the USB Boot is broken; To restore USB Boot overwrite the *.elf and *.dat again in the /boot directory as per initial setup.
Last edited by Lander1979 on Sun May 24, 2020 2:53 am, edited 6 times in total.
Lander1979
 
Posts: 27
Joined: Thu Jul 11, 2019 7:35 am

Re: rpi 4 USB SSD Boot Problem

Postby moonman » Sat May 23, 2020 9:05 pm

ArchLinuxARM does not flash EEPROM at all. Your issue must be something else.
Pogoplug V4 | GoFlex Home | Raspberry Pi 4 4GB | CuBox-i4 Pro | ClearFog | BeagleBone Black | Odroid U2 | Odroid C1 | Odroid XU4
-----------------------------------------------------------------------------------------------------------------------
[armv5] Updated U-Boot | [armv5] NAND Rescue System
moonman
Developer
 
Posts: 3387
Joined: Sat Jan 15, 2011 3:36 am

Re: rpi 4 USB SSD Boot Problem

Postby Lander1979 » Sun May 24, 2020 1:05 am

Interesting, part of the experimental boot setup requires that 14 files (*.elf and *.dat) are copied into the /boot partition. Maybe these are being overwritten in the pacman -Syu update, breaking the system that way?
Last edited by Lander1979 on Sun May 24, 2020 2:04 am, edited 1 time in total.
Lander1979
 
Posts: 27
Joined: Thu Jul 11, 2019 7:35 am

Re: rpi 4 USB SSD Boot Problem

Postby moonman » Sun May 24, 2020 1:24 am

EEPROM contains the RPi 4 bootloader and is not touched by ALARM installation. RPi <= 3 don't have EEPROM, instead they use botcode.bin found in the boot partition of the SD card and provided by raspberrypi-bootloader package.

*.elf and *.dat are VideoCore (GPU) firmware files loaded at boot and have nothing to do with EEPROM.
For more detailed explanation: https://www.raspberrypi.org/documentati ... _folder.md

There is also VIA VL805 (USB 3.0 controller) firmware that can be flashed, but once again, ALARM does not flash it automatically in any way.

You need https://aur.archlinux.org/packages/rpi-eeprom-git/ to update eeprom and VL805 firmware.
Pogoplug V4 | GoFlex Home | Raspberry Pi 4 4GB | CuBox-i4 Pro | ClearFog | BeagleBone Black | Odroid U2 | Odroid C1 | Odroid XU4
-----------------------------------------------------------------------------------------------------------------------
[armv5] Updated U-Boot | [armv5] NAND Rescue System
moonman
Developer
 
Posts: 3387
Joined: Sat Jan 15, 2011 3:36 am

Re: rpi 4 USB SSD Boot Problem

Postby Lander1979 » Sun May 24, 2020 1:31 am

Ok, overwriting the /boot on the SSD with the 14 files once more made the system bootable again. So the Experimental USB Boot is deffinitely being broken by pacman overwriting these in the /boot during the initial update.

Thankyou moonman for the clarification on how the eeprom is handled, you have helped me narrow down the issue. I also recall someone mentioning in a forum somewhere that only two of the 14 files are actually responsible/necessary for the USB Boot to work. It would be nice to narrow this down and find the exact files responsible.

For reference the 14 files are all the *.dat and *.elf files from the /boot folder of Raspberry Pi's firmware master branch on Github.
https://github.com/raspberrypi/firmware/tree/master/boot
Lander1979
 
Posts: 27
Joined: Thu Jul 11, 2019 7:35 am

Re: [WORKAROUND] rpi 4 USB SSD Boot Problem

Postby moonman » Sun May 24, 2020 3:25 am

I think I understand what the issue is. raspberrypi-bootloader package has been updated to 20200523-1. See if it solves your issue once it's in repos.
Pogoplug V4 | GoFlex Home | Raspberry Pi 4 4GB | CuBox-i4 Pro | ClearFog | BeagleBone Black | Odroid U2 | Odroid C1 | Odroid XU4
-----------------------------------------------------------------------------------------------------------------------
[armv5] Updated U-Boot | [armv5] NAND Rescue System
moonman
Developer
 
Posts: 3387
Joined: Sat Jan 15, 2011 3:36 am


Return to ARMv8 Devices

Who is online

Users browsing this forum: No registered users and 12 guests