Adding debug echos to grub.cfg doesn't give a clue except that running the script reports a few "Failed to persist EFI vars" that aren't from my echos. I also the following at the end of the scri[t does not produce any OUTPUT: if [ "${grub_platform}" = "efi" ]; then # On EFI systems we can only have graphics *or* serial, so allow the user # to switch between the two echo "GRUB PLATFORM IS EFI`" echo "GRUB PLATFORM IS EFI`" echo "GRUB PLATFORM IS EFI`" (repeating about 20 times) Multiple cases of the echo are just to make it more visible on the screen size I have. sleep 40 after each conditional containing added echos WE ARE IN GRUB AT THIS POINT, NOT u-boot/device firmware! No EFI system partition is generating lots of errors but we are on an EFI platform. Walking the installed OS list only shows "openSUSE Tumbleweed" in it but grub goes into png mode with the "UEFI Editor" as the only option. NB: I can get beyond the u-boot console and into grub using the method described in the Description, by replacing uboot.bin from the latest Tumbleweed update with the one from Leap 15.5. So, u-boot.bin update looks bad AND whatever it takes for grub to have an EFI overlay file-system doesn't happen or doesn't work so grub.cfg has hardware saying it's EFI and no EFI partition and grub.cfg goes over the edge due to missing configuration that should have been setup before grub.cfg is run. rootfs is XFS in my case so the overlay must be a file on the rootfs obviously not a subvolume on a btrfs rootfs.