Hi all,
My current setup is a device that has eMMC and occasionally a USB both with
GRUB installed on them via Yocto. All are EFI on an x64 system.
1. When the USB is disconnected the device boots into the eMMC
2. When the USB is connected and chosen via the BIOS, the device boots
into the USB
3. When the USB is connected and eMMC is chosen via the BIOS, GRUB is
loaded from the eMMC (checked by deleting the bootx64.efi file on USB) but
chooses the USB grub.cfg file and hence boots into USB
4. When USB boot is disabled in BIOS it will load GRUB from eMMC (checked
by deleting the bootx64.efi file on USB) but chooses the USB grub.cfg file and
hence boots into USB
When I go to the grub commandline I can see that:
1. When USB is disconnected, eMMC appears as (hd0)
2. When USB is connected, USB appears as (hd0) and eMMC appears as (hd1)
I've tried trawling the internet and documentation but can't seem to find
anything detailing how grub enumerates devices. Obviously I would like grub to
look for the grub.cfg file from the device it booted from but can't seem to
find a solution at the moment!
Could someone detail/point to the process of how grub does the enumeration (is
the information passed through from the BIOS?)