Please pull u-boot-x86

Bin Meng
2023-07-17T12:44:21Z

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