Hi Bin, On Thu, 30 Mar 2023 at 15:32, Simon Glass <s...@chromium.org> wrote: > > 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 >
Any thoughts on this series, please? I have some comments from Heinrich so will respin this, but would like to check first if there is anything else? Regards, Simon