Hi Tom, This PR includes the following x86 related changes for v2023.10 release:
- bootstd: Add a bootmeth for ChromiumOS on x86 - x86: Use qemu-x86_64 to boot EFI installers Azure results: PASS https://dev.azure.com/bmeng/GitHub/_build/results?buildId=494&view=results The following changes since commit e6e67bb9e0a40f3eb3c87d16935192821987c3e0: Merge branch '2023-07-14-assorted-general-updates' (2023-07-14 15:21:48 -0400) are available in the Git repository at: https://source.denx.de/u-boot/custodians/u-boot-x86 for you to fetch changes up to b8956425d525c3c25fd218f252f89a5e44df6a9f: x86: Switch QEMU over to use the bochs driver (2023-07-17 17:23:15 +0800) ---------------------------------------------------------------- Simon Glass (60): test: Skip flat-tree tests if devicetree is not used bootstd: Correct the name of the QEMU bootmeth bootstd: Use bootdev instead of bootdevice bootstd: Correct baudrate typo bootstd: Allow storing the OS command line in the bootflow bootstd: Use the bootargs env var for changing the cmdline bootstd: Allow storing x86 setup information bdinfo: Show information about the serial port bootstd: Add a function to update a command line bootstd: Add support for updating elements of the cmdline x86: qemu: Create a little more room for U-Boot x86: qemu: Switch to standard boot bootstd: Support automatically setting Linux parameters x86: Add a function to boot a zimage x86: zimage: Export the function to obtain the cmdline bootstd: Add a simple bootmeth for ChromiumOS x86: coreboot: Adjust various config options x86: coral: Adjust various config options x86: Allow listing MTRRs in SPL x86: mtrr: Add documentation bios_emulator: Add Kconfig and adjust Makefile for SPL bios_emulator: Drop VIDEO_IO_OFFSET x86: Tidy up EFI code in interrupt_init() 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 BIOS 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 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 bdinfo: Show the malloc base with the bdinfo command nvme: Provide more useful debugging messages pci: Support autoconfig in SPL 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: Ensure SPL banner is only shown once 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 x86: Enable useful options for qemu-86_64 x86: Refactor table-writing code a little x86: Record the start and end of the tables x86: Convert some debug statements to use logging x86: link: Support Micron memory x86: Make sure that the LPC is active before SDRAM init log: Support outputing function names in SPL sandbox: Correct header order in board file sandbox: Install ACPI tables on startup efi: Use the installed ACPI tables x86: video: Add a driver for QEMU bochs emulation x86: Switch QEMU over to use the bochs driver arch/sandbox/include/asm/global_data.h | 4 ++ arch/x86/cpu/i386/interrupt.c | 17 +++----- arch/x86/cpu/intel_common/mrc.c | 10 ++--- arch/x86/cpu/ivybridge/sdram.c | 4 +- arch/x86/cpu/mtrr.c | 61 +++++++++++++++++++++++++++++ arch/x86/cpu/qemu/Kconfig | 2 +- arch/x86/cpu/start64.S | 19 +++++++++ arch/x86/dts/chromebook_link.dts | 1 + arch/x86/include/asm/global_data.h | 4 ++ arch/x86/include/asm/mtrr.h | 20 ++++++++++ arch/x86/include/asm/u-boot-x86.h | 27 ++++++++++++- arch/x86/include/asm/zimage.h | 27 +++++++++++++ arch/x86/lib/Makefile | 7 ++-- arch/x86/lib/bdinfo.c | 5 +++ arch/x86/lib/bios.c | 4 +- arch/x86/lib/bootm.c | 2 +- arch/x86/lib/mrccache.c | 6 ++- arch/x86/lib/spl.c | 68 +++++++++++++++++++++++++++----- arch/x86/lib/tables.c | 46 +++++++++++++++------- arch/x86/lib/zimage.c | 93 +++++++++++++++++++++++++++++++++++++------- board/google/Kconfig | 7 ---- board/sandbox/sandbox.c | 22 +++++++++-- boot/Kconfig | 11 ++++++ boot/Makefile | 1 + boot/bootflow.c | 339 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- boot/bootmeth-uclass.c | 2 +- boot/bootmeth_cros.c | 212 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ boot/bootmeth_qfw.c | 2 +- cmd/Kconfig | 8 ++++ cmd/acpi.c | 24 ++++++++++-- cmd/bdinfo.c | 27 +++++++++++++ cmd/bootflow.c | 87 ++++++++++++++++++++++++++++++++++++++++- cmd/part.c | 34 ++++++++++++++++ cmd/qfw.c | 2 +- cmd/x86/mtrr.c | 60 ++-------------------------- common/bloblist.c | 1 + common/board_f.c | 12 +++--- common/board_r.c | 7 ++-- common/log.c | 2 +- common/log_console.c | 10 ++++- configs/chromebook_coral_defconfig | 10 ++++- configs/coreboot_defconfig | 14 +------ configs/qemu-x86_64_defconfig | 21 +++++++--- configs/qemu-x86_defconfig | 5 +-- configs/tools-only_defconfig | 1 + disk/part.c | 16 ++++++++ doc/usage/cmd/acpi.rst | 29 +++++++++++++- doc/usage/cmd/bootflow.rst | 100 ++++++++++++++++++++++++++++++++++++++++++++++- doc/usage/cmd/mtrr.rst | 151 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ doc/usage/cmd/part.rst | 74 +++++++++++++++++++++++++++++++++++ doc/usage/cmd/qfw.rst | 27 +++++++------ doc/usage/index.rst | 1 + drivers/Kconfig | 2 + drivers/Makefile | 2 +- drivers/bios_emulator/Kconfig | 10 +++++ drivers/bios_emulator/biosemui.h | 18 ++++----- drivers/bios_emulator/x86emu/sys.c | 1 + drivers/gpio/intel_ich6_gpio.c | 5 ++- drivers/misc/qfw.c | 13 +++++++ drivers/mmc/mmc_bootdev.c | 2 +- drivers/nvme/nvme.c | 36 ++++++++++++----- drivers/pch/pch9.c | 6 ++- drivers/pci/Kconfig | 5 +++ drivers/pci/pci-uclass.c | 10 ++++- drivers/pci/pci_rom.c | 119 ++++++++++++++++++++++++++++++++++++++------------------ drivers/scsi/scsi_bootdev.c | 2 +- drivers/usb/host/usb_bootdev.c | 2 +- drivers/video/Kconfig | 30 ++++++++++++++ drivers/video/Makefile | 1 + drivers/video/bochs.c | 123 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ drivers/video/bochs.h | 36 +++++++++++++++++ fs/fat/fat.c | 20 +++++----- fs/fat/fat_write.c | 14 ++----- fs/sandbox/host_bootdev.c | 2 +- include/asm-generic/global_data.h | 13 +++++++ include/bloblist.h | 1 + include/bootdev.h | 2 +- include/bootflow.h | 100 ++++++++++++++++++++++++++++++++++++++++++++++- include/configs/conga-qeval20-qa3-e3845.h | 2 - include/configs/dfi-bt700.h | 2 - include/configs/minnowmax.h | 2 - include/configs/qemu-x86.h | 8 ---- include/configs/som-db5800-som-6867.h | 2 - include/configs/theadorable-x86-common.h | 2 - include/configs/x86-chromebook.h | 2 - include/env_callback.h | 6 ++- include/part.h | 9 +++++ include/video.h | 24 ++++++++++++ lib/efi_loader/efi_acpi.c | 33 +++++++++------- lib/uuid.c | 2 +- net/eth_bootdev.c | 2 +- test/boot/bootflow.c | 263 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ test/cmd/bdinfo.c | 21 ++++++++++ test/dm/acpi.c | 38 ++++++++++++++++++ test/test-main.c | 3 +- 95 files changed, 2424 insertions(+), 318 deletions(-) create mode 100644 boot/bootmeth_cros.c create mode 100644 doc/usage/cmd/mtrr.rst create mode 100644 drivers/bios_emulator/Kconfig create mode 100644 drivers/video/bochs.c create mode 100644 drivers/video/bochs.h Regards, Bin