From c6b041a12e56f32be37b809357225e762b070117 Mon Sep 17 00:00:00 2001 From: "Jes B. Klinke" Date: Tue, 19 Apr 2022 14:00:33 -0700 Subject: tpm: Refactor TPM Kconfig dimensions Break TPM related Kconfig into the following dimensions: TPM transport support: config CRB_TPM config I2C_TPM config SPI_TPM config MEMORY_MAPPED_TPM (new) TPM brand, not defining any of these is valid, and result in "generic" support: config TPM_ATMEL (new) config TPM_GOOGLE (new) config TPM_GOOGLE_CR50 (new, implies TPM_GOOGLE) config TPM_GOOGLE_TI50 (new to be used later, implies TPM_GOOGLE) What protocol the TPM chip supports: config MAINBOARD_HAS_TPM1 config MAINBOARD_HAS_TPM2 What the user chooses to compile (restricted by the above): config NO_TPM config TPM1 config TPM2 The following Kconfigs will be replaced as indicated: config TPM_CR50 -> TPM_GOOGLE config MAINBOARD_HAS_CRB_TPM -> CRB_TPM config MAINBOARD_HAS_I2C_TPM_ATMEL -> I2C_TPM && TPM_ATMEL config MAINBOARD_HAS_I2C_TPM_CR50 -> I2C_TPM && TPM_GOOGLE config MAINBOARD_HAS_I2C_TPM_GENERIC -> I2C_TPM && !TPM_GOOGLE && !TPM_ATMEL config MAINBOARD_HAS_LPC_TPM -> MEMORY_MAPPED_TPM config MAINBOARD_HAS_SPI_TPM -> SPI_TPM && !TPM_GOOGLE && !TPM_ATMEL config MAINBOARD_HAS_SPI_TPM_CR50 -> SPI_TPM && TPM_GOOGLE Signed-off-by: Jes B. Klinke Change-Id: I4656b2b90363b8dfd008dc281ad591862fe2cc9e Reviewed-on: https://review.coreboot.org/c/coreboot/+/63424 Tested-by: build bot (Jenkins) Reviewed-by: Yu-Ping Wu Reviewed-by: Tim Wawrzynczak Reviewed-by: Julius Werner --- src/drivers/i2c/tpm/Makefile.inc | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) (limited to 'src/drivers/i2c/tpm/Makefile.inc') diff --git a/src/drivers/i2c/tpm/Makefile.inc b/src/drivers/i2c/tpm/Makefile.inc index 51856fa9f0..ae50f2b342 100644 --- a/src/drivers/i2c/tpm/Makefile.inc +++ b/src/drivers/i2c/tpm/Makefile.inc @@ -1,25 +1,15 @@ -ramstage-$(CONFIG_DRIVER_TIS_DEFAULT) += tis.c -romstage-$(CONFIG_DRIVER_TIS_DEFAULT) += tis.c -verstage-$(CONFIG_DRIVER_TIS_DEFAULT) += tis.c -bootblock-$(CONFIG_DRIVER_TIS_DEFAULT) += tis.c -postcar-$(CONFIG_DRIVER_TIS_DEFAULT) += tis.c +ifeq ($(CONFIG_TPM)$(CONFIG_I2C_TPM),yy) -ramstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_ATMEL) += tis_atmel.c -romstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_ATMEL) += tis_atmel.c -verstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_ATMEL) += tis_atmel.c -bootblock-$(CONFIG_MAINBOARD_HAS_I2C_TPM_ATMEL) += tis_atmel.c -postcar-$(CONFIG_MAINBOARD_HAS_I2C_TPM_ATMEL) += tis_atmel.c +all-$(CONFIG_DRIVER_TIS_DEFAULT) += tis.c -ramstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_GENERIC) += tpm.c -romstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_GENERIC) += tpm.c -verstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_GENERIC) += tpm.c -bootblock-$(CONFIG_MAINBOARD_HAS_I2C_TPM_GENERIC) += tpm.c -postcar-$(CONFIG_MAINBOARD_HAS_I2C_TPM_GENERIC) += tpm.c +ifeq ($(CONFIG_TPM_ATMEL),y) +all-y += tis_atmel.c +else ifeq ($(CONFIG_TPM_GOOGLE),y) +all-y += cr50.c +else +all-y += tpm.c +endif -ramstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_CR50) += cr50.c -romstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_CR50) += cr50.c -verstage-$(CONFIG_MAINBOARD_HAS_I2C_TPM_CR50) += cr50.c -bootblock-$(CONFIG_MAINBOARD_HAS_I2C_TPM_CR50) += cr50.c -postcar-$(CONFIG_MAINBOARD_HAS_I2C_TPM_CR50) += cr50.c +endif ramstage-$(CONFIG_DRIVER_I2C_TPM_ACPI) += chip.c -- cgit v1.2.3