Kconfig: separate memory mapped boot device from SPI
Make the indication of the boot device being memory mapped separate from SPI. However, retain the same defaults that previously existed. BUG=chrome-os-partner:56151 Change-Id: Ibdd7c8754f9bf560a878136b1f55238e2c2549d3 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: https://review.coreboot.org/16193 Reviewed-by: Andrey Petrov <andrey.petrov@intel.com> Tested-by: build bot (Jenkins) Reviewed-by: Furquan Shaikh <furquan@google.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
parent
3cef11753d
commit
a83bbf5854
|
@ -480,6 +480,13 @@ endmenu
|
||||||
|
|
||||||
source "src/acpi/Kconfig"
|
source "src/acpi/Kconfig"
|
||||||
|
|
||||||
|
config BOOT_DEVICE_MEMORY_MAPPED
|
||||||
|
bool
|
||||||
|
default y if ARCH_X86 && BOOT_DEVICE_SPI_FLASH
|
||||||
|
default n
|
||||||
|
help
|
||||||
|
Inform system if SPI is memory-mapped or not.
|
||||||
|
|
||||||
config RTC
|
config RTC
|
||||||
bool
|
bool
|
||||||
default n
|
default n
|
||||||
|
|
|
@ -586,8 +586,8 @@ static int elog_shrink(void)
|
||||||
*/
|
*/
|
||||||
static inline u8 *elog_flash_offset_to_address(void)
|
static inline u8 *elog_flash_offset_to_address(void)
|
||||||
{
|
{
|
||||||
/* Only support memory-mapped SPI devices. */
|
/* Only support memory-mapped devices. */
|
||||||
if (!IS_ENABLED(CONFIG_SPI_FLASH_MEMORY_MAPPED))
|
if (!IS_ENABLED(CONFIG_BOOT_DEVICE_MEMORY_MAPPED))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
if (!elog_spi)
|
if (!elog_spi)
|
||||||
|
|
|
@ -32,13 +32,6 @@ config SPI_ATOMIC_SEQUENCING
|
||||||
in the SPI controller. Hardware manages the transaction instead of
|
in the SPI controller. Hardware manages the transaction instead of
|
||||||
software. This is common on x86 platforms.
|
software. This is common on x86 platforms.
|
||||||
|
|
||||||
config SPI_FLASH_MEMORY_MAPPED
|
|
||||||
bool
|
|
||||||
default y if ARCH_X86
|
|
||||||
default n if !ARCH_X86
|
|
||||||
help
|
|
||||||
Inform system if SPI is memory-mapped or not.
|
|
||||||
|
|
||||||
config SPI_FLASH_SMM
|
config SPI_FLASH_SMM
|
||||||
bool "SPI flash driver support in SMM"
|
bool "SPI flash driver support in SMM"
|
||||||
default n
|
default n
|
||||||
|
|
|
@ -193,7 +193,7 @@ int cbfs_prog_stage_load(struct prog *pstage)
|
||||||
/* Hacky way to not load programs over read only media. The stages
|
/* Hacky way to not load programs over read only media. The stages
|
||||||
* that would hit this path initialize themselves. */
|
* that would hit this path initialize themselves. */
|
||||||
if (ENV_VERSTAGE && !IS_ENABLED(CONFIG_NO_XIP_EARLY_STAGES) &&
|
if (ENV_VERSTAGE && !IS_ENABLED(CONFIG_NO_XIP_EARLY_STAGES) &&
|
||||||
IS_ENABLED(CONFIG_SPI_FLASH_MEMORY_MAPPED)) {
|
IS_ENABLED(CONFIG_BOOT_DEVICE_MEMORY_MAPPED)) {
|
||||||
void *mapping = rdev_mmap(fh, foffset, fsize);
|
void *mapping = rdev_mmap(fh, foffset, fsize);
|
||||||
rdev_munmap(fh, mapping);
|
rdev_munmap(fh, mapping);
|
||||||
if (mapping == load)
|
if (mapping == load)
|
||||||
|
|
|
@ -160,7 +160,8 @@ void platform_fsp_memory_init_params_cb(struct FSPM_UPD *mupd)
|
||||||
* state machine transition to next boot state, so that it can function
|
* state machine transition to next boot state, so that it can function
|
||||||
* as designed.
|
* as designed.
|
||||||
*/
|
*/
|
||||||
mupd->FspmConfig.SkipCseRbp = IS_ENABLED(CONFIG_SPI_FLASH_MEMORY_MAPPED);
|
mupd->FspmConfig.SkipCseRbp =
|
||||||
|
IS_ENABLED(CONFIG_BOOT_DEVICE_MEMORY_MAPPED);
|
||||||
}
|
}
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
|
|
Loading…
Reference in New Issue