From 826b45b69b9dd492771798679d3a8223a954217f Mon Sep 17 00:00:00 2001 From: Werner Zeh Date: Mon, 12 Sep 2022 06:34:04 +0200 Subject: [PATCH] common/block/fast_spi: Add extended BIOS window as reserved region The fast SPI driver reports the BIOS window as reserved so that the OS is aware of this region. Now that platforms which supports an extended BIOS window are added to this driver, add the extended range as reserved as well if it is enabled. And since this is now handled in the SPI driver itself, remove the extended BIOS region reporting from common systemagent code. Change-Id: Ib5c735bffcb389be07c876d7b5b2d88c545a0b03 Signed-off-by: Werner Zeh Reviewed-on: https://review.coreboot.org/c/coreboot/+/67529 Tested-by: build bot (Jenkins) Reviewed-by: Tim Wawrzynczak Reviewed-by: Subrata Banik --- src/soc/intel/common/block/fast_spi/fast_spi.c | 5 +++++ src/soc/intel/common/block/systemagent/systemagent.c | 5 ----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/soc/intel/common/block/fast_spi/fast_spi.c b/src/soc/intel/common/block/fast_spi/fast_spi.c index e46effcc4e..78225ec0d8 100644 --- a/src/soc/intel/common/block/fast_spi/fast_spi.c +++ b/src/soc/intel/common/block/fast_spi/fast_spi.c @@ -530,6 +530,11 @@ static void fast_spi_read_resources(struct device *dev) /* Add SPI flash MMIO window as a reserved resource. */ mmio_resource_kb(dev, 0, FLASH_BASE_ADDR / KiB, FLASH_MMIO_SIZE / KiB); + /* Add extended SPI flash MMIO window as reserved resource if enabled. */ + if (CONFIG(FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW)) { + mmio_resource_kb(dev, 1, CONFIG_EXT_BIOS_WIN_BASE / KiB, + CONFIG_EXT_BIOS_WIN_SIZE / KiB); + } } static struct device_operations fast_spi_dev_ops = { diff --git a/src/soc/intel/common/block/systemagent/systemagent.c b/src/soc/intel/common/block/systemagent/systemagent.c index 1ceddf34d6..0861e62fc8 100644 --- a/src/soc/intel/common/block/systemagent/systemagent.c +++ b/src/soc/intel/common/block/systemagent/systemagent.c @@ -289,11 +289,6 @@ static void systemagent_read_resources(struct device *dev) if (CONFIG(SA_ENABLE_IMR)) /* Add the isolated memory ranges (IMRs). */ sa_add_imr_resources(dev, &index); - - /* Reserve the window used for extended BIOS decoding. */ - if (CONFIG(FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW)) - mmio_resource_kb(dev, index++, CONFIG_EXT_BIOS_WIN_BASE / KiB, - CONFIG_EXT_BIOS_WIN_SIZE / KiB); } void enable_power_aware_intr(void)