From: Simon Glass <sjg@chromium.org>
To: U-Boot Mailing List <u-boot@lists.denx.de>
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>,
Bin Meng <bmeng.cn@gmail.com>,
Christian Melki <christian.melki@t2data.com>,
Tom Rini <trini@konsulko.com>,
Ilias Apalodimas <ilias.apalodimas@linaro.org>,
Alexander Graf <agraf@csgraf.de>
Subject: Re: [PATCH v2 00/39] efi: Improvements to U-Boot running on top of UEFI
Date: Mon, 18 Oct 2021 09:25:12 -0600 [thread overview]
Message-ID: <CAPnjgZ35ou8iekBghrMPocDD84ic3OWfJp+5+ofjQ=awe+kicQ@mail.gmail.com> (raw)
In-Reply-To: <20210925003055.759305-1-sjg@chromium.org>
Hi Heinrich,
On Fri, 24 Sept 2021 at 18:31, Simon Glass <sjg@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 v2:
> - Add MAINTAINERS entry
> - Add a better boot command too
> - Add a note that EFI_GRAPHICS_OUTPUT_PROTOCOL is used
> - Add a sentence about what the patch does
> - Add a work-around to avoid a toolchain crash
> - Add new patch to drop the OF_EMBED warning for EFI
> - Add new patch to enable DM_ETH for the app
> - Add new patch to support the efi command in the app
> - Add new patch with maintainer entry
> - Add support for creating a partition table with a filesystem inside
> - Add support for running qemu with just a serial console (no display)
> - Drop mention of partitions from the commit message
> - Expand the commit message to make things clearer
> - Fix 'as' typo
> - Mention why this patch is included in this series
> - Put this patch first so that it is separated from the rest of the series
> - Show the correct interface type with 'part list'
> - Update commit message to mention that these function are x86-specific
> - Update commit message to mention why the data structure is like it is
> - Update commit message to mention why ulong is used
> - Update documentation
> - Update the commit message to explain things better
> - Use log_info() instead of printf()
>
> Simon Glass (39):
> RFC: efi: Drop code that doesn't work with driver model
> efi: Add a separate maintainer entry for the app
> x86: Keep symbol information in u-boot ELF file
> x86: Create a new header for EFI
> x86: Show some EFI info with the bdinfo command
> x86: Tidy up global_data pointer for 64-bit
> efi: Add a script for building and testing U-Boot on UEFI
> efi: Enable DM_ETH for the app
> efi: Drop the OF_EMBED warning for EFI
> x86: Create a 32/64-bit selection for the app
> efi: Create a 64-bit app
> x86: Don't duplicate global_ptr in 64-bit EFI app
> efi: Add a way to obtain boot services in the app
> efi: Add video support to the app
> efi: Add EFI uclass for media
> efi: Add a media/block driver for EFI block devices
> efi: Locate all block devices in the app
> patman: Use a ValueError exception if tools.Run() fails
> binman: Report an error if test files fail to compile
> binman: Support reading the offset of an ELF-file symbol
> binman: Allow timeout to occur in the image or its section
> binman: Tidy up comments on _DoTestFile()
> binman: Support updating the dtb in an ELF file
> efi: serial: Support arrow keys
> bloblist: Support allocating the bloblist
> x86: Allow booting a kernel from the EFI app
> x86: Don't process the kernel command line unless enabled
> x86: efi: Add room for the binman definition in the dtb
> efi: Add comments to struct efi_priv
> efi: Fix ll_boot_init() operation with the app
> efi: Add a few comments to the stub
> efi: Share struct efi_priv between the app and stub code
> efi: Move exit_boot_services into a function
> efi: Check for failure when initing the app
> efi: Mention that efi_info_get() is only used in the stub
> efi: Show when allocated pages are used
> efi: Allow easy selection of serial-only operation
> efi: Update efi_get_next_mem_desc() to avoid needing a map
> efi: Support the efi command in the app
>
> MAINTAINERS | 14 +
> Makefile | 10 +-
> arch/sandbox/dts/test.dts | 4 +
> arch/x86/config.mk | 4 +-
> arch/x86/cpu/efi/payload.c | 21 +-
> arch/x86/cpu/intel_common/Makefile | 2 +-
> arch/x86/cpu/u-boot-64.lds | 2 +
> arch/x86/cpu/x86_64/Makefile | 4 +
> arch/x86/cpu/x86_64/cpu.c | 32 +-
> arch/x86/cpu/x86_64/misc.c | 41 +++
> arch/x86/dts/Makefile | 2 +-
> arch/x86/dts/efi-x86_app.dts | 4 +
> arch/x86/include/asm/efi.h | 39 +++
> arch/x86/include/asm/global_data.h | 2 +
> arch/x86/include/asm/zimage.h | 3 -
> arch/x86/lib/Makefile | 1 +
> arch/x86/lib/bdinfo.c | 22 ++
> arch/x86/lib/bootm.c | 11 +-
> arch/x86/lib/zimage.c | 14 +-
> board/efi/Kconfig | 15 +-
> board/efi/efi-x86_app/Kconfig | 6 +-
> board/efi/efi-x86_app/MAINTAINERS | 11 +-
> cmd/Makefile | 2 +-
> cmd/efi.c | 76 +++--
> common/Kconfig | 15 +-
> common/bloblist.c | 16 +-
> common/board_f.c | 8 +-
> ..._app_defconfig => efi-x86_app32_defconfig} | 3 +-
> configs/efi-x86_app64_defconfig | 39 +++
> disk/part.c | 5 +-
> doc/develop/bloblist.rst | 16 +
> doc/develop/uefi/u-boot_on_efi.rst | 74 ++++-
> drivers/block/Kconfig | 33 +++
> drivers/block/Makefile | 4 +
> drivers/block/blk-uclass.c | 2 +-
> drivers/block/efi-media-uclass.c | 15 +
> drivers/block/efi_blk.c | 115 ++++++++
> drivers/block/sb_efi_media.c | 20 ++
> drivers/serial/serial_efi.c | 11 +-
> drivers/video/Kconfig | 2 +-
> drivers/video/efi.c | 45 ++-
> include/configs/efi-x86_app.h | 31 +-
> include/dm/uclass-id.h | 1 +
> include/efi.h | 123 +++++++-
> include/efi_api.h | 15 +
> include/init.h | 2 +-
> lib/efi/Kconfig | 34 ++-
> lib/efi/efi.c | 106 +++++++
> lib/efi/efi_app.c | 276 +++++++++++++++++-
> lib/efi/efi_stub.c | 95 +++---
> lib/efi_driver/Makefile | 2 +-
> lib/efi_loader/Kconfig | 1 +
> lib/efi_loader/efi_device_path.c | 96 ++----
> lib/efi_loader/efi_disk.c | 48 ---
> scripts/build-efi.sh | 188 ++++++++++++
> test/dm/Makefile | 1 +
> test/dm/efi_media.c | 24 ++
> tools/binman/binman.rst | 36 +++
> tools/binman/cmdline.py | 2 +
> tools/binman/control.py | 11 +
> tools/binman/elf.py | 74 ++++-
> tools/binman/elf_test.py | 45 ++-
> tools/binman/ftest.py | 91 +++++-
> tools/binman/test/Makefile | 13 +-
> tools/binman/test/bss_data.c | 2 +-
> tools/binman/test/embed_data.c | 16 +
> tools/binman/test/embed_data.lds | 23 ++
> tools/binman/test/u_boot_binman_embed.c | 13 +
> tools/binman/test/u_boot_binman_embed.lds | 29 ++
> tools/binman/test/u_boot_binman_embed_sm.c | 13 +
> tools/patman/tools.py | 2 +-
> 71 files changed, 1841 insertions(+), 337 deletions(-)
> create mode 100644 arch/x86/cpu/x86_64/misc.c
> create mode 100644 arch/x86/include/asm/efi.h
> create mode 100644 arch/x86/lib/bdinfo.c
> rename configs/{efi-x86_app_defconfig => efi-x86_app32_defconfig} (94%)
> create mode 100644 configs/efi-x86_app64_defconfig
> create mode 100644 drivers/block/efi-media-uclass.c
> create mode 100644 drivers/block/efi_blk.c
> create mode 100644 drivers/block/sb_efi_media.c
> create mode 100755 scripts/build-efi.sh
> create mode 100644 test/dm/efi_media.c
> create mode 100644 tools/binman/test/embed_data.c
> create mode 100644 tools/binman/test/embed_data.lds
> create mode 100644 tools/binman/test/u_boot_binman_embed.c
> create mode 100644 tools/binman/test/u_boot_binman_embed.lds
> create mode 100644 tools/binman/test/u_boot_binman_embed_sm.c
>
> --
> 2.33.0.685.g46640cef36-goog
>
These patches seem to be in your queue. Can you please give me an update?
Thanks,
Simon
prev parent reply other threads:[~2021-10-18 15:25 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-25 0:30 [PATCH v2 00/39] efi: Improvements to U-Boot running on top of UEFI Simon Glass
2021-09-25 0:30 ` [PATCH v2 01/39] RFC: efi: Drop code that doesn't work with driver model Simon Glass
2021-10-20 23:34 ` Heinrich Schuchardt
2022-10-14 11:51 ` Jan Kiszka
2022-10-14 13:13 ` Tom Rini
2022-10-14 15:33 ` Simon Glass
2022-10-14 15:34 ` Jan Kiszka
2022-10-14 15:36 ` Simon Glass
2022-10-14 15:39 ` Tom Rini
2022-10-14 15:47 ` Jan Kiszka
2022-10-14 15:58 ` Tom Rini
2022-10-14 15:10 ` Heinrich Schuchardt
2022-10-14 15:20 ` Tom Rini
2022-10-14 15:27 ` Jan Kiszka
2022-10-14 15:34 ` Tom Rini
2022-10-14 15:35 ` Jan Kiszka
2022-10-14 15:38 ` Tom Rini
2022-10-14 15:25 ` Jan Kiszka
2021-09-25 0:30 ` [PATCH v2 02/39] efi: Add a separate maintainer entry for the app Simon Glass
2021-10-18 16:36 ` Heinrich Schuchardt
2021-09-25 0:30 ` [PATCH v2 03/39] x86: Keep symbol information in u-boot ELF file Simon Glass
2021-09-25 0:30 ` [PATCH v2 04/39] x86: Create a new header for EFI Simon Glass
2021-10-18 17:00 ` Heinrich Schuchardt
2021-09-25 0:30 ` [PATCH v2 05/39] x86: Show some EFI info with the bdinfo command Simon Glass
2021-10-18 17:10 ` Heinrich Schuchardt
2021-10-26 3:29 ` Simon Glass
2021-09-25 0:30 ` [PATCH v2 06/39] x86: Tidy up global_data pointer for 64-bit Simon Glass
2021-10-18 17:15 ` Heinrich Schuchardt
2021-10-26 3:29 ` Simon Glass
2021-09-25 0:30 ` [PATCH v2 07/39] efi: Add a script for building and testing U-Boot on UEFI Simon Glass
2021-10-18 17:30 ` Heinrich Schuchardt
2021-10-18 18:12 ` Simon Glass
2021-10-25 19:35 ` Heinrich Schuchardt
2021-10-26 3:29 ` Simon Glass
2021-09-25 0:30 ` [PATCH v2 08/39] efi: Enable DM_ETH for the app Simon Glass
2021-09-25 0:30 ` [PATCH v2 09/39] efi: Drop the OF_EMBED warning for EFI Simon Glass
2021-10-23 11:37 ` Heinrich Schuchardt
2021-10-26 3:29 ` Simon Glass
2021-09-25 0:30 ` [PATCH v2 10/39] x86: Create a 32/64-bit selection for the app Simon Glass
2021-10-23 11:41 ` Heinrich Schuchardt
2021-09-25 0:30 ` [PATCH v2 11/39] efi: Create a 64-bit app Simon Glass
2021-09-25 0:30 ` [PATCH v2 12/39] x86: Don't duplicate global_ptr in 64-bit EFI app Simon Glass
2021-09-25 0:30 ` [PATCH v2 13/39] efi: Add a way to obtain boot services in the app Simon Glass
2021-09-25 0:30 ` [PATCH v2 14/39] efi: Add video support to " Simon Glass
2021-09-25 0:30 ` [PATCH v2 15/39] efi: Add EFI uclass for media Simon Glass
2021-10-23 12:26 ` Heinrich Schuchardt
2021-10-26 3:29 ` Simon Glass
2021-09-25 0:30 ` [PATCH v2 16/39] efi: Add a media/block driver for EFI block devices Simon Glass
2021-09-25 0:30 ` [PATCH v2 17/39] efi: Locate all block devices in the app Simon Glass
2021-09-25 0:30 ` [PATCH v2 18/39] patman: Use a ValueError exception if tools.Run() fails Simon Glass
2021-09-25 0:30 ` [PATCH v2 19/39] binman: Report an error if test files fail to compile Simon Glass
2021-09-25 0:30 ` [PATCH v2 20/39] binman: Support reading the offset of an ELF-file symbol Simon Glass
2021-09-25 0:30 ` [PATCH v2 21/39] binman: Allow timeout to occur in the image or its section Simon Glass
2021-09-25 0:30 ` [PATCH v2 22/39] binman: Tidy up comments on _DoTestFile() Simon Glass
2021-09-25 0:30 ` [PATCH v2 23/39] binman: Support updating the dtb in an ELF file Simon Glass
2021-09-25 0:30 ` [PATCH v2 24/39] efi: serial: Support arrow keys Simon Glass
2021-10-18 16:55 ` Heinrich Schuchardt
2021-10-26 3:29 ` Simon Glass
2021-09-25 0:30 ` [PATCH v2 25/39] bloblist: Support allocating the bloblist Simon Glass
2021-09-25 0:30 ` [PATCH v2 26/39] x86: Allow booting a kernel from the EFI app Simon Glass
2021-09-25 0:30 ` [PATCH v2 27/39] x86: Don't process the kernel command line unless enabled Simon Glass
2021-09-25 0:30 ` [PATCH v2 28/39] x86: efi: Add room for the binman definition in the dtb Simon Glass
2021-09-25 0:30 ` [PATCH v2 29/39] efi: Add comments to struct efi_priv Simon Glass
2021-10-23 11:28 ` Heinrich Schuchardt
2021-09-25 0:30 ` [PATCH v2 30/39] efi: Fix ll_boot_init() operation with the app Simon Glass
2021-09-25 0:30 ` [PATCH v2 32/39] efi: Share struct efi_priv between the app and stub code Simon Glass
2021-09-25 0:30 ` [PATCH v2 33/39] efi: Move exit_boot_services into a function Simon Glass
2021-09-25 0:30 ` [PATCH v2 34/39] efi: Check for failure when initing the app Simon Glass
2021-09-25 0:30 ` [PATCH v2 35/39] efi: Mention that efi_info_get() is only used in the stub Simon Glass
2021-09-25 0:30 ` [PATCH v2 36/39] efi: Show when allocated pages are used Simon Glass
2021-09-25 0:30 ` [PATCH v2 37/39] efi: Allow easy selection of serial-only operation Simon Glass
2021-09-25 0:30 ` [PATCH v2 38/39] efi: Update efi_get_next_mem_desc() to avoid needing a map Simon Glass
2021-09-25 0:30 ` [PATCH v2 39/39] efi: Support the efi command in the app Simon Glass
2021-10-18 15:25 ` Simon Glass [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAPnjgZ35ou8iekBghrMPocDD84ic3OWfJp+5+ofjQ=awe+kicQ@mail.gmail.com' \
--to=sjg@chromium.org \
--cc=agraf@csgraf.de \
--cc=bmeng.cn@gmail.com \
--cc=christian.melki@t2data.com \
--cc=ilias.apalodimas@linaro.org \
--cc=trini@konsulko.com \
--cc=u-boot@lists.denx.de \
--cc=xypron.glpk@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).