Kconfig: lay groundwork for not assuming SPI flash boot device

Almost all boards and chipsets within the codebase assume or
use SPI flash as the boot device. Therefore, provide an option
for the boards/chipsets which don't currently support SPI flash
as the boot device. The default is to assume SPI flash is the
boot device unless otherwise instructed. This falls in line
with the current assumptions, but it also allows one to
differentiate a platform desiring SPI flash support while it not
being the actual boot device.

One thing to note is that while google/daisy does boot with SPI
flash part no SPI API interfaces were ever implemented. Therefore,
mark that board as not having a SPI boot device.

BUG=chrome-os-partner:56151

Change-Id: Id4e0b4ec5e440e41421fbb6d0ca2be4185b62a6e
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16191
Tested-by: build bot (Jenkins)
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Aaron Durbin 2016-08-11 11:02:26 -05:00 committed by Martin Roth
parent 2d97cb1be5
commit 4a36c4e9fc
9 changed files with 20 additions and 0 deletions

View File

@ -471,6 +471,18 @@ endmenu
source "src/acpi/Kconfig"
# This option is for the current boards/chipsets where SPI flash
# is not the boot device. Currently nearly all boards/chipsets assume
# SPI flash is the boot device.
config BOOT_DEVICE_NOT_SPI_FLASH
bool
default n
config BOOT_DEVICE_SPI_FLASH
bool
default y if !BOOT_DEVICE_NOT_SPI_FLASH
default n
config RTC
bool
default n

View File

@ -14,5 +14,6 @@ config CPU_SPECIFIC_OPTIONS
select HAVE_UART_SPECIAL
select BOOTBLOCK_CONSOLE
select UART_OVERRIDE_REFCLK
select BOOT_DEVICE_NOT_SPI_FLASH
endif # if CPU_ALLWINNER_A10

View File

@ -8,5 +8,6 @@ config CPU_TI_AM335X
select BOOTBLOCK_CONSOLE
select GENERIC_UDELAY
select UART_OVERRIDE_REFCLK
select BOOT_DEVICE_NOT_SPI_FLASH
bool
default n

View File

@ -15,6 +15,7 @@
config SPI_FLASH
bool
default y if BOOT_DEVICE_SPI_FLASH
default n
help
Select this option if your chipset driver needs to store certain

View File

@ -31,6 +31,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select ARCH_ROMSTAGE_ARMV7
select ARCH_RAMSTAGE_ARMV7
select BOARD_ROMSIZE_KB_4096
select BOOT_DEVICE_NOT_SPI_FLASH
config MAINBOARD_DIR
string

View File

@ -23,6 +23,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select ARCH_BOOTBLOCK_POWER8
select HAVE_UART_SPECIAL
select ARCH_POWER8
select BOOT_DEVICE_NOT_SPI_FLASH
config MAINBOARD_DIR
string

View File

@ -23,6 +23,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select BOARD_ROMSIZE_KB_4096
select ARCH_BOOTBLOCK_RISCV
select HAVE_UART_SPECIAL
select BOOT_DEVICE_NOT_SPI_FLASH
config MAINBOARD_DIR
string

View File

@ -23,6 +23,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select BOARD_ROMSIZE_KB_4096
select ARCH_BOOTBLOCK_RISCV
select DRIVERS_UART_8250MEM
select BOOT_DEVICE_NOT_SPI_FLASH
config MAINBOARD_DIR
string

View File

@ -17,6 +17,7 @@ if BOARD_GOOGLE_DAISY
config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
select BOOT_DEVICE_NOT_SPI_FLASH
select CPU_SAMSUNG_EXYNOS5250
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_I2C