u-boot.lists.denx.de archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/38] x86: Use qemu-x86_64 to boot EFI installers
@ 2023-03-30 21:31 Simon Glass
  2023-03-30 21:31 ` [PATCH 01/38] x86: Tidy up availability of string functions Simon Glass
                   ` (38 more replies)
  0 siblings, 39 replies; 69+ messages in thread
From: Simon Glass @ 2023-03-30 21:31 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Bin Meng, Heinrich Schuchardt, Simon Glass, AKASHI Takahiro,
	Anatolij Gustschin, Andre Przywara, Andrew Scull,
	Ashok Reddy Soma, Balamanikandan Gunasundar,
	Benoît Thébaudeau, Dzmitry Sankouski,
	Enric Balletbo i Serra, Fabio Estevam, George McCollister,
	Ilias Apalodimas, Jaehoon Chung, Jason Liu, John Keeping,
	Jose Marinho, Marcel Ziswiler, Mario Six, Mark Kettenis,
	Masahisa Kojima, Michal Simek, Michal Suchanek, Nikhil M Jain,
	Oleksii Bidnichenko, Ovidiu Panait, Pali Rohár, Paul Barker,
	Philippe Reynes, Pierre-Clément Tosi, Rasmus Villemoes,
	Sean Anderson, Stefan Herbrechtsmeier, Stefan Roese,
	Sughosh Ganu, Ye Li

This series adds various minor features so that qemu-x86_64 can boot the
Ubuntu 2022.04 installer using a virtio device:

    qemu-system-x86_64 -M pc -drive format=raw,file=root.img
        -bios /tmp/b/qemu-x86_64/u-boot.rom
        -drive if=virtio,file=ubuntu-22.04.2-desktop-amd64.iso
        -smp 4 -m 4G -serial mon:stdio

The main changes include:
- Enable video in SPL while running in 32-bit mode
- Drop the duplicate ACPI tables with EFI
- Support PCI autoconfig in SPL
- Support FAT on a CDROM filesystem
- Improved bootstd rules around device tree and efi_set_bootdev()

There are also quite a number of minor tweaks and fixes to make things
easier to use.

This series is based on an older version of the SPL-video series from
Nikhil M Jain. It is available at u-boot-dm/bryc-working


Simon Glass (38):
  x86: Tidy up availability of string functions
  x86: Allow listing MTRRs in SPL
  bios_emulator: Add Kconfig and adjust Makefile for SPL
  bios_emulator: Drop VIDEO_IO_OFFSET
  x86: Tidy up EFI code in interrupt_init()
  x86: Set high bits of the mtrr base registrer
  x86: Add a comment for board_init_f_r_trampoline()
  x86: Show the CPU physical address size with bdinfo
  x86: Correct get_sp() implementation for 64-bit
  x86: Show an error when a BINS exception occurs
  acpi: Add a comment to set the acpi tables
  bdinfo: Show the RAM top and approximate stack pointer
  part: Allow setting the partition-table type
  qfw: Show the file address if available
  log: Tidy up an ambiguous comment.
  video: Allow building video drivers for SPL
  qfw: Set the address of the ACPI tables
  efi: Show all known UUIDs with CONFIG_CMD_EFIDEBUG
  x86: Improve the trampoline in 64-bit mode
  Show the malloc base with the bdinfo command
  nvme: Provide more useful debugging messages
  pci: Support autoconfig in SPL
  pci: Allow the video BIOS to work in SPL with QEMU
  pci: Tidy up logging and reporting for video BIOS
  x86: Allow video-BIOS code to be built for SPL
  x86: Pass video settings from SPL to U-Boot proper
  x86: Init video in SPL if enabled
  pci: Adjust video BIOS debugging to be SPL-friendly
  pci: Mask the ROM address in case it is already enabled
  x86: Enable display for QEMU 64-bit
  x86: Allow logging to be used in SPL reliably
  fs: fat: Shrink the size of a few strings
  fs: fat: Support reading from a larger block size
  x86: Enable useful options for qemu-86_64
  x86: Record the start and end of the tables
  sandbox: Correct header order in board file
  sandbox: Install ACPI tables on startup
  efi: Use the installed ACPI tables

 arch/sandbox/include/asm/global_data.h    |   4 +
 arch/x86/cpu/i386/interrupt.c             |  17 +--
 arch/x86/cpu/mtrr.c                       |  62 +++++++-
 arch/x86/cpu/start64.S                    |  19 +++
 arch/x86/include/asm/global_data.h        |   4 +
 arch/x86/include/asm/mtrr.h               |  20 +++
 arch/x86/include/asm/string.h             |   6 +-
 arch/x86/include/asm/u-boot-x86.h         |  21 ++-
 arch/x86/lib/Makefile                     |   9 +-
 arch/x86/lib/bdinfo.c                     |   5 +
 arch/x86/lib/bios.c                       |   5 +-
 arch/x86/lib/bootm.c                      |   2 +-
 arch/x86/lib/spl.c                        |  26 +++-
 arch/x86/lib/tables.c                     |   4 +-
 board/google/Kconfig                      |   7 -
 board/sandbox/sandbox.c                   |  22 ++-
 cmd/Kconfig                               |   8 ++
 cmd/acpi.c                                |  24 +++-
 cmd/bdinfo.c                              |   6 +
 cmd/part.c                                |  34 +++++
 cmd/qfw.c                                 |   2 +-
 cmd/x86/mtrr.c                            |  60 +-------
 common/board_f.c                          |  12 +-
 common/board_r.c                          |   7 +-
 common/log.c                              |   2 +-
 configs/qemu-x86_64_defconfig             |  14 ++
 disk/part.c                               |  16 +++
 doc/usage/cmd/acpi.rst                    |  29 +++-
 doc/usage/cmd/part.rst                    |  74 ++++++++++
 doc/usage/cmd/qfw.rst                     |  28 ++--
 drivers/Kconfig                           |   2 +
 drivers/Makefile                          |   5 +-
 drivers/bios_emulator/Kconfig             |  10 ++
 drivers/bios_emulator/biosemui.h          |  18 +--
 drivers/bios_emulator/x86emu/sys.c        |   1 +
 drivers/misc/qfw.c                        |  12 ++
 drivers/nvme/nvme.c                       |  36 +++--
 drivers/pci/Kconfig                       |   8 ++
 drivers/pci/pci-uclass.c                  |  10 +-
 drivers/pci/pci_rom.c                     | 165 +++++++++++++++++-----
 fs/fat/Kconfig                            |  13 ++
 fs/fat/fat.c                              | 117 ++++++++++++---
 fs/fat/fat_write.c                        |  22 ++-
 include/asm-generic/global_data.h         |  11 ++
 include/bloblist.h                        |   1 +
 include/configs/conga-qeval20-qa3-e3845.h |   2 -
 include/configs/dfi-bt700.h               |   2 -
 include/configs/minnowmax.h               |   2 -
 include/configs/som-db5800-som-6867.h     |   2 -
 include/configs/theadorable-x86-common.h  |   2 -
 include/configs/x86-chromebook.h          |   2 -
 include/part.h                            |   9 ++
 include/pci_ids.h                         |   1 +
 include/video.h                           |  24 ++++
 lib/efi_loader/efi_acpi.c                 |  33 +++--
 lib/uuid.c                                |   2 +-
 test/dm/acpi.c                            |  38 +++++
 57 files changed, 866 insertions(+), 233 deletions(-)
 create mode 100644 drivers/bios_emulator/Kconfig

-- 
2.40.0.348.gf938b09366-goog


^ permalink raw reply	[flat|nested] 69+ messages in thread

end of thread, other threads:[~2023-04-20 16:30 UTC | newest]

Thread overview: 69+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-30 21:31 [PATCH 00/38] x86: Use qemu-x86_64 to boot EFI installers Simon Glass
2023-03-30 21:31 ` [PATCH 01/38] x86: Tidy up availability of string functions Simon Glass
2023-03-30 21:31 ` [PATCH 02/38] x86: Allow listing MTRRs in SPL Simon Glass
2023-03-30 22:10   ` Heinrich Schuchardt
2023-04-20 16:30     ` Simon Glass
2023-03-30 21:31 ` [PATCH 03/38] bios_emulator: Add Kconfig and adjust Makefile for SPL Simon Glass
2023-03-30 21:31 ` [PATCH 04/38] bios_emulator: Drop VIDEO_IO_OFFSET Simon Glass
2023-03-30 21:31 ` [PATCH 05/38] x86: Tidy up EFI code in interrupt_init() Simon Glass
2023-03-30 21:31 ` [PATCH 06/38] x86: Set high bits of the mtrr base registrer Simon Glass
2023-03-30 21:31 ` [PATCH 07/38] x86: Add a comment for board_init_f_r_trampoline() Simon Glass
2023-03-30 22:16   ` Heinrich Schuchardt
2023-03-30 21:31 ` [PATCH 08/38] x86: Show the CPU physical address size with bdinfo Simon Glass
2023-03-30 21:31 ` [PATCH 09/38] x86: Correct get_sp() implementation for 64-bit Simon Glass
2023-03-30 21:31 ` [PATCH 10/38] x86: Show an error when a BINS exception occurs Simon Glass
2023-03-30 22:23   ` Heinrich Schuchardt
2023-03-30 21:32 ` [PATCH 11/38] acpi: Add a comment to set the acpi tables Simon Glass
2023-03-30 21:32 ` [PATCH 12/38] bdinfo: Show the RAM top and approximate stack pointer Simon Glass
2023-03-30 21:32 ` [PATCH 13/38] part: Allow setting the partition-table type Simon Glass
2023-03-30 22:27   ` Heinrich Schuchardt
2023-03-30 23:49     ` Simon Glass
2023-03-31  0:12       ` Heinrich Schuchardt
2023-03-31  1:16         ` Simon Glass
2023-03-30 21:32 ` [PATCH 14/38] qfw: Show the file address if available Simon Glass
2023-03-30 22:31   ` Heinrich Schuchardt
2023-03-30 23:48     ` Simon Glass
2023-03-31  9:44     ` Mark Kettenis
2023-03-30 21:32 ` [PATCH 15/38] log: Tidy up an ambiguous comment Simon Glass
2023-03-30 21:32 ` [PATCH 16/38] video: Allow building video drivers for SPL Simon Glass
2023-03-30 21:32 ` [PATCH 17/38] qfw: Set the address of the ACPI tables Simon Glass
2023-03-30 21:32 ` [PATCH 18/38] efi: Show all known UUIDs with CONFIG_CMD_EFIDEBUG Simon Glass
2023-03-30 22:38   ` Heinrich Schuchardt
2023-03-30 23:48     ` Simon Glass
2023-03-31  0:27       ` Heinrich Schuchardt
2023-03-31  1:16         ` Simon Glass
2023-03-31  6:46           ` Heinrich Schuchardt
2023-04-01  6:31             ` Simon Glass
2023-03-30 21:32 ` [PATCH 19/38] x86: Improve the trampoline in 64-bit mode Simon Glass
2023-03-30 21:32 ` [PATCH 20/38] Show the malloc base with the bdinfo command Simon Glass
2023-03-30 21:32 ` [PATCH 21/38] nvme: Provide more useful debugging messages Simon Glass
2023-03-30 21:32 ` [PATCH 22/38] pci: Support autoconfig in SPL Simon Glass
2023-03-30 21:32 ` [PATCH 23/38] pci: Allow the video BIOS to work in SPL with QEMU Simon Glass
2023-03-30 21:32 ` [PATCH 24/38] pci: Tidy up logging and reporting for video BIOS Simon Glass
2023-03-30 21:32 ` [PATCH 25/38] x86: Allow video-BIOS code to be built for SPL Simon Glass
2023-03-30 21:32 ` [PATCH 26/38] x86: Pass video settings from SPL to U-Boot proper Simon Glass
2023-03-30 21:32 ` [PATCH 27/38] x86: Init video in SPL if enabled Simon Glass
2023-03-30 21:32 ` [PATCH 28/38] pci: Adjust video BIOS debugging to be SPL-friendly Simon Glass
2023-03-30 21:32 ` [PATCH 29/38] pci: Mask the ROM address in case it is already enabled Simon Glass
2023-03-30 21:32 ` [PATCH 30/38] x86: Enable display for QEMU 64-bit Simon Glass
2023-03-30 21:32 ` [PATCH 31/38] x86: Allow logging to be used in SPL reliably Simon Glass
2023-03-30 21:32 ` [PATCH 32/38] fs: fat: Shrink the size of a few strings Simon Glass
2023-03-30 22:48   ` Heinrich Schuchardt
2023-03-30 23:49     ` Simon Glass
2023-03-31  0:00       ` Heinrich Schuchardt
2023-03-31  1:16         ` Simon Glass
2023-03-31  6:51           ` Heinrich Schuchardt
2023-03-31  7:33             ` Ilias Apalodimas
2023-03-31 10:19               ` Heinrich Schuchardt
2023-03-30 21:32 ` [PATCH 33/38] fs: fat: Support reading from a larger block size Simon Glass
2023-03-30 22:55   ` Heinrich Schuchardt
2023-03-31 10:23     ` Heinrich Schuchardt
2023-04-20 16:30       ` Simon Glass
2023-03-30 21:32 ` [PATCH 34/38] x86: Enable useful options for qemu-86_64 Simon Glass
2023-03-30 21:32 ` [PATCH 35/38] x86: Record the start and end of the tables Simon Glass
2023-03-30 21:32 ` [PATCH 36/38] sandbox: Correct header order in board file Simon Glass
2023-03-30 21:32 ` [PATCH 37/38] sandbox: Install ACPI tables on startup Simon Glass
2023-03-30 21:32 ` [PATCH 38/38] efi: Use the installed ACPI tables Simon Glass
2023-03-30 21:53   ` Heinrich Schuchardt
2023-03-30 23:48     ` Simon Glass
2023-04-19  1:45 ` [PATCH 00/38] x86: Use qemu-x86_64 to boot EFI installers Simon Glass

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