[OE-core] [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media

Arsalan Awan Arsalan_Awan at mentor.com
Fri Nov 2 15:01:42 UTC 2018


From: "Arsalan H. Awan" <Arsalan_Awan at mentor.com>

The EFI bootloader name and path for being able to boot from a
removable storage media - such as USB - must be like:

  /EFI/BOOT/boot<arch>.efi
  /EFI/BOOT/bootx64.efi
  /EFI/BOOT/bootia32.efi
  /EFI/BOOT/bootaa64.efi

otherwise system will not be able to boot from it.

This commit fixes the grub-efi bootloader destination image name
accordingly just like efi_populate() function does it in
meta/classes/grub-efi.bbclass.

Signed-off-by: Arsalan H. Awan <Arsalan_Awan at mentor.com>
---
 scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
index d6bd3bf..9a30713 100644
--- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
+++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
@@ -329,13 +329,15 @@ class IsoImagePlugin(SourcePlugin):
 
                 if re.match("x86_64", target_arch):
                     grub_image = "grub-efi-bootx64.efi"
+                    grub_image_dst = "bootx64.efi"
                 elif re.match('i.86', target_arch):
                     grub_image = "grub-efi-bootia32.efi"
+                    grub_image_dst = "bootia32.efi"
                 else:
                     raise WicError("grub-efi is incompatible with target %s" %
                                    target_arch)
 
-                grub_target = os.path.join(target_dir, grub_image)
+                grub_target = os.path.join(target_dir, grub_image_dst)
                 if not os.path.isfile(grub_target):
                     grub_src = os.path.join(deploy_dir, grub_image)
                     if not os.path.exists(grub_src):
-- 
2.7.4




More information about the Openembedded-core mailing list