Predictable grub drive number
On the UpBoard with the default BIOS and the latest UPC1DM17 version, the onboard eMMC appears as hd0 in Grub. But if I boot the board with a USB drive connected, the USB device becomes hd0 and eMMC hd1 so grub cannot find the partition to boot.
Changing the boot order in the BIOS does not change anything on this behavior.
On other x86 platform, it seems that BIOS boot priority influences the grub disk number (see the post here: https://hub.mender.io/t/force-grub-to-select-emmc-when-flash-drive-plugged-in/725/12).
So could AAEON look into the BIOS settings if something could be changed to allow to keep eMMC as hd0 in Grub.
Comments
-
The USB drive is set as higher priority in order to easy the upgrade/installation process for users.
The BIOS settings cannot be changed unless you require a setting specific for your project and you can order such customization for your boards on the UP Shop: https://up-shop.org/home/104-up-bios-splash-service.html
The solution is to use UUID, which are supported by grub (and also by our Yocto Sumo release), but I can see from the topic about mender not supporting that on sumo.
-
Thank you for your answer DCleri.
I was not aware of this BIOS limitation and the related customization.
About the UUID in grub, I did not find any example on how to use it. UI have found the search command, use by Ubuntu to set the root variable but that is all.
search --no-floppy --fs-uuid --set=root ce8ffc2c-2470-4cf0-821c-93d2eb8bba62
On the meta-up-board side, I have noticed that systemd-boot is used so there is no issue with grub.
I am now in the process of using RAUC instead of Mender but all x86 I have found using RAUC are also using grub and a grub script using hd0 explicitly.
So I am very interested in an example of grub.cfg file using UUIDs directly.
-
hi @rreignier
It is not a BIOS limitation, but a settings choice for better usability.
our meta-upboard images include the settings to use grub with UUID:
https://github.com/AAEONAEU-SW/meta-up-board/blob/sumo/recipes-core/initrdscripts/files/init-install-efi.sh -
Hi @DCleri
Thank you for the tip, I had never tried the install boot entry actually.
So now, I need to make it work with RAUC as update system.