[arch-releng] [PATCH]{RFC]Change from UEFI Shell to gummiboot-efi-x86_64 for booting
Gerardo Exequiel Pozzi
vmlinuz386 at yahoo.com.ar
Thu Sep 20 22:28:30 EDT 2012
On 09/15/2012 12:40 PM, Keshav P R wrote:
> Hi,
> In some UEFI systems, startup.nsh does not start and the boot
> stops at Shell prompt without giving any indication of any error
> whatsoever. I think instead of relying on UEFI Shell, we should use a
> proper, simple UEFI boot manager to load EFISTUB kernel in archiso.
> So here is a patch replacing UEFI Shell as the primary boot
> pathway to gummiboot. I have renamed the UEFI Shell binaries and
> archiso now includes both v1 and v2 shell binaries, accessible via
> gummiboot menu. Some options present in shell v2 is not present in v1,
> but v1 works in all firmwares while v2 works only in >=2.3 (spec.
> version) firmwares.
> I have attached the patch. For this support,
> gummiboot-efi-x86_64 https://aur.archlinux.org/packages.php?ID=62791
> should be moved to [extra] or [core] repo. Please give your comments.
>
> Regards.
>
> Keshav
reviewing a more in deep the patch... (next time please attach inline...)
+ mkdir -p ${work_dir}/iso/loader/entries
and etc...can not be in ${work_dir}/iso/EFI/loader ? I want to avoid
multiple directories on the root.
+ cp ${work_dir}/iso/EFI/shellx64_v1.efi
${work_dir}/efiboot/EFI/shellx64_v1.efi
+
+ # There are plans to support command line options via a
config file (not yet in linux-3.3)
such line empty contains spaces, also here...
+ #echo "archisobasedir=${install_dir}
archisolabel=${iso_label} initrd=\\EFI\\boot\\archiso.img" >
${work_dir}/efiboot/EFI/boot/linux.conf
+
umount ${work_dir}/efiboot
+ # There are plans to support command line options via a
config file (not yet in linux-3.3)
and related lines, they are "obsolete" in favor of gummiboot :)
you can split this function make_boot_efi() in two, one for efiboot.img
and other for /EFI
make_boot_efi() -> steps to build /EFI directory, for usbboot or EFI
firmwares that understands iso9660 filesystem.
make_boot_efiboot() -> steps to build efiboot.img for "El Torito".
--
Gerardo Exequiel Pozzi
\cos^2\alpha + \sin^2\alpha = 1
More information about the arch-releng
mailing list