[PATCH 00/34] x86: Enhancements for booting from coreboot

Simon Glass sjg at chromium.org
Mon Mar 15 06:00:00 CET 2021


This series contains various changes to improve U-Boots Coreboot
Filesystem (CBFS) implementation and the overall booting of U-Boot from
coreboot:

- CBFS compression, bare CBFSs
- More coreboot sysinfo parsing
- Command to display coreboot sysinfo
- Various other minor things
- Additional features for booting a coral image from coreboot

These core changes are required to allow the 'coral' U-Boot to run on top
of coreboot and complete the Chromium OS verified boot flow.


Simon Glass (34):
  x86: coral: Free the ACPI GPIOs after using them
  x86: coral: Add information about building / running
  x86: p2sb: Drop LOG_DEBUG
  x86: Probe device if needed in intel_gpio_xlate()
  x86: coral: Put the eMMC first
  x86: coral: Update the SD card-detect GPIO
  tegra: i2c: Drop LOG_DEBUG
  mmc: pci_mmc: Set up the card detect
  cbfs: Add support for attributes
  cbfs: Rename new_node to node
  smbios: Allow writing to the coreboot version string
  cbfs: Allow access to CBFS without a header
  cbfs: Allow file traversal with any CBFS
  cbfs: Factor out filling a cache node into a new function
  cbfs: Simplify file iteration
  cbfs: Support reading compression information
  cbfs: Drop unnecessary cast in file_cbfs_fill_cache()
  x86: Make coreboot sysinfo available to any x86 board
  x86: Move coreboot timestamp info into coreboot_tables.h
  x86: coreboot: Sync up timestamp codes
  x86: Move coreboot sysinfo parsing into generic x86 code
  x86: coreboot: Update parsing of the latest sysinfo
  x86: Allow installing an e820 when booting from coreboot
  x86: Add a command to display coreboot sysinfo
  cmd: Add missing check for CONFIG_SYS_LONGHELP
  video: Fix video on coreboot with the copy buffer
  x86: video: Allow coreboot video to be used on any x86 board
  x86: fsp: Don't enable FSP graphics if booted from coreboot
  dm: core: Add CBFS support to flashmap
  x86: coral: Avoid build error with !CONFIG_ACPIGEN
  x86: coral: Allow init of debug UART in U-Boot proper
  x86: coral: Fall back to coreboot video when FSP missing
  x86: fsp: Don't notify if booted from coreboot
  x86: coreboot: Don't setup MTRR when booting from coreboot

 arch/x86/Kconfig                              |  21 +
 arch/x86/cpu/apollolake/cpu.c                 |  14 +-
 arch/x86/cpu/apollolake/cpu_common.c          |  60 +++
 arch/x86/cpu/apollolake/cpu_spl.c             |  58 ---
 arch/x86/cpu/coreboot/Makefile                |   1 -
 arch/x86/cpu/coreboot/coreboot.c              |   2 +-
 arch/x86/cpu/coreboot/sdram.c                 |  29 +-
 arch/x86/cpu/coreboot/tables.c                | 255 ----------
 arch/x86/cpu/coreboot/timestamp.c             |  14 +-
 arch/x86/cpu/start_from_spl.S                 |   4 +
 arch/x86/dts/chromebook_coral.dts             |   8 +-
 arch/x86/include/asm/arch-apollolake/uart.h   |   1 +
 arch/x86/include/asm/arch-coreboot/sysinfo.h  |  62 ---
 .../x86/include/asm/arch-coreboot/timestamp.h |  25 +-
 arch/x86/include/asm/cb_sysinfo.h             | 220 ++++++++
 arch/x86/include/asm/coreboot_tables.h        | 261 ++++++++--
 arch/x86/include/asm/e820.h                   |  16 +-
 arch/x86/lib/Makefile                         |   1 +
 arch/x86/lib/bootm.c                          |   2 +-
 arch/x86/lib/coreboot/Makefile                |   7 +
 arch/x86/lib/coreboot/cb_support.c            |  41 ++
 arch/x86/lib/coreboot/cb_sysinfo.c            | 468 ++++++++++++++++++
 arch/x86/lib/fsp/fsp_graphics.c               |   2 +-
 arch/x86/lib/fsp2/fsp_init.c                  |   3 +-
 arch/x86/lib/fsp2/fsp_support.c               |   4 +
 arch/x86/lib/init_helpers.c                   |   6 +-
 arch/x86/lib/zimage.c                         |  12 +-
 board/coreboot/coreboot/coreboot.c            |   2 +-
 board/google/chromebook_coral/coral.c         |   2 +
 cmd/Kconfig                                   |   9 +
 cmd/acpi.c                                    |   2 +
 cmd/bloblist.c                                |   2 +
 cmd/version.c                                 |   2 +-
 cmd/x86/Makefile                              |   1 +
 cmd/x86/cbsysinfo.c                           | 394 +++++++++++++++
 doc/board/google/chromebook_coral.rst         | 234 ++++++++-
 doc/usage/index.rst                           |   1 +
 doc/usage/x86/cbsysinfo.rst                   |  25 +
 drivers/gpio/intel_gpio.c                     |  14 +-
 drivers/misc/cbmem_console.c                  |   2 +-
 drivers/misc/p2sb_emul.c                      |   1 -
 drivers/mmc/pci_mmc.c                         |   6 +-
 drivers/pci/pci_rom.c                         |   7 +-
 drivers/serial/serial_coreboot.c              |   2 +-
 drivers/sound/tegra_i2s.c                     |   1 -
 drivers/video/Kconfig                         |   2 +-
 drivers/video/coreboot.c                      |  18 +-
 fs/cbfs/cbfs.c                                | 124 +++--
 include/cbfs.h                                |  77 ++-
 include/configs/chromebook_coral.h            |   6 +-
 include/dm/of_extra.h                         |   8 +
 include/smbios.h                              |  20 +
 lib/smbios-parser.c                           |  38 ++
 lib/smbios.c                                  |   4 -
 54 files changed, 2031 insertions(+), 570 deletions(-)
 delete mode 100644 arch/x86/cpu/coreboot/tables.c
 delete mode 100644 arch/x86/include/asm/arch-coreboot/sysinfo.h
 create mode 100644 arch/x86/include/asm/cb_sysinfo.h
 create mode 100644 arch/x86/lib/coreboot/Makefile
 create mode 100644 arch/x86/lib/coreboot/cb_support.c
 create mode 100644 arch/x86/lib/coreboot/cb_sysinfo.c
 create mode 100644 cmd/x86/cbsysinfo.c
 create mode 100644 doc/usage/x86/cbsysinfo.rst

-- 
2.31.0.rc2.261.g7f71774620-goog



More information about the U-Boot mailing list