u-boot.lists.denx.de archive mirror
 help / color / mirror / Atom feed
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

      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).