fsp2_0: Gather Kconfig declarations

Move more Kconfig declarations to drivers/intel/fsp2_0/ and document
them properly. This way, we don't have to repeat dependencies and have
the prompts in a common place. We can also easily hide the prompt for
the header path in case the FSP repository is used.

SP platforms were skipped as their Kconfig is too weird but they
shouldn't hold other platforms back.

Change-Id: Iba5af49bcd15427e9eb9b111e6c4cc9bcb7adcae
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/40125
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by:  Felix Singer <felixsinger@posteo.net>
This commit is contained in:
Nico Huber 2020-04-03 23:38:17 +02:00
parent 04da5d72d9
commit a0e72c4867
9 changed files with 25 additions and 29 deletions

View File

@ -31,13 +31,36 @@ config PLATFORM_USES_FSP2_1
if PLATFORM_USES_FSP2_0
config HAVE_INTEL_FSP_REPO
bool
help
Select this, if the FSP binaries for the platform are public
and available in 3rdparty/fsp/. When selecting this option, the
platform must also set FSP_HEADER_PATH and FSP_FD_PATH correctly.
config FSP_USE_REPO
bool "Use binaries of the Intel FSP repository on GitHub"
depends on HAVE_INTEL_FSP_REPO
default y
help
When selecting this option, the SoC must set FSP_HEADER_PATH
and FSP_FD_PATH correctly so FSP splitting works.
Select this option to use the default FSP headers and binaries
found in the IntelFsp GitHub repository at
https://github.com/IntelFsp/FSP/
If unsure, say Y.
config FSP_HEADER_PATH
string "Location of FSP headers" if !FSP_USE_REPO
help
Include directory with the FSP ABI header files.
config FSP_FD_PATH
string
depends on FSP_USE_REPO
help
Path to the FSP FD file that contains the individual FSP-T, FSP-M
and FSP-S binaries.
config ADD_FSP_BINARIES
bool "Add Intel FSP 2.0 binaries to CBFS" if !FSP_USE_REPO

View File

@ -38,9 +38,3 @@ config INTEL_TOP_SWAP_FIT_ENTRY_FMAP_REG
than the one in non-topswap bootblock. This string will be passed
onto ifittool (-A -n option). ifittool will not parse the region for MCU
entries, and only locate the region and insert its address into FIT.
config HAVE_INTEL_FSP_REPO
bool
help
Select this, if the FSP binaries for the platform are public available
in 3rdparty/fsp.

View File

@ -182,13 +182,10 @@ config VERSTAGE_ADDR
The base address (in CAR) where verstage should be linked
config FSP_HEADER_PATH
string "Location of FSP headers"
default "src/vendorcode/intel/fsp/fsp2_0/glk" if SOC_INTEL_GLK
default "3rdparty/fsp/ApolloLakeFspBinPkg/Include/"
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/ApolloLakeFspBinPkg/FspBin/Fsp.fd"
config FSP_M_ADDR

View File

@ -310,14 +310,11 @@ config USE_CANNONLAKE_FSP_CAR
endchoice
config FSP_HEADER_PATH
string "Location of FSP headers"
default "3rdparty/fsp/CoffeeLakeFspBinPkg/Include/" if SOC_INTEL_COFFEELAKE || SOC_INTEL_WHISKEYLAKE
default "3rdparty/fsp/CometLakeFspBinPkg/CometLake1/Include/" if SOC_INTEL_COMETLAKE
default "src/vendorcode/intel/fsp/fsp2_0/cannonlake/" if SOC_INTEL_CANNONLAKE
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/CoffeeLakeFspBinPkg/Fsp.fd" if SOC_INTEL_COFFEELAKE || SOC_INTEL_WHISKEYLAKE
default "3rdparty/fsp/CometLakeFspBinPkg/CometLake1/FSP.fd" if SOC_INTEL_COMETLAKE

View File

@ -81,12 +81,9 @@ config FSP_S_ADDR
The memory location of the Intel FSP-S binary for this platform.
config FSP_HEADER_PATH
string
default "3rdparty/fsp/DenvertonNSFspBinPkg/Include/"
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/DenvertonNSFspBinPkg/FspBin/DenvertonNSFsp.fd"
# CAR memory layout on DENVERTON_NS hardware:

View File

@ -179,12 +179,9 @@ config CBFS_SIZE
default 0x200000
config FSP_HEADER_PATH
string "Location of FSP headers"
default "3rdparty/fsp/IceLakeFspBinPkg/Include"
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/IceLakeFspBinPkg/Fsp.fd"
config SOC_INTEL_ICELAKE_DEBUG_CONSENT

View File

@ -184,12 +184,9 @@ config CBFS_SIZE
default 0x200000
config FSP_HEADER_PATH
string "Location of FSP headers"
default "src/vendorcode/intel/fsp/fsp2_0/jasperlake/"
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/JasperLakeFspBinPkg/Fsp.fd"
config SOC_INTEL_JASPERLAKE_DEBUG_CONSENT

View File

@ -222,14 +222,11 @@ config NHLT_DA7219
Include DSP firmware settings for DA7219 headset codec.
config FSP_HEADER_PATH
string "Location of FSP headers"
# Use KabylakeFsp for both Skylake and Kabylake as it supports both.
# SkylakeFsp is FSP 1.1 and therefore incompatible.
default "3rdparty/fsp/KabylakeFspBinPkg/Include/"
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/KabylakeFspBinPkg/Fsp.fd"
config MAX_ROOT_PORTS

View File

@ -184,12 +184,9 @@ config CBFS_SIZE
default 0x200000
config FSP_HEADER_PATH
string "Location of FSP headers"
default "src/vendorcode/intel/fsp/fsp2_0/tigerlake/"
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/TigerLakeFspBinPkg/Fsp.fd"
config SOC_INTEL_TIGERLAKE_DEBUG_CONSENT