From 38fe481911e7c4e9f674ded8f66878dff9e12ce3 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 10 Oct 2015 01:53:25 +0000 Subject: grub-efi, gummiboot: Emit correct path in startup.nsh when we generate hddimage and use it to prepare SD card using scripts/contrib/mkefidisk.sh as described here http://elinux.org/Minnowboard:MinnowMaxYoctoProject The content of startup.nsh contains bootx64.efi but this file is actually not in same dir as startup.nsh its in /EFI/BOOT so for this to work entry in startup.nsh should be fs0:\EFI\BOOT\bootx64.efi Otherwise the image is D-O-A Signed-off-by: Khem Raj Signed-off-by: Ross Burton --- meta/classes/grub-efi.bbclass | 3 ++- meta/classes/gummiboot.bbclass | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/meta/classes/grub-efi.bbclass b/meta/classes/grub-efi.bbclass index 4ddc2bb125..9a4220abdc 100644 --- a/meta/classes/grub-efi.bbclass +++ b/meta/classes/grub-efi.bbclass @@ -52,7 +52,8 @@ efi_iso_populate() { mkdir -p ${EFIIMGDIR}/${EFIDIR} cp $iso_dir/${EFIDIR}/* ${EFIIMGDIR}${EFIDIR} cp $iso_dir/vmlinuz ${EFIIMGDIR} - echo "${GRUB_IMAGE}" > ${EFIIMGDIR}/startup.nsh + EFIPATH=$(echo "${EFIDIR}" | sed 's/\//\\/g') + echo "fs0:${EFIPATH}\\${GRUB_IMAGE}" > ${EFIIMGDIR}/startup.nsh if [ -f "$iso_dir/initrd" ] ; then cp $iso_dir/initrd ${EFIIMGDIR} fi diff --git a/meta/classes/gummiboot.bbclass b/meta/classes/gummiboot.bbclass index 3d9c08bbc9..9a97ac1753 100644 --- a/meta/classes/gummiboot.bbclass +++ b/meta/classes/gummiboot.bbclass @@ -46,7 +46,8 @@ efi_iso_populate() { mkdir -p ${EFIIMGDIR}/${EFIDIR} cp $iso_dir/${EFIDIR}/* ${EFIIMGDIR}${EFIDIR} cp $iso_dir/vmlinuz ${EFIIMGDIR} - echo "${DEST_EFI_IMAGE}" > ${EFIIMGDIR}/startup.nsh + EFIPATH=$(echo "${EFIDIR}" | sed 's/\//\\/g') + echo "fs0:${EFIPATH}\\${DEST_EFI_IMAGE}" > ${EFIIMGDIR}/startup.nsh if [ -f "$iso_dir/initrd" ] ; then cp $iso_dir/initrd ${EFIIMGDIR} fi -- cgit 1.2.3-korg