summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/arch/x86/Kconfig10
-rw-r--r--src/soc/intel/apollolake/Kconfig9
-rw-r--r--src/soc/intel/common/block/fast_spi/Kconfig15
3 files changed, 14 insertions, 20 deletions
diff --git a/src/arch/x86/Kconfig b/src/arch/x86/Kconfig
index ef07a2a03a..6af3fa8b69 100644
--- a/src/arch/x86/Kconfig
+++ b/src/arch/x86/Kconfig
@@ -137,11 +137,15 @@ config RAMTOP
# Traditionally BIOS region on SPI flash boot media was memory mapped right below
# 4G and it was the last region in the IFD. This way translation between CPU
# address space to flash address was trivial. However some IFDs on newer SoCs
-# have BIOS region sandwiched between descriptor and other regions. Turning off
-# this option enables soc code to provide custom mmap_boot.c which can be used to
-# implement complex translation.
+# have BIOS region sandwiched between descriptor and other regions. Turning on
+# X86_CUSTOM_BOOTMEDIA disables X86_TOP4G_BOOTMEDIA_MAP which allows the
+# soc code to provide custom mmap_boot.c.
+config X86_CUSTOM_BOOTMEDIA
+ bool
+
config X86_TOP4G_BOOTMEDIA_MAP
bool
+ depends on !X86_CUSTOM_BOOTMEDIA
default y
# This is something you almost certainly don't want to mess with.
diff --git a/src/soc/intel/apollolake/Kconfig b/src/soc/intel/apollolake/Kconfig
index d81015e762..6395f16f7c 100644
--- a/src/soc/intel/apollolake/Kconfig
+++ b/src/soc/intel/apollolake/Kconfig
@@ -112,6 +112,9 @@ config CPU_SPECIFIC_OPTIONS
select INTEL_GMA_ACPI
select INTEL_GMA_SWSMISCI
select HAVE_ASAN_IN_ROMSTAGE
+ # This SoC does not map SPI flash like many previous SoC. Therefore we
+ # provide a custom media driver that facilitates mapping
+ select X86_CUSTOM_BOOTMEDIA
config MAX_CPUS
int
@@ -173,12 +176,6 @@ config C_ENV_BOOTBLOCK_SIZE
hex
default 0x8000
-# This SoC does not map SPI flash like many previous SoC. Therefore we provide
-# a custom media driver that facilitates mapping
-config X86_TOP4G_BOOTMEDIA_MAP
- bool
- default n
-
config ROMSTAGE_ADDR
hex
default 0xfef20000
diff --git a/src/soc/intel/common/block/fast_spi/Kconfig b/src/soc/intel/common/block/fast_spi/Kconfig
index eb2373ca8b..9257bde0f5 100644
--- a/src/soc/intel/common/block/fast_spi/Kconfig
+++ b/src/soc/intel/common/block/fast_spi/Kconfig
@@ -15,6 +15,10 @@ config FAST_SPI_DISABLE_WRITE_STATUS
config FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW
bool
depends on SOC_INTEL_COMMON_BLOCK_FAST_SPI
+ # Enable X86_CUSTOM_BOOTMEDIA because the fast SPI controller
+ # driver provides a custom boot media device when multiple decode
+ # windows are used for the BIOS region.
+ select X86_CUSTOM_BOOTMEDIA
help
Fast SPI controller on the platform supports additional
window for memory mapping BIOS region (region 1) on the SPI
@@ -45,14 +49,3 @@ config EXT_BIOS_WIN_SIZE
Maximum size of the extended window reserved for mapping BIOS
region greater than 16MiB. The actual mapped window might be
smaller depending upon the size of the BIOS region.
-
-if FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW
-
-# Disable X86_TOP4G_BOOTMEDIA_MAP because the fast SPI controller
-# driver provides a custom boot media device when multiple decode
-# windows are used for the BIOS region.
-
-config X86_TOP4G_BOOTMEDIA_MAP
- default n
-
-endif