diff options
author | Nico Huber <nico.h@gmx.de> | 2018-06-05 22:14:41 +0200 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2018-06-11 08:43:09 +0000 |
commit | 1d017363c4fe44af4ede6cbfdf0f950ee5c6722d (patch) | |
tree | 87f82556142ede653fd1e0b7b3726bf66d67f74b | |
parent | 653d5d3b12bcf09f974bc9d9f4abd6f1627c2e2c (diff) |
drivers/spi: Treat all stages commonly when adding drivers
Clean it up and add all flash chip drivers to postcar stage thereby.
There seem to be SPI controllers that don't need the individual
flash chip drivers. For those postcar support was added in b6b1b23
(console/flashconsole: Enable support for postcar). However for
SPI controllers that need the individual drivers (i.e. those with
CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y), linking of the postcar
stage was broken.
For all other stages, the set of compilation units stays the same.
Change-Id: Ib8bdb824bfcf2d31ac696e39f797c4355b765756
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/26871
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r-- | src/drivers/spi/Makefile.inc | 129 |
1 files changed, 29 insertions, 100 deletions
diff --git a/src/drivers/spi/Makefile.inc b/src/drivers/spi/Makefile.inc index cd404f489e..e55233e9d8 100644 --- a/src/drivers/spi/Makefile.inc +++ b/src/drivers/spi/Makefile.inc @@ -7,105 +7,34 @@ ramstage-y += spiconsole.c smm-y += spiconsole.c endif -ifeq ($(CONFIG_CONSOLE_SPI_FLASH),y) -bootblock-y += flashconsole.c -verstage-y += flashconsole.c -romstage-y += flashconsole.c -ramstage-y += flashconsole.c -postcar-y += flashconsole.c -smm-y += flashconsole.c -endif - -bootblock-y += spi-generic.c -bootblock-y += bitbang.c -bootblock-$(CONFIG_COMMON_CBFS_SPI_WRAPPER) += cbfs_spi.c -bootblock-$(CONFIG_SPI_FLASH) += spi_flash.c -bootblock-$(CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY) += boot_device_rw_nommap.c -bootblock-$(CONFIG_SPI_FLASH_ADESTO) += adesto.c -bootblock-$(CONFIG_SPI_FLASH_AMIC) += amic.c -bootblock-$(CONFIG_SPI_FLASH_ATMEL) += atmel.c -bootblock-$(CONFIG_SPI_FLASH_EON) += eon.c -bootblock-$(CONFIG_SPI_FLASH_GIGADEVICE) += gigadevice.c -bootblock-$(CONFIG_SPI_FLASH_MACRONIX) += macronix.c -bootblock-$(CONFIG_SPI_FLASH_SPANSION) += spansion.c -bootblock-$(CONFIG_SPI_FLASH_SST) += sst.c -bootblock-$(CONFIG_SPI_FLASH_STMICRO) += stmicro.c -bootblock-$(CONFIG_SPI_FLASH_WINBOND) += winbond.c -bootblock-$(CONFIG_SPI_FRAM_RAMTRON) += ramtron.c - -romstage-y += spi-generic.c -romstage-y += bitbang.c -romstage-$(CONFIG_COMMON_CBFS_SPI_WRAPPER) += cbfs_spi.c -romstage-$(CONFIG_SPI_FLASH) += spi_flash.c -romstage-$(CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY) += boot_device_rw_nommap.c -romstage-$(CONFIG_SPI_FLASH_ADESTO) += adesto.c -romstage-$(CONFIG_SPI_FLASH_AMIC) += amic.c -romstage-$(CONFIG_SPI_FLASH_ATMEL) += atmel.c -romstage-$(CONFIG_SPI_FLASH_EON) += eon.c -romstage-$(CONFIG_SPI_FLASH_GIGADEVICE) += gigadevice.c -romstage-$(CONFIG_SPI_FLASH_MACRONIX) += macronix.c -romstage-$(CONFIG_SPI_FLASH_SPANSION) += spansion.c -romstage-$(CONFIG_SPI_FLASH_SST) += sst.c -romstage-$(CONFIG_SPI_FLASH_STMICRO) += stmicro.c -romstage-$(CONFIG_SPI_FLASH_WINBOND) += winbond.c -romstage-$(CONFIG_SPI_FRAM_RAMTRON) += ramtron.c - -verstage-y += spi-generic.c -verstage-y += bitbang.c -verstage-$(CONFIG_COMMON_CBFS_SPI_WRAPPER) += cbfs_spi.c -verstage-$(CONFIG_SPI_FLASH) += spi_flash.c -verstage-$(CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY) += boot_device_rw_nommap.c -verstage-$(CONFIG_SPI_FLASH_ADESTO) += adesto.c -verstage-$(CONFIG_SPI_FLASH_AMIC) += amic.c -verstage-$(CONFIG_SPI_FLASH_ATMEL) += atmel.c -verstage-$(CONFIG_SPI_FLASH_EON) += eon.c -verstage-$(CONFIG_SPI_FLASH_GIGADEVICE) += gigadevice.c -verstage-$(CONFIG_SPI_FLASH_MACRONIX) += macronix.c -verstage-$(CONFIG_SPI_FLASH_SPANSION) += spansion.c -verstage-$(CONFIG_SPI_FLASH_SST) += sst.c -verstage-$(CONFIG_SPI_FLASH_STMICRO) += stmicro.c -verstage-$(CONFIG_SPI_FLASH_WINBOND) += winbond.c -verstage-$(CONFIG_SPI_FRAM_RAMTRON) += ramtron.c - -ramstage-y += spi-generic.c -ramstage-y += bitbang.c -ramstage-$(CONFIG_COMMON_CBFS_SPI_WRAPPER) += cbfs_spi.c -ramstage-$(CONFIG_SPI_FLASH) += spi_flash.c -ramstage-$(CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP) += boot_device_rw_nommap.c -ramstage-$(CONFIG_SPI_FLASH_ADESTO) += adesto.c -ramstage-$(CONFIG_SPI_FLASH_AMIC) += amic.c -ramstage-$(CONFIG_SPI_FLASH_ATMEL) += atmel.c -ramstage-$(CONFIG_SPI_FLASH_EON) += eon.c -ramstage-$(CONFIG_SPI_FLASH_GIGADEVICE) += gigadevice.c -ramstage-$(CONFIG_SPI_FLASH_MACRONIX) += macronix.c -ramstage-$(CONFIG_SPI_FLASH_SPANSION) += spansion.c -ramstage-$(CONFIG_SPI_FLASH_SST) += sst.c -ramstage-$(CONFIG_SPI_FLASH_STMICRO) += stmicro.c -ramstage-$(CONFIG_SPI_FLASH_WINBOND) += winbond.c -ramstage-$(CONFIG_SPI_FRAM_RAMTRON) += ramtron.c - +# add SPI drivers per stage +# $1 stage name +# $2 optional _EARLY suffix for CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP(_EARLY) +define add_spi_stage +$(1)-y += spi-generic.c +$(1)-y += bitbang.c +$(1)-$(CONFIG_COMMON_CBFS_SPI_WRAPPER) += cbfs_spi.c +$(1)-$(CONFIG_SPI_FLASH) += spi_flash.c +$(1)-$(CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP$(2)) += boot_device_rw_nommap.c +$(1)-$(CONFIG_CONSOLE_SPI_FLASH) += flashconsole.c +$(1)-$(CONFIG_SPI_FLASH_ADESTO) += adesto.c +$(1)-$(CONFIG_SPI_FLASH_AMIC) += amic.c +$(1)-$(CONFIG_SPI_FLASH_ATMEL) += atmel.c +$(1)-$(CONFIG_SPI_FLASH_EON) += eon.c +$(1)-$(CONFIG_SPI_FLASH_GIGADEVICE) += gigadevice.c +$(1)-$(CONFIG_SPI_FLASH_MACRONIX) += macronix.c +$(1)-$(CONFIG_SPI_FLASH_SPANSION) += spansion.c +$(1)-$(CONFIG_SPI_FLASH_SST) += sst.c +$(1)-$(CONFIG_SPI_FLASH_STMICRO) += stmicro.c +$(1)-$(CONFIG_SPI_FLASH_WINBOND) += winbond.c +$(1)-$(CONFIG_SPI_FRAM_RAMTRON) += ramtron.c +endef + +$(eval $(call add_spi_stage,bootblock,_EARLY)) +$(eval $(call add_spi_stage,romstage,_EARLY)) +$(eval $(call add_spi_stage,verstage,_EARLY)) +$(eval $(call add_spi_stage,postcar,_EARLY)) +$(eval $(call add_spi_stage,ramstage)) ifeq ($(CONFIG_SPI_FLASH_SMM),y) -smm-y += spi-generic.c -smm-y += bitbang.c -# SPI flash driver interface -smm-$(CONFIG_SPI_FLASH) += spi_flash.c -smm-$(CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP) += boot_device_rw_nommap.c - -# drivers -smm-$(CONFIG_SPI_FLASH_ADESTO) += adesto.c -smm-$(CONFIG_SPI_FLASH_AMIC) += amic.c -smm-$(CONFIG_SPI_FLASH_ATMEL) += atmel.c -smm-$(CONFIG_SPI_FLASH_EON) += eon.c -smm-$(CONFIG_SPI_FLASH_MACRONIX) += macronix.c -smm-$(CONFIG_SPI_FLASH_GIGADEVICE) += gigadevice.c -smm-$(CONFIG_SPI_FLASH_SPANSION) += spansion.c -smm-$(CONFIG_SPI_FLASH_SST) += sst.c -smm-$(CONFIG_SPI_FLASH_STMICRO) += stmicro.c -smm-$(CONFIG_SPI_FLASH_WINBOND) += winbond.c -smm-$(CONFIG_SPI_FRAM_RAMTRON) += ramtron.c +$(eval $(call add_spi_stage,smm)) endif - -postcar-y += spi-generic.c -postcar-y += bitbang.c -postcar-$(CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY) += boot_device_rw_nommap.c -postcar-$(CONFIG_SPI_FLASH) += spi_flash.c |