boot1.efi and gpt support

From: Holger Freyther <holger_at_freyther.de>
Date: Fri, 31 Jul 2015 19:40:01 +0000 (UTC)
Hi,

we have an appliance that is using the gptboot bootme/bootonce/bootfailed
scheme and we looked into using machines that only have an UEFI bios.
boot1.efi currently does not allow this boot scheme and picks the first UFS
partition it can find.

I have played with qemu+tianocore and looked at what is required to use the
gptboot.c within boot1.efi and it doesn't seem to be much. I would like to
receive feedback and wonder if this functionality could get integrated? I have
created a bug report[1] and attached my current patch that works with tianocore
and the physical machine that was tested.

* I need to allocate the primary/backup GPT tables in the heap as otherwise
tianocore wouldn't even execute boot1.efi


* I couldn't find a protocol in UEFI to give me the GPT partitions. So I have to
be a bit crazy in finding a disk, then selecting the partition to boot and then
finding the device using UEFI protocols. It is crazy but the amount of
assumptions I make on the implementation are few.


* I have no control in which disk will be listed first by UEFI. So maybe this is
something that should be configured for boot1.efi as well.


I am looking forward to receive some feedback.

kind regards
  holger

[1] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=201788
Received on Fri Jul 31 2015 - 17:40:26 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:59 UTC