[U-Boot] [PATCH v2 00/38] x86: Various modifications to prepare for FSP2
Simon Glass
sjg at chromium.org
Wed Sep 25 14:11:09 UTC 2019
Quite a bit of minor refactoring is needed to prepare for using FSP2 in
U-Boot. This series consists of a number of small changes to this end.
It is the last series before apollolake support is added.
Changes include:
- Allowing drivers to be used in TPL/SPL
- Moving common FSP code into a common directory
- Support for memory-mapped flash on newer Intel chips
- Passing the HOB list from SPL to U-Boot proper
This series is available at u-boot-dm/x86-working
Changes in v2:
- Fix the Kconfig condition to avoid build errors on snow
- Add the missing header file
- Add support for of-platdata for TPL
- Rename the fast SPI headers
- Rebase to master
Simon Glass (38):
binman: Pass the toolpath to binman from the main Makefile
binman: Allow selection of logging verbosity
dm: gpio: Allow control of GPIO uclass in SPL
mtd: spi: Add 'struct spi_flash {' to the code
serial: ns16550: Allow serial to enabled/disabled in SPL
spl: Correct priority selection for image loaders
spl: Avoid checking for Ctrl-C in SPL with print_buffer()
spl: handoff: Correct Kconfig condition for SPL and TPL
spl: Add an arch-specific hook for writing to SPL handoff
spl: Set up the bloblist in board_init_r()
spl: Add a function to determine the U-Boot phase
x86: spi: Add a driver for the Intel Fast SPI interface
spi: sandbox: Add a test driver for sandbox SPI flash
spi: Add support for memory-mapped flash
x86: sysreset: Allow reset driver to be included in SPL/TPL
x86: Rename some FSP functions to have an fsp_ prefix
x86: fsp: Create a common fsp_support.h header
x86: fsp: Use if() instead of #ifdef
x86: fsp: Tidy up comment style a little
x86: fsp: Move common dram functions into a common file
x86: Move common fsp functions into a common file
x86: fsp: Move common support functions into a common file
efi: Move inline functions to unconditional part of header
x86: fsp: Add a few more definitions for FSP2
x86: fsp: Add access to variable MRC data
x86: Move common Intel CPU info code into a function
x86: Add binman symbols to the image
x86: pci: Add a function to clear and set PCI config regs
x86: spl: Use hang() instead of a while() loop
x86: spl: Reduce priority of the basic SPL image loader
x86: spl: Move broadwell-specific code out of generic x86 spl
x86: fsp: Save usable RAM and hob_list in the handoff area
x86: fsp: Allow the HOBs to be used after relocation
x86: Change condition for using CAR
x86: Add more comments to the start-up code
x86: Add support for booting from Fast SPI
x86: Add various MTRR indexes and values
x86: Rename turbo ratio MSR to MSR_TURBO_RATIO_LIMIT
Makefile | 4 +-
arch/sandbox/cpu/spl.c | 7 +
arch/sandbox/dts/test.dts | 4 +
arch/x86/Kconfig | 8 +
arch/x86/cpu/baytrail/fsp_configs.c | 2 +-
arch/x86/cpu/braswell/fsp_configs.c | 2 +-
arch/x86/cpu/broadwell/cpu.c | 5 +
arch/x86/cpu/broadwell/cpu_full.c | 18 +-
arch/x86/cpu/cpu.c | 6 +
arch/x86/cpu/intel_common/Makefile | 1 +
arch/x86/cpu/intel_common/cpu.c | 13 +
arch/x86/cpu/intel_common/cpu_from_spl.c | 6 +
arch/x86/cpu/intel_common/fast_spi.c | 48 +++
arch/x86/cpu/ivybridge/fsp_configs.c | 2 +-
arch/x86/cpu/ivybridge/model_206ax.c | 8 +-
arch/x86/cpu/pci.c | 19 ++
arch/x86/cpu/queensbay/fsp_configs.c | 2 +-
arch/x86/cpu/start.S | 16 +-
arch/x86/cpu/start_from_spl.S | 5 +-
arch/x86/cpu/start_from_tpl.S | 3 +-
arch/x86/cpu/u-boot-spl.lds | 6 +
arch/x86/include/asm/cpu_common.h | 11 +
arch/x86/include/asm/fsp/fsp_hob.h | 4 +
arch/x86/include/asm/fsp/fsp_infoheader.h | 15 +-
arch/x86/include/asm/fsp/fsp_support.h | 174 +++++++++++
arch/x86/include/asm/fsp1/fsp_support.h | 147 +--------
arch/x86/include/asm/handoff.h | 8 +
arch/x86/include/asm/hob.h | 26 +-
arch/x86/include/asm/msr-index.h | 24 +-
arch/x86/include/asm/mtrr.h | 1 +
arch/x86/include/asm/pci.h | 40 +++
arch/x86/include/asm/spl.h | 4 +-
arch/x86/lib/Makefile | 1 +
arch/x86/lib/fsp/Makefile | 7 +
arch/x86/lib/fsp/fsp_common.c | 104 +++++++
arch/x86/lib/fsp/fsp_dram.c | 100 ++++++
arch/x86/lib/fsp/fsp_support.c | 199 ++++++++++++
arch/x86/lib/fsp1/fsp_car.S | 10 +-
arch/x86/lib/fsp1/fsp_common.c | 96 +-----
arch/x86/lib/fsp1/fsp_dram.c | 88 +-----
arch/x86/lib/fsp1/fsp_support.c | 181 +----------
arch/x86/lib/hob.c | 19 +-
arch/x86/lib/spl.c | 13 +-
arch/x86/lib/tpl.c | 7 +-
cmd/x86/fsp.c | 2 +-
common/spl/Kconfig | 4 +-
common/spl/spl.c | 47 +--
configs/slimbootloader_defconfig | 1 +
drivers/gpio/Kconfig | 22 ++
drivers/gpio/Makefile | 2 +-
drivers/mtd/spi/Kconfig | 9 +
drivers/mtd/spi/Makefile | 3 +-
drivers/mtd/spi/intel_fast_spi.c | 360 ++++++++++++++++++++++
drivers/mtd/spi/sandbox_direct.c | 110 +++++++
drivers/mtd/spi/sf-uclass.c | 11 +
drivers/pci/pci-uclass.c | 2 +-
drivers/serial/ns16550.c | 6 +-
drivers/sysreset/Kconfig | 12 +
drivers/sysreset/Makefile | 2 +-
include/config_uncmd_spl.h | 1 -
include/efi_loader.h | 10 +-
include/handoff.h | 13 +
include/linux/mtd/spi-nor.h | 8 +-
include/spi_flash.h | 27 ++
include/spl.h | 64 +++-
lib/display_options.c | 2 +
test/dm/sf.c | 51 +++
tools/binman/README | 6 +
68 files changed, 1662 insertions(+), 577 deletions(-)
create mode 100644 arch/x86/cpu/intel_common/fast_spi.c
create mode 100644 arch/x86/include/asm/fsp/fsp_support.h
create mode 100644 arch/x86/lib/fsp/Makefile
create mode 100644 arch/x86/lib/fsp/fsp_common.c
create mode 100644 arch/x86/lib/fsp/fsp_dram.c
create mode 100644 arch/x86/lib/fsp/fsp_support.c
create mode 100644 drivers/mtd/spi/intel_fast_spi.c
create mode 100644 drivers/mtd/spi/sandbox_direct.c
--
2.23.0.444.g18eeb5a265-goog
More information about the U-Boot
mailing list