[PATCH v9 0/9] efi: Improvements to U-Boot running on top of UEFI
Heinrich Schuchardt
xypron.glpk at gmx.de
Thu Jan 13 22:08:53 CET 2022
Am 13. Januar 2022 20:39:15 MEZ schrieb Simon Glass <sjg at chromium.org>:
>Hi Heinrich,
>
>On Tue, 4 Jan 2022 at 03:51, Simon Glass <sjg at chromium.org> wrote:
>>
>> At present U-Boot can be built as an EFI app, but it is really just for
>> testing, with very few features. Instead, the payload build is used for
>> booting on top of UEFI, where U-Boot takes over the machine immediately
>> and supplies its own drivers.
>>
>> But the app could be made more useful.
>>
>> This series provides access to EFI block devices and the video console
>> within U-Boot. It also restructures the app to make it possible to boot
>> a kernel, although further work is needed to implement this.
>>
>> This can be thought of as making U-Boot perform a little like 'grub', in
>> that it runs purely based on UEFI-provided services.
>>
>> Of course a lot more work is required, but this is a start.
>>
>> Note: It would be very useful to include qemu tests of the app and stub
>> in CI.
>>
>> This is available at u-boot-dm/efi-working
>>
>> Changes in v9:
>> - Add a comment as to why printf() cannot be used
>> - Comment out storing the EFI memory map in the app and update commit message
>> - Drop changes previously applied
>>
>> Changes in v8:
>> - Add new patch to tidy up header comments
>>
>> Changes in v7:
>> - Rebase on -master instead of -next
>>
>> Changes in v6:
>> - Fix typo in function comment
>>
>> Changes in v5:
>> - Add new patch to avoid using the 64-bit link script for the EFI app
>> - Add new patch to build the 64-bit app properly
>> - Add new patch to round out the link script for 64-bit EFI
>> - Add new patch to set the correct link flags for the 64-bit EFI app
>> - Add new patch to tweak the code used for the 64-bit EFI app
>> - Add various patches to fix up the 64-bit app so that it boots
>>
>> Changes in v2:
>> - Add a sentence about what the patch does
>> - Add new patch to support the efi command in the app
>>
>> Simon Glass (9):
>> efi: Move exit_boot_services into a function
>> x86: efi: Update efi_get_next_mem_desc() to avoid needing a map
>> efi: Support the efi command in the app
>> x86: efi: Tweak the code used for the 64-bit EFI app
>> x86: efi: Round out the link script for 64-bit EFI
>> x86: efi: Don't use the 64-bit link script for the EFI app
>> x86: efi: Set the correct link flags for the 64-bit EFI app
>> efi: Build the 64-bit app properly
>> efi: Tidy up some comments in efi header
>>
>> Makefile | 4 +-
>> arch/x86/config.mk | 15 +++++--
>> arch/x86/cpu/config.mk | 2 +-
>> arch/x86/cpu/efi/payload.c | 8 ++--
>> arch/x86/cpu/x86_64/cpu.c | 5 +++
>> arch/x86/lib/Makefile | 5 +--
>> arch/x86/lib/elf_x86_64_efi.lds | 5 ++-
>> arch/x86/lib/relocate.c | 2 +
>> cmd/Makefile | 2 +-
>> cmd/efi.c | 78 +++++++++++++++++++++------------
>> include/efi.h | 64 +++++++++++++++++++++++----
>> lib/efi/efi.c | 72 ++++++++++++++++++++++++++++++
>> lib/efi/efi_app.c | 42 ++++++++++++++++++
>> lib/efi/efi_stub.c | 66 +++++-----------------------
>> 14 files changed, 263 insertions(+), 107 deletions(-)
>>
>> --
>> 2.34.1.448.ga2b2bfdf31-goog
>>
>
>Does this series look OK to you now? I'd like to put it to bed.
I just need to find time to create the next pull request.
Best regards
Heinrich
>
>Regards,
>Simon
More information about the U-Boot
mailing list