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 <jbk@chromium.org>
Change-Id: I4656b2b90363b8dfd008dc281ad591862fe2cc9e
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63424
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
diff --git a/src/drivers/crb/Kconfig b/src/drivers/crb/Kconfig
index bfd8be0..b65176e 100644
--- a/src/drivers/crb/Kconfig
+++ b/src/drivers/crb/Kconfig
@@ -1,17 +1,11 @@
config CRB_TPM
bool
+ default n
help
- CRB TPM driver is enabled!
+ Mainboard has Command Response Buffer support
config CRB_TPM_BASE_ADDRESS
hex
default 0xfed40000
help
Base Address of the CRB TPM Command Structure
-
-config MAINBOARD_HAS_CRB_TPM
- bool
- default n
- select CRB_TPM
- help
- Mainboard has Command Response Buffer support
diff --git a/src/drivers/crb/Makefile.inc b/src/drivers/crb/Makefile.inc
index 3f12b36..5124514 100644
--- a/src/drivers/crb/Makefile.inc
+++ b/src/drivers/crb/Makefile.inc
@@ -1,5 +1,3 @@
-bootblock-$(CONFIG_CRB_TPM) += tis.c tpm.c
-verstage-$(CONFIG_CRB_TPM) += tis.c tpm.c
-romstage-$(CONFIG_CRB_TPM) += tis.c tpm.c
-ramstage-$(CONFIG_CRB_TPM) += tis.c tpm.c
-postcar-$(CONFIG_CRB_TPM) += tis.c tpm.c
+ifeq ($(CONFIG_CRB_TPM),y)
+all-y += tis.c tpm.c
+endif
diff --git a/src/drivers/i2c/tpm/Kconfig b/src/drivers/i2c/tpm/Kconfig
index 0d5f06b..8efcbaf 100644
--- a/src/drivers/i2c/tpm/Kconfig
+++ b/src/drivers/i2c/tpm/Kconfig
@@ -3,27 +3,6 @@
help
I2C TPM driver is enabled!
-config MAINBOARD_HAS_I2C_TPM_ATMEL
- bool
- default n
- select I2C_TPM
- help
- Board has an Atmel I2C TPM support
-
-config MAINBOARD_HAS_I2C_TPM_CR50
- bool
- default n
- select I2C_TPM
- help
- Board has a Cr50 I2C TPM support
-
-config MAINBOARD_HAS_I2C_TPM_GENERIC
- bool
- default n
- select I2C_TPM
- help
- Board has a generic I2C TPM support
-
config MAINBOARD_NEEDS_I2C_TI50_WORKAROUND
bool
default n
@@ -36,7 +15,7 @@
config DRIVER_TIS_DEFAULT
bool
depends on I2C_TPM
- default n if MAINBOARD_HAS_I2C_TPM_ATMEL
+ default n if TPM_ATMEL
default y
config DRIVER_TPM_I2C_BUS
@@ -58,3 +37,9 @@
bool "TPM: Display the TIS transactions to I2C TPM chip"
default n
depends on I2C_TPM
+
+config TPM_ATMEL
+ bool
+ default n
+ help
+ The mainboard has an Atmel TPM chip.
diff --git a/src/drivers/i2c/tpm/Makefile.inc b/src/drivers/i2c/tpm/Makefile.inc
index 51856fa..ae50f2b 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
diff --git a/src/drivers/pc80/tpm/Kconfig b/src/drivers/pc80/tpm/Kconfig
index 4a40b29..94920df 100644
--- a/src/drivers/pc80/tpm/Kconfig
+++ b/src/drivers/pc80/tpm/Kconfig
@@ -1,10 +1,10 @@
-config MAINBOARD_HAS_LPC_TPM
+config MEMORY_MAPPED_TPM
bool
default n
help
- Board has LPC TPM support
+ Board has memory mapped TPM support
-if MAINBOARD_HAS_LPC_TPM
+if MEMORY_MAPPED_TPM
config TPM_TIS_BASE_ADDRESS
hex
diff --git a/src/drivers/pc80/tpm/Makefile.inc b/src/drivers/pc80/tpm/Makefile.inc
index 8b2a864..8592337 100644
--- a/src/drivers/pc80/tpm/Makefile.inc
+++ b/src/drivers/pc80/tpm/Makefile.inc
@@ -1,5 +1,3 @@
-bootblock-$(CONFIG_MAINBOARD_HAS_LPC_TPM) += tis.c
-verstage-$(CONFIG_MAINBOARD_HAS_LPC_TPM) += tis.c
-romstage-$(CONFIG_MAINBOARD_HAS_LPC_TPM) += tis.c
-ramstage-$(CONFIG_MAINBOARD_HAS_LPC_TPM) += tis.c
-postcar-$(CONFIG_MAINBOARD_HAS_LPC_TPM) += tis.c
+ifeq ($(CONFIG_MEMORY_MAPPED_TPM),y)
+all-y += tis.c
+endif
diff --git a/src/drivers/spi/tpm/Kconfig b/src/drivers/spi/tpm/Kconfig
index 8c39a4a..7a55318 100644
--- a/src/drivers/spi/tpm/Kconfig
+++ b/src/drivers/spi/tpm/Kconfig
@@ -12,17 +12,3 @@
int "Chip Select of the TPM chip on its SPI bus"
default 0
depends on SPI_TPM
-
-config MAINBOARD_HAS_SPI_TPM_CR50
- bool
- default n
- select MAINBOARD_HAS_SPI_TPM
- help
- Board has a CR50 SPI TPM
-
-config MAINBOARD_HAS_SPI_TPM
- bool
- default n
- select SPI_TPM
- help
- Board has SPI TPM support
diff --git a/src/drivers/spi/tpm/Makefile.inc b/src/drivers/spi/tpm/Makefile.inc
index 01d3b66..023479f 100644
--- a/src/drivers/spi/tpm/Makefile.inc
+++ b/src/drivers/spi/tpm/Makefile.inc
@@ -1,5 +1,3 @@
-bootblock-$(CONFIG_SPI_TPM) += tis.c tpm.c
-verstage-$(CONFIG_SPI_TPM) += tis.c tpm.c
-romstage-$(CONFIG_SPI_TPM) += tis.c tpm.c
-ramstage-$(CONFIG_SPI_TPM) += tis.c tpm.c
-postcar-$(CONFIG_SPI_TPM) += tis.c tpm.c
+ifeq ($(CONFIG_TPM)$(CONFIG_SPI_TPM),yy)
+all-y += tis.c tpm.c
+endif
diff --git a/src/drivers/spi/tpm/tpm.c b/src/drivers/spi/tpm/tpm.c
index 43fd933..1462dd9 100644
--- a/src/drivers/spi/tpm/tpm.c
+++ b/src/drivers/spi/tpm/tpm.c
@@ -104,7 +104,7 @@
static int tpm_sync_needed;
static struct stopwatch wake_up_sw;
- if (CONFIG(TPM_CR50)) {
+ if (CONFIG(TPM_GOOGLE)) {
/*
* First Cr50 access in each coreboot stage where TPM is used will be
* prepended by a wake up pulse on the CS line.
@@ -186,7 +186,7 @@
*/
header_resp.body[3] = 0;
- if (CONFIG(TPM_CR50))
+ if (CONFIG(TPM_GOOGLE))
ret = spi_xfer(&spi_slave, header.body, sizeof(header.body), NULL, 0);
else
ret = spi_xfer(&spi_slave, header.body, sizeof(header.body),
@@ -497,7 +497,7 @@
tpm_info.vendor_id, tpm_info.device_id, tpm_info.revision);
/* Do some cr50-specific things here. */
- if (CONFIG(TPM_CR50) && tpm_info.vendor_id == 0x1ae0) {
+ if (CONFIG(TPM_GOOGLE) && tpm_info.vendor_id == 0x1ae0) {
struct cr50_firmware_version ver;
if (tpm_first_access_this_boot()) {
diff --git a/src/drivers/tpm/Makefile.inc b/src/drivers/tpm/Makefile.inc
index a56c02b..7f0bbf5 100644
--- a/src/drivers/tpm/Makefile.inc
+++ b/src/drivers/tpm/Makefile.inc
@@ -1,3 +1,5 @@
+ifeq ($(CONFIG_TPM),y)
+
ramstage-$(CONFIG_TPM_INIT_RAMSTAGE) += tpm.c
ifeq ($(CONFIG_TPM_PPI),y)
@@ -6,8 +8,6 @@
ramstage-$(CONFIG_HAVE_ACPI_TABLES) += ppi_stub.c
endif
-bootblock-$(CONFIG_TPM_CR50) += cr50.c
-verstage-$(CONFIG_TPM_CR50) += cr50.c
-romstage-$(CONFIG_TPM_CR50) += cr50.c
-ramstage-$(CONFIG_TPM_CR50) += cr50.c
-postcar-$(CONFIG_TPM_CR50) += cr50.c
+all-$(CONFIG_TPM_GOOGLE) += cr50.c
+
+endif
diff --git a/src/mainboard/acer/aspire_vn7_572g/Kconfig b/src/mainboard/acer/aspire_vn7_572g/Kconfig
index 449eeee..cee7b7e 100644
--- a/src/mainboard/acer/aspire_vn7_572g/Kconfig
+++ b/src/mainboard/acer/aspire_vn7_572g/Kconfig
@@ -16,7 +16,7 @@
select INTEL_GMA_HAVE_VBT
select INTEL_INT15
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_CRB_TPM
+ select CRB_TPM
select MAINBOARD_HAS_LIBGFXINIT
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
diff --git a/src/mainboard/asrock/b85m_pro4/Kconfig b/src/mainboard/asrock/b85m_pro4/Kconfig
index 667a2bd..51a4888 100644
--- a/src/mainboard/asrock/b85m_pro4/Kconfig
+++ b/src/mainboard/asrock/b85m_pro4/Kconfig
@@ -11,7 +11,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_USES_IFD_GBE_REGION
select NORTHBRIDGE_INTEL_HASWELL
select SERIRQ_CONTINUOUS_MODE
diff --git a/src/mainboard/asrock/h110m/Kconfig b/src/mainboard/asrock/h110m/Kconfig
index 7f84adb..b4e4851 100644
--- a/src/mainboard/asrock/h110m/Kconfig
+++ b/src/mainboard/asrock/h110m/Kconfig
@@ -15,7 +15,7 @@
select SUPERIO_NUVOTON_NCT6791D
select REALTEK_8168_RESET
select RT8168_SET_LED_MODE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
config DISABLE_HECI1_AT_PRE_BOOT
default y
diff --git a/src/mainboard/asus/am1i-a/Kconfig b/src/mainboard/asus/am1i-a/Kconfig
index 9d2cb16..9a4c8e3 100644
--- a/src/mainboard/asus/am1i-a/Kconfig
+++ b/src/mainboard/asus/am1i-a/Kconfig
@@ -18,7 +18,7 @@
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
select DEFAULT_POST_ON_LPC
select SUPERIO_ITE_IT8623E
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
config MAINBOARD_DIR
default "asus/am1i-a"
diff --git a/src/mainboard/asus/h61-series/Kconfig.name b/src/mainboard/asus/h61-series/Kconfig.name
index 0956f40..d2175a8 100644
--- a/src/mainboard/asus/h61-series/Kconfig.name
+++ b/src/mainboard/asus/h61-series/Kconfig.name
@@ -34,7 +34,7 @@
select DRIVERS_ASMEDIA_ASPM_BLACKLIST
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select REALTEK_8168_RESET
select RT8168_SET_LED_MODE
select SUPERIO_NUVOTON_NCT6776
@@ -46,7 +46,7 @@
select DRIVERS_ASMEDIA_ASPM_BLACKLIST
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select REALTEK_8168_RESET
select RT8168_SET_LED_MODE
select SUPERIO_NUVOTON_NCT6776
diff --git a/src/mainboard/asus/p8x7x-series/Kconfig.name b/src/mainboard/asus/p8x7x-series/Kconfig.name
index 822f5d4..6f08b48 100644
--- a/src/mainboard/asus/p8x7x-series/Kconfig.name
+++ b/src/mainboard/asus/p8x7x-series/Kconfig.name
@@ -2,7 +2,7 @@
bool "P8C_WS"
select BOARD_ASUS_P8X7X_SERIES
select BOARD_ROMSIZE_KB_8192
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select SUPERIO_NUVOTON_NCT6776
select USE_NATIVE_RAMINIT
@@ -18,7 +18,7 @@
select BOARD_ASUS_P8X7X_SERIES
select BOARD_ROMSIZE_KB_8192
select DRIVERS_ASMEDIA_ASPM_BLACKLIST # for ASM1061 eSATA
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select SUPERIO_NUVOTON_NCT6779D
config BOARD_ASUS_P8Z77_V_LX2
@@ -34,7 +34,7 @@
select BOARD_ASUS_P8X7X_SERIES
select BOARD_ROMSIZE_KB_8192
select DRIVERS_ASMEDIA_ASPM_BLACKLIST # for ASM1061 eSATA
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_USES_IFD_GBE_REGION
select SUPERIO_NUVOTON_NCT6779D
select USE_NATIVE_RAMINIT
diff --git a/src/mainboard/clevo/cml-u/Kconfig b/src/mainboard/clevo/cml-u/Kconfig
index 274db95..182fd13 100644
--- a/src/mainboard/clevo/cml-u/Kconfig
+++ b/src/mainboard/clevo/cml-u/Kconfig
@@ -9,7 +9,7 @@
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select SOC_INTEL_COMETLAKE_1
diff --git a/src/mainboard/clevo/kbl-u/Kconfig b/src/mainboard/clevo/kbl-u/Kconfig
index b5e45aa..d86a404 100644
--- a/src/mainboard/clevo/kbl-u/Kconfig
+++ b/src/mainboard/clevo/kbl-u/Kconfig
@@ -10,7 +10,7 @@
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
diff --git a/src/mainboard/clevo/tgl-u/Kconfig b/src/mainboard/clevo/tgl-u/Kconfig
index a97d3d8..ecdd7c1 100644
--- a/src/mainboard/clevo/tgl-u/Kconfig
+++ b/src/mainboard/clevo/tgl-u/Kconfig
@@ -9,7 +9,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
diff --git a/src/mainboard/dell/snb_ivb_workstations/Kconfig b/src/mainboard/dell/snb_ivb_workstations/Kconfig
index 788f5a1..8dcafd1 100644
--- a/src/mainboard/dell/snb_ivb_workstations/Kconfig
+++ b/src/mainboard/dell/snb_ivb_workstations/Kconfig
@@ -7,7 +7,7 @@
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SERIRQ_CONTINUOUS_MODE
select USE_NATIVE_RAMINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_USES_IFD_GBE_REGION
select SUPERIO_SMSC_SCH5545
diff --git a/src/mainboard/emulation/qemu-q35/Kconfig b/src/mainboard/emulation/qemu-q35/Kconfig
index 1fc82b5..a20092f 100644
--- a/src/mainboard/emulation/qemu-q35/Kconfig
+++ b/src/mainboard/emulation/qemu-q35/Kconfig
@@ -12,7 +12,7 @@
select BOARD_ROMSIZE_KB_16384 if VBOOT
select MAINBOARD_HAS_NATIVE_VGA_INIT
select MAINBOARD_FORCE_NATIVE_VGA_INIT if !CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_CHROMEOS
select SOUTHBRIDGE_INTEL_COMMON_ACPI_MADT
select BOOT_DEVICE_NOT_SPI_FLASH
diff --git a/src/mainboard/facebook/fbg1701/Kconfig b/src/mainboard/facebook/fbg1701/Kconfig
index e6e2e47..b84e9b5 100644
--- a/src/mainboard/facebook/fbg1701/Kconfig
+++ b/src/mainboard/facebook/fbg1701/Kconfig
@@ -10,7 +10,7 @@
select HAVE_IFD_BIN
select HAVE_ME_BIN
select HAVE_OPTION_TABLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select SOC_INTEL_BRASWELL
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
diff --git a/src/mainboard/facebook/monolith/Kconfig b/src/mainboard/facebook/monolith/Kconfig
index 0fb05a1..1972d13 100644
--- a/src/mainboard/facebook/monolith/Kconfig
+++ b/src/mainboard/facebook/monolith/Kconfig
@@ -7,7 +7,7 @@
select HAVE_ACPI_TABLES
select HAVE_OPTION_TABLE
select SOC_INTEL_KABYLAKE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select MAINBOARD_USES_IFD_GBE_REGION
select INTEL_GMA_HAVE_VBT
diff --git a/src/mainboard/foxconn/g41s-k/Kconfig b/src/mainboard/foxconn/g41s-k/Kconfig
index 83136d3..a98a47a 100644
--- a/src/mainboard/foxconn/g41s-k/Kconfig
+++ b/src/mainboard/foxconn/g41s-k/Kconfig
@@ -16,7 +16,7 @@
select HAVE_ACPI_TABLES
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
diff --git a/src/mainboard/gigabyte/ga-b75m-d3h/Kconfig b/src/mainboard/gigabyte/ga-b75m-d3h/Kconfig
index 643ed78..14d2270a 100644
--- a/src/mainboard/gigabyte/ga-b75m-d3h/Kconfig
+++ b/src/mainboard/gigabyte/ga-b75m-d3h/Kconfig
@@ -15,7 +15,7 @@
select INTEL_INT15
select SERIRQ_CONTINUOUS_MODE
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
config DRAM_RESET_GATE_GPIO
int
diff --git a/src/mainboard/google/asurada/Kconfig b/src/mainboard/google/asurada/Kconfig
index 7d757eb..46a0327 100644
--- a/src/mainboard/google/asurada/Kconfig
+++ b/src/mainboard/google/asurada/Kconfig
@@ -23,7 +23,8 @@
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_SPI
- select MAINBOARD_HAS_SPI_TPM_CR50 if VBOOT
+ select SPI_TPM if VBOOT
+ select TPM_GOOGLE_CR50 if VBOOT
select MAINBOARD_HAS_TPM2 if VBOOT
select MAINBOARD_HAS_NATIVE_VGA_INIT
select MAINBOARD_FORCE_NATIVE_VGA_INIT
diff --git a/src/mainboard/google/auron/Kconfig b/src/mainboard/google/auron/Kconfig
index 7c9b864..6f0ff89 100644
--- a/src/mainboard/google/auron/Kconfig
+++ b/src/mainboard/google/auron/Kconfig
@@ -10,7 +10,7 @@
select INTEL_INT15
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select SOC_INTEL_BROADWELL
diff --git a/src/mainboard/google/beltino/Kconfig b/src/mainboard/google/beltino/Kconfig
index 74caad2..5afb3ea 100644
--- a/src/mainboard/google/beltino/Kconfig
+++ b/src/mainboard/google/beltino/Kconfig
@@ -8,7 +8,7 @@
select INTEL_LYNXPOINT_LP
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NORTHBRIDGE_INTEL_HASWELL
select SOUTHBRIDGE_INTEL_LYNXPOINT
diff --git a/src/mainboard/google/brya/Kconfig b/src/mainboard/google/brya/Kconfig
index 724da6c..1a3cb55 100644
--- a/src/mainboard/google/brya/Kconfig
+++ b/src/mainboard/google/brya/Kconfig
@@ -28,15 +28,16 @@
select GOOGLE_SMBIOS_MAINBOARD_VERSION
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
+ select I2C_TPM
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select PMC_IPC_ACPI_INTERFACE
select SOC_INTEL_COMMON_BLOCK_PCIE_RTD3
select SOC_INTEL_CSE_LITE_SKU
select SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES if SOC_INTEL_ALDERLAKE_PCH_P
select SOC_INTEL_COMMON_BASECODE_DEBUG_FEATURE
+ select TPM_GOOGLE_CR50
config BOARD_GOOGLE_BASEBOARD_BRYA
def_bool n
diff --git a/src/mainboard/google/butterfly/Kconfig b/src/mainboard/google/butterfly/Kconfig
index f8897ac..49ac7d2 100644
--- a/src/mainboard/google/butterfly/Kconfig
+++ b/src/mainboard/google/butterfly/Kconfig
@@ -14,7 +14,7 @@
select INTEL_INT15
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
diff --git a/src/mainboard/google/cherry/Kconfig b/src/mainboard/google/cherry/Kconfig
index 206c4e4..2816f9b 100644
--- a/src/mainboard/google/cherry/Kconfig
+++ b/src/mainboard/google/cherry/Kconfig
@@ -24,7 +24,8 @@
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_SKUID
select EC_GOOGLE_CHROMEEC_SPI
- select MAINBOARD_HAS_I2C_TPM_CR50 if VBOOT
+ select I2C_TPM if VBOOT
+ select TPM_GOOGLE_CR50 if VBOOT
select MAINBOARD_HAS_TPM2 if VBOOT
select MAINBOARD_HAS_NATIVE_VGA_INIT
select HAVE_LINEAR_FRAMEBUFFER
diff --git a/src/mainboard/google/corsola/Kconfig b/src/mainboard/google/corsola/Kconfig
index 7bf557f..436ea94 100644
--- a/src/mainboard/google/corsola/Kconfig
+++ b/src/mainboard/google/corsola/Kconfig
@@ -33,7 +33,8 @@
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_SKUID
select EC_GOOGLE_CHROMEEC_SPI
- select MAINBOARD_HAS_SPI_TPM_CR50 if VBOOT
+ select SPI_TPM if VBOOT
+ select TPM_GOOGLE_CR50 if VBOOT
select MAINBOARD_HAS_TPM2 if VBOOT
select MAINBOARD_HAS_NATIVE_VGA_INIT
select HAVE_LINEAR_FRAMEBUFFER
diff --git a/src/mainboard/google/cyan/Kconfig b/src/mainboard/google/cyan/Kconfig
index c303266..ac679c7 100644
--- a/src/mainboard/google/cyan/Kconfig
+++ b/src/mainboard/google/cyan/Kconfig
@@ -12,7 +12,7 @@
select HAVE_SPD_IN_CBFS
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select PCIEXP_L1_SUB_STATE if !BOARD_GOOGLE_CYAN
select SOC_INTEL_BRASWELL
diff --git a/src/mainboard/google/daisy/Kconfig b/src/mainboard/google/daisy/Kconfig
index 5697022..d4117d8 100644
--- a/src/mainboard/google/daisy/Kconfig
+++ b/src/mainboard/google/daisy/Kconfig
@@ -15,7 +15,7 @@
select MAINBOARD_HAS_NATIVE_VGA_INIT
select MAINBOARD_FORCE_NATIVE_VGA_INIT
select HAVE_LINEAR_FRAMEBUFFER
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
config VBOOT
diff --git a/src/mainboard/google/dedede/Kconfig b/src/mainboard/google/dedede/Kconfig
index 458dfc7..68b8757 100644
--- a/src/mainboard/google/dedede/Kconfig
+++ b/src/mainboard/google/dedede/Kconfig
@@ -37,12 +37,13 @@
config BOARD_GOOGLE_BASEBOARD_DEDEDE_CR50
def_bool n
select CR50_USE_LONG_INTERRUPT_PULSES
- select MAINBOARD_HAS_SPI_TPM_CR50
+ select SPI_TPM
+ select TPM_GOOGLE_CR50
select BOARD_GOOGLE_BASEBOARD_DEDEDE
config BOARD_GOOGLE_BASEBOARD_DEDEDE_TPM2
def_bool n
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select BOARD_GOOGLE_BASEBOARD_DEDEDE
if BOARD_GOOGLE_BASEBOARD_DEDEDE
diff --git a/src/mainboard/google/deltaur/Kconfig b/src/mainboard/google/deltaur/Kconfig
index 7dc4286..f0267fd 100644
--- a/src/mainboard/google/deltaur/Kconfig
+++ b/src/mainboard/google/deltaur/Kconfig
@@ -9,14 +9,15 @@
select EC_GOOGLE_WILCO
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
+ select I2C_TPM
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select MAINBOARD_USES_IFD_EC_REGION
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
select SOC_INTEL_TIGERLAKE
select SYSTEM_TYPE_LAPTOP
+ select TPM_GOOGLE_CR50
config BOARD_GOOGLE_DELTAN
select BOARD_GOOGLE_BASEBOARD_DELTAUR
diff --git a/src/mainboard/google/drallion/Kconfig b/src/mainboard/google/drallion/Kconfig
index a26e70e..40afdf4 100644
--- a/src/mainboard/google/drallion/Kconfig
+++ b/src/mainboard/google/drallion/Kconfig
@@ -12,9 +12,9 @@
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
select HAVE_SPD_IN_CBFS
+ select I2C_TPM
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select MAINBOARD_USES_IFD_EC_REGION
select SMBIOS_SERIAL_FROM_VPD if VPD
@@ -22,6 +22,7 @@
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
select SOC_INTEL_COMMON_BLOCK_SMM_ESPI_DISABLE
select SYSTEM_TYPE_LAPTOP
+ select TPM_GOOGLE_CR50
config BOARD_GOOGLE_DRALLION
select BOARD_GOOGLE_BASEBOARD_DRALLION
diff --git a/src/mainboard/google/eve/Kconfig b/src/mainboard/google/eve/Kconfig
index 5e1b2f7..0579c0d 100644
--- a/src/mainboard/google/eve/Kconfig
+++ b/src/mainboard/google/eve/Kconfig
@@ -14,14 +14,15 @@
select EC_GOOGLE_CHROMEEC_ESPI
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
+ select I2C_TPM
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_LIBGFXINIT
select MAINBOARD_HAS_TPM2
select SOC_INTEL_KABYLAKE
select SYSTEM_TYPE_CONVERTIBLE
+ select TPM_GOOGLE_CR50
select HAVE_SPD_IN_CBFS
config DISABLE_HECI1_AT_PRE_BOOT
diff --git a/src/mainboard/google/fizz/Kconfig b/src/mainboard/google/fizz/Kconfig
index 01d838a..92c6abf 100644
--- a/src/mainboard/google/fizz/Kconfig
+++ b/src/mainboard/google/fizz/Kconfig
@@ -14,14 +14,15 @@
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_SPI_TPM_CR50
select MAINBOARD_HAS_TPM2
select NO_FADT_8042
select SOC_INTEL_KABYLAKE
select SPD_READ_BY_WORD
+ select SPI_TPM
select RT8168_GET_MAC_FROM_VPD
select RT8168_SUPPORT_LEGACY_VPD_MAC
select RT8168_SET_LED_MODE
+ select TPM_GOOGLE_CR50
config BOARD_GOOGLE_FIZZ
select BOARD_GOOGLE_BASEBOARD_FIZZ
diff --git a/src/mainboard/google/foster/Kconfig b/src/mainboard/google/foster/Kconfig
index c6b0038..6a2d28e 100644
--- a/src/mainboard/google/foster/Kconfig
+++ b/src/mainboard/google/foster/Kconfig
@@ -11,7 +11,7 @@
select BOOTROM_SDRAM_INIT # use BootRom to config sdram
select COMMON_CBFS_SPI_WRAPPER
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
config VBOOT
diff --git a/src/mainboard/google/gale/Kconfig b/src/mainboard/google/gale/Kconfig
index bd2092b..76ecb65 100644
--- a/src/mainboard/google/gale/Kconfig
+++ b/src/mainboard/google/gale/Kconfig
@@ -15,7 +15,7 @@
select SPI_FLASH_STMICRO
select SPI_FLASH_WINBOND
select DRIVERS_UART
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
config VBOOT
diff --git a/src/mainboard/google/glados/Kconfig b/src/mainboard/google/glados/Kconfig
index 59ea8ed..ff6b1ea 100644
--- a/src/mainboard/google/glados/Kconfig
+++ b/src/mainboard/google/glados/Kconfig
@@ -16,7 +16,7 @@
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select SOC_INTEL_SKYLAKE
select SYSTEM_TYPE_LAPTOP
diff --git a/src/mainboard/google/gru/Kconfig b/src/mainboard/google/gru/Kconfig
index 3c756cf..23926b6 100644
--- a/src/mainboard/google/gru/Kconfig
+++ b/src/mainboard/google/gru/Kconfig
@@ -43,8 +43,9 @@
select SPI_FLASH
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_SPI_TPM_CR50 if GRU_HAS_TPM2
- select MAINBOARD_HAS_I2C_TPM_GENERIC if !GRU_HAS_TPM2
+ select I2C_TPM if !GRU_HAS_TPM2
+ select TPM_GOOGLE_CR50 if GRU_HAS_TPM2
+ select SPI_TPM if GRU_HAS_TPM2
select MAINBOARD_HAS_TPM1 if !GRU_HAS_TPM2
select MAINBOARD_HAS_TPM2 if GRU_HAS_TPM2
diff --git a/src/mainboard/google/guybrush/Kconfig b/src/mainboard/google/guybrush/Kconfig
index b082e25..a19cfe8 100644
--- a/src/mainboard/google/guybrush/Kconfig
+++ b/src/mainboard/google/guybrush/Kconfig
@@ -33,8 +33,8 @@
select GOOGLE_SMBIOS_MAINBOARD_VERSION
select HAVE_EM100_SUPPORT
select HAVE_SPD_IN_CBFS
+ select I2C_TPM
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select PCIEXP_ASPM
select PCIEXP_CLK_PM
@@ -47,6 +47,7 @@
select SOC_AMD_COMMON_BLOCK_I2C3_TPM_SHARED_WITH_PSP
select SOC_AMD_COMMON_BLOCK_USE_ESPI
select SOC_AMD_COMMON_BLOCK_PSP_FUSE_SPL
+ select TPM_GOOGLE_CR50
config CHROMEOS
select EC_GOOGLE_CHROMEEC_SWITCHES
diff --git a/src/mainboard/google/hatch/Kconfig b/src/mainboard/google/hatch/Kconfig
index ad23f05..749b0df 100644
--- a/src/mainboard/google/hatch/Kconfig
+++ b/src/mainboard/google/hatch/Kconfig
@@ -19,11 +19,12 @@
select HAVE_ACPI_TABLES
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_SPI_TPM_CR50
select MAINBOARD_HAS_TPM2
select MB_HAS_ACTIVE_HIGH_SD_PWR_ENABLE
select SOC_INTEL_COMETLAKE_1
select SOC_INTEL_COMMON_BLOCK_DTT
+ select SPI_TPM
+ select TPM_GOOGLE_CR50
config BOARD_GOOGLE_BASEBOARD_HATCH
def_bool n
diff --git a/src/mainboard/google/herobrine/Kconfig b/src/mainboard/google/herobrine/Kconfig
index bf66bbc..7c2673d 100644
--- a/src/mainboard/google/herobrine/Kconfig
+++ b/src/mainboard/google/herobrine/Kconfig
@@ -25,9 +25,10 @@
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_MACRONIX
select SPI_FLASH_WINBOND
+ select TPM_GOOGLE_CR50 if !BOARD_GOOGLE_SENOR
+ select SPI_TPM if BOARD_GOOGLE_PIGLIN
+ select I2C_TPM if !BOARD_GOOGLE_PIGLIN && !BOARD_GOOGLE_SENOR
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_SPI_TPM_CR50 if BOARD_GOOGLE_PIGLIN
- select MAINBOARD_HAS_I2C_TPM_CR50 if !BOARD_GOOGLE_PIGLIN && !BOARD_GOOGLE_SENOR
select MAINBOARD_HAS_TPM2 if !BOARD_GOOGLE_SENOR
config VBOOT
@@ -57,7 +58,7 @@
default "Villager" if BOARD_GOOGLE_VILLAGER
config DRIVER_TPM_I2C_BUS
- depends on MAINBOARD_HAS_I2C_TPM_CR50
+ depends on I2C_TPM
hex
default 0xC if BOARD_GOOGLE_HEROBRINE_REV0
default 0xE
@@ -66,7 +67,7 @@
default 0x50
config DRIVER_TPM_SPI_BUS
- depends on MAINBOARD_HAS_SPI_TPM_CR50
+ depends on SPI_TPM
hex
default 0xE
diff --git a/src/mainboard/google/herobrine/bootblock.c b/src/mainboard/google/herobrine/bootblock.c
index 50ca0aa..cd16127 100644
--- a/src/mainboard/google/herobrine/bootblock.c
+++ b/src/mainboard/google/herobrine/bootblock.c
@@ -10,10 +10,10 @@
{
setup_chromeos_gpios();
- if (CONFIG(MAINBOARD_HAS_I2C_TPM_CR50))
+ if (CONFIG(I2C_TPM))
i2c_init(CONFIG_DRIVER_TPM_I2C_BUS, I2C_SPEED_FAST); /* H1/TPM I2C */
- if (CONFIG(MAINBOARD_HAS_SPI_TPM_CR50))
+ if (CONFIG(SPI_TPM))
qup_spi_init(CONFIG_DRIVER_TPM_SPI_BUS, 1010 * KHz); /* H1/TPM SPI */
if (CONFIG(EC_GOOGLE_CHROMEEC))
diff --git a/src/mainboard/google/jecht/Kconfig b/src/mainboard/google/jecht/Kconfig
index 836cbdf..584b88b 100644
--- a/src/mainboard/google/jecht/Kconfig
+++ b/src/mainboard/google/jecht/Kconfig
@@ -7,7 +7,7 @@
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select SOC_INTEL_BROADWELL
select SUPERIO_ITE_IT8772F
diff --git a/src/mainboard/google/kahlee/Kconfig b/src/mainboard/google/kahlee/Kconfig
index c82a20e..10524fe 100644
--- a/src/mainboard/google/kahlee/Kconfig
+++ b/src/mainboard/google/kahlee/Kconfig
@@ -15,6 +15,7 @@
select EC_GOOGLE_CHROMEEC_LPC
select HAVE_ACPI_TABLES
select HAVE_SPD_IN_CBFS
+ select I2C_TPM
select GFXUMA
select GOOGLE_SMBIOS_MAINBOARD_VERSION
select MAINBOARD_HAS_CHROMEOS
@@ -23,7 +24,6 @@
select SOC_AMD_SMU_FANLESS
select HAVE_ACPI_RESUME
select DRIVERS_GENERIC_BH720
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select DRIVERS_GENERIC_ADAU7002
select DRIVERS_GENERIC_MAX98357A
@@ -34,6 +34,7 @@
select PCIEXP_L1_SUB_STATE
select HAVE_EM100_SUPPORT
select SYSTEM_TYPE_LAPTOP
+ select TPM_GOOGLE_CR50
if BOARD_GOOGLE_BASEBOARD_KAHLEE
diff --git a/src/mainboard/google/kukui/Kconfig b/src/mainboard/google/kukui/Kconfig
index a1614ed..4568249 100644
--- a/src/mainboard/google/kukui/Kconfig
+++ b/src/mainboard/google/kukui/Kconfig
@@ -31,7 +31,8 @@
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_SPI
- select MAINBOARD_HAS_SPI_TPM_CR50 if VBOOT
+ select SPI_TPM if VBOOT
+ select TPM_GOOGLE_CR50 if VBOOT
select MAINBOARD_HAS_TPM2 if VBOOT
select MAINBOARD_HAS_NATIVE_VGA_INIT
select MAINBOARD_FORCE_NATIVE_VGA_INIT
diff --git a/src/mainboard/google/link/Kconfig b/src/mainboard/google/link/Kconfig
index e08ced9..e6e4b0b 100644
--- a/src/mainboard/google/link/Kconfig
+++ b/src/mainboard/google/link/Kconfig
@@ -13,7 +13,7 @@
select HAVE_SPD_IN_CBFS
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SERIRQ_CONTINUOUS_MODE
diff --git a/src/mainboard/google/nyan_big/Kconfig b/src/mainboard/google/nyan_big/Kconfig
index f350614..5c253c9 100644
--- a/src/mainboard/google/nyan_big/Kconfig
+++ b/src/mainboard/google/nyan_big/Kconfig
@@ -14,7 +14,7 @@
select SPI_FLASH
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
select DRIVERS_AS3722_RTC
diff --git a/src/mainboard/google/nyan_blaze/Kconfig b/src/mainboard/google/nyan_blaze/Kconfig
index c16736a..e687129 100644
--- a/src/mainboard/google/nyan_blaze/Kconfig
+++ b/src/mainboard/google/nyan_blaze/Kconfig
@@ -14,7 +14,7 @@
select SPI_FLASH
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
select DRIVERS_AS3722_RTC
diff --git a/src/mainboard/google/oak/Kconfig b/src/mainboard/google/oak/Kconfig
index 6302b85..03535e9 100644
--- a/src/mainboard/google/oak/Kconfig
+++ b/src/mainboard/google/oak/Kconfig
@@ -13,7 +13,7 @@
select DRIVER_PARADE_PS8640
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_SPI
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_HAS_NATIVE_VGA_INIT
select MAINBOARD_FORCE_NATIVE_VGA_INIT
diff --git a/src/mainboard/google/octopus/Kconfig b/src/mainboard/google/octopus/Kconfig
index 8bcd826..3bdc63b 100644
--- a/src/mainboard/google/octopus/Kconfig
+++ b/src/mainboard/google/octopus/Kconfig
@@ -19,14 +19,15 @@
select HAVE_ACPI_TABLES
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_SPI_TPM_CR50
select MAINBOARD_HAS_TPM2
select NO_BOOTBLOCK_CONSOLE
select NO_CBFS_MCACHE
select NO_FMAP_CACHE
select SOC_ESPI
select SOC_INTEL_GEMINILAKE
+ select SPI_TPM
select SYSTEM_TYPE_LAPTOP
+ select TPM_GOOGLE_CR50
config BOARD_GOOGLE_AMPTON
select BOARD_GOOGLE_BASEBOARD_OCTOPUS
diff --git a/src/mainboard/google/parrot/Kconfig b/src/mainboard/google/parrot/Kconfig
index c06da09..dd6df3e 100644
--- a/src/mainboard/google/parrot/Kconfig
+++ b/src/mainboard/google/parrot/Kconfig
@@ -14,7 +14,7 @@
select INTEL_INT15
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
diff --git a/src/mainboard/google/peach_pit/Kconfig b/src/mainboard/google/peach_pit/Kconfig
index 329f949..497ada1 100644
--- a/src/mainboard/google/peach_pit/Kconfig
+++ b/src/mainboard/google/peach_pit/Kconfig
@@ -12,7 +12,7 @@
select MAINBOARD_FORCE_NATIVE_VGA_INIT
select HAVE_LINEAR_FRAMEBUFFER
select DRIVER_PARADE_PS8625
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
select MISSING_BOARD_RESET
diff --git a/src/mainboard/google/poppy/Kconfig b/src/mainboard/google/poppy/Kconfig
index 4032f57..3007bcb 100644
--- a/src/mainboard/google/poppy/Kconfig
+++ b/src/mainboard/google/poppy/Kconfig
@@ -14,6 +14,7 @@
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_TPM2
select SOC_INTEL_KABYLAKE
+ select TPM_GOOGLE_CR50
config BOARD_GOOGLE_ATLAS
select BOARD_GOOGLE_BASEBOARD_POPPY
@@ -26,14 +27,14 @@
select GEO_SAR_ENABLE if CHROMEOS_WIFI_SAR
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_SPI_TPM_CR50
+ select SPI_TPM
select SYSTEM_TYPE_LAPTOP
select VARIANT_HAS_CAMERA_ACPI
config BOARD_GOOGLE_POPPY
select BOARD_GOOGLE_BASEBOARD_POPPY
select DRIVERS_I2C_MAX98927
- select MAINBOARD_HAS_I2C_TPM_CR50
+ select I2C_TPM
select NO_FADT_8042
select SYSTEM_TYPE_LAPTOP
select VARIANT_HAS_CAMERA_ACPI
@@ -46,7 +47,7 @@
select DRIVERS_SPI_ACPI
select EXCLUDE_NATIVE_SD_INTERFACE
select INTEL_GMA_HAVE_VBT
- select MAINBOARD_HAS_SPI_TPM_CR50
+ select SPI_TPM
select SYSTEM_TYPE_LAPTOP
config BOARD_GOOGLE_NAUTILUS
@@ -54,8 +55,8 @@
select CHROMEOS_WIFI_SAR if CHROMEOS
select DRIVERS_GENERIC_MAX98357A
select DRIVERS_I2C_DA7219
+ select I2C_TPM
select INTEL_GMA_HAVE_VBT
- select MAINBOARD_HAS_I2C_TPM_CR50
select SYSTEM_TYPE_CONVERTIBLE
select VARIANT_HAS_CAMERA_ACPI
@@ -70,8 +71,8 @@
select EXCLUDE_NATIVE_SD_INTERFACE
select GEO_SAR_ENABLE if CHROMEOS_WIFI_SAR
select INTEL_GMA_HAVE_VBT
- select MAINBOARD_HAS_SPI_TPM_CR50
select NO_FADT_8042
+ select SPI_TPM
select SYSTEM_TYPE_DETACHABLE
select VARIANT_HAS_CAMERA_ACPI
@@ -84,14 +85,14 @@
select DRIVERS_USB_ACPI
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_SPI_TPM_CR50
+ select SPI_TPM
select SYSTEM_TYPE_LAPTOP
config BOARD_GOOGLE_SORAKA
select BOARD_GOOGLE_BASEBOARD_POPPY
select DRIVERS_I2C_MAX98927
+ select I2C_TPM
select INTEL_GMA_HAVE_VBT
- select MAINBOARD_HAS_I2C_TPM_CR50
select NO_FADT_8042
select SYSTEM_TYPE_DETACHABLE
select VARIANT_HAS_CAMERA_ACPI
@@ -118,15 +119,15 @@
default "variants/baseboard/devicetree.cb"
config DRIVER_TPM_I2C_BUS
- depends on MAINBOARD_HAS_I2C_TPM_CR50
+ depends on I2C_TPM
default 0x1
config DRIVER_TPM_I2C_ADDR
- depends on MAINBOARD_HAS_I2C_TPM_CR50
+ depends on I2C_TPM
default 0x50
config DRIVER_TPM_SPI_BUS
- depends on MAINBOARD_HAS_SPI_TPM_CR50
+ depends on SPI_TPM
default 0x1
config INCLUDE_NHLT_BLOBS
diff --git a/src/mainboard/google/rambi/Kconfig b/src/mainboard/google/rambi/Kconfig
index ad113f5..f8af00f 100644
--- a/src/mainboard/google/rambi/Kconfig
+++ b/src/mainboard/google/rambi/Kconfig
@@ -9,7 +9,7 @@
select HAVE_OPTION_TABLE
select HAVE_SPD_IN_CBFS
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select SOC_INTEL_BAYTRAIL
diff --git a/src/mainboard/google/reef/Kconfig b/src/mainboard/google/reef/Kconfig
index 0ab463e..47d1114 100644
--- a/src/mainboard/google/reef/Kconfig
+++ b/src/mainboard/google/reef/Kconfig
@@ -12,14 +12,15 @@
select GOOGLE_SMBIOS_MAINBOARD_VERSION
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
+ select I2C_TPM
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select SAR_ENABLE
select SOC_INTEL_APOLLOLAKE
select SYSTEM_TYPE_LAPTOP
+ select TPM_GOOGLE_CR50
select USE_SAR
config BOARD_GOOGLE_REEF
diff --git a/src/mainboard/google/sarien/Kconfig b/src/mainboard/google/sarien/Kconfig
index 32a253e..37c72ad 100644
--- a/src/mainboard/google/sarien/Kconfig
+++ b/src/mainboard/google/sarien/Kconfig
@@ -10,10 +10,10 @@
select GOOGLE_SMBIOS_MAINBOARD_VERSION
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
+ select I2C_TPM
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select MAINBOARD_USES_IFD_EC_REGION
select SAR_ENABLE
@@ -22,6 +22,7 @@
select SOC_INTEL_COMMON_BLOCK_SMM_ESPI_DISABLE
select SOC_INTEL_WHISKEYLAKE
select SPD_READ_BY_WORD
+ select TPM_GOOGLE_CR50
select USE_SAR
config BOARD_GOOGLE_ARCADA
diff --git a/src/mainboard/google/skyrim/Kconfig b/src/mainboard/google/skyrim/Kconfig
index 0f5469d..5a60c987 100644
--- a/src/mainboard/google/skyrim/Kconfig
+++ b/src/mainboard/google/skyrim/Kconfig
@@ -24,12 +24,13 @@
select ELOG
select ELOG_GSMI
select FW_CONFIG
+ select I2C_TPM
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50
select MAINBOARD_HAS_TPM2
select PSP_DISABLE_POSTCODES # TODO re-enable PSP postcodes later (b/227199049)
select SOC_AMD_SABRINA
select SOC_AMD_COMMON_BLOCK_USE_ESPI
+ select TPM_GOOGLE_CR50
config CHROMEOS
select EC_GOOGLE_CHROMEEC_SWITCHES
diff --git a/src/mainboard/google/slippy/Kconfig b/src/mainboard/google/slippy/Kconfig
index 0148093..437797c 100644
--- a/src/mainboard/google/slippy/Kconfig
+++ b/src/mainboard/google/slippy/Kconfig
@@ -12,7 +12,7 @@
select INTEL_LYNXPOINT_LP
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NORTHBRIDGE_INTEL_HASWELL
select SOUTHBRIDGE_INTEL_LYNXPOINT
diff --git a/src/mainboard/google/smaug/Kconfig b/src/mainboard/google/smaug/Kconfig
index 48172d4..e57da4a 100644
--- a/src/mainboard/google/smaug/Kconfig
+++ b/src/mainboard/google/smaug/Kconfig
@@ -9,6 +9,7 @@
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_I2C
select EC_GOOGLE_CHROMEEC_I2C_PROTO3
+ select I2C_TPM
select MAINBOARD_HAS_NATIVE_VGA_INIT
select MAINBOARD_FORCE_NATIVE_VGA_INIT
select SPI_FLASH
@@ -16,7 +17,6 @@
select SOC_NVIDIA_TEGRA210
select MAINBOARD_DO_DSI_INIT
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_GENERIC
select MAINBOARD_HAS_TPM1
select DRIVERS_TI_TPS65913_RTC
diff --git a/src/mainboard/google/storm/Kconfig b/src/mainboard/google/storm/Kconfig
index 435011f..c5ce74b 100644
--- a/src/mainboard/google/storm/Kconfig
+++ b/src/mainboard/google/storm/Kconfig
@@ -13,7 +13,7 @@
select SPI_FLASH_SPANSION
select SPI_FLASH_STMICRO
select DRIVERS_UART
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
config VBOOT
diff --git a/src/mainboard/google/stout/Kconfig b/src/mainboard/google/stout/Kconfig
index d26d5b9..152c57f 100644
--- a/src/mainboard/google/stout/Kconfig
+++ b/src/mainboard/google/stout/Kconfig
@@ -14,7 +14,7 @@
select INTEL_INT15
select MAINBOARD_HAS_CHROMEOS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
diff --git a/src/mainboard/google/trogdor/Kconfig b/src/mainboard/google/trogdor/Kconfig
index 29b0395..e409aee 100644
--- a/src/mainboard/google/trogdor/Kconfig
+++ b/src/mainboard/google/trogdor/Kconfig
@@ -44,8 +44,9 @@
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_WINBOND
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_SPI_TPM_CR50 if !BOARD_GOOGLE_BUBS
select MAINBOARD_HAS_TPM2 if !BOARD_GOOGLE_BUBS
+ select SPI_TPM if !BOARD_GOOGLE_BUBS
+ select TPM_GOOGLE_CR50 if !BOARD_GOOGLE_BUBS
config VBOOT
select EC_GOOGLE_CHROMEEC_SWITCHES if !BOARD_GOOGLE_BUBS
diff --git a/src/mainboard/google/veyron/Kconfig b/src/mainboard/google/veyron/Kconfig
index 83f6eb2..0847c41 100644
--- a/src/mainboard/google/veyron/Kconfig
+++ b/src/mainboard/google/veyron/Kconfig
@@ -26,7 +26,7 @@
select SPI_FLASH
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
config VBOOT
diff --git a/src/mainboard/google/veyron_mickey/Kconfig b/src/mainboard/google/veyron_mickey/Kconfig
index eaeb8f4..2c46965 100644
--- a/src/mainboard/google/veyron_mickey/Kconfig
+++ b/src/mainboard/google/veyron_mickey/Kconfig
@@ -11,7 +11,7 @@
select SPI_FLASH
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
config VBOOT
diff --git a/src/mainboard/google/veyron_rialto/Kconfig b/src/mainboard/google/veyron_rialto/Kconfig
index 77c06dc..916d8a6 100644
--- a/src/mainboard/google/veyron_rialto/Kconfig
+++ b/src/mainboard/google/veyron_rialto/Kconfig
@@ -11,7 +11,7 @@
select SPI_FLASH
select SPI_FLASH_GIGADEVICE
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_I2C_TPM_GENERIC
+ select I2C_TPM
select MAINBOARD_HAS_TPM1
config VBOOT
diff --git a/src/mainboard/google/volteer/Kconfig b/src/mainboard/google/volteer/Kconfig
index 28d3457..682d247 100644
--- a/src/mainboard/google/volteer/Kconfig
+++ b/src/mainboard/google/volteer/Kconfig
@@ -29,12 +29,14 @@
select HAVE_SPD_IN_CBFS
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_I2C_TPM_CR50 if BOARD_GOOGLE_VOLTEER2_TI50
- select MAINBOARD_HAS_SPI_TPM_CR50 if !BOARD_GOOGLE_VOLTEER2_TI50
+ select I2C_TPM if BOARD_GOOGLE_VOLTEER2_TI50
+ select SPI_TPM if !BOARD_GOOGLE_VOLTEER2_TI50
select MAINBOARD_HAS_TPM2
select SOC_INTEL_COMMON_BLOCK_TCSS
select SOC_INTEL_CSE_LITE_SKU
select SOC_INTEL_TIGERLAKE
+ select TPM_GOOGLE_TI50 if BOARD_GOOGLE_VOLTEER2_TI50
+ select TPM_GOOGLE_CR50 if !BOARD_GOOGLE_VOLTEER2_TI50
config BOARD_GOOGLE_DELBIN
select BOARD_GOOGLE_BASEBOARD_VOLTEER
diff --git a/src/mainboard/google/volteer/mainboard.c b/src/mainboard/google/volteer/mainboard.c
index 7089ddd..91fe319 100644
--- a/src/mainboard/google/volteer/mainboard.c
+++ b/src/mainboard/google/volteer/mainboard.c
@@ -84,7 +84,7 @@
void mainboard_update_soc_chip_config(struct soc_intel_tigerlake_config *cfg)
{
int ret;
- if (!CONFIG(MAINBOARD_HAS_SPI_TPM_CR50)) {
+ if (!CONFIG(TPM_GOOGLE_CR50) || !CONFIG(SPI_TPM)) {
/*
* Negotiation of long interrupt pulses is only supported via SPI. I2C is only
* used on reworked prototypes on which the TPM is replaced with Dauntless under
diff --git a/src/mainboard/google/volteer/variants/chronicler/overridetree.cb b/src/mainboard/google/volteer/variants/chronicler/overridetree.cb
index b69990c..763a5ee 100644
--- a/src/mainboard/google/volteer/variants/chronicler/overridetree.cb
+++ b/src/mainboard/google/volteer/variants/chronicler/overridetree.cb
@@ -29,7 +29,7 @@
register "common_soc_config" = "{
.gspi[0] = {
.speed_mhz = 1,
- .early_init = CONFIG(MAINBOARD_HAS_SPI_TPM_CR50),
+ .early_init = CONFIG(SPI_TPM),
},
.i2c[0] = {
.speed = I2C_SPEED_FAST,
diff --git a/src/mainboard/google/volteer/variants/volteer2/overridetree.cb b/src/mainboard/google/volteer/variants/volteer2/overridetree.cb
index d024835..b6657a1 100644
--- a/src/mainboard/google/volteer/variants/volteer2/overridetree.cb
+++ b/src/mainboard/google/volteer/variants/volteer2/overridetree.cb
@@ -22,14 +22,14 @@
register "common_soc_config" = "{
.gspi[0] = {
.speed_mhz = 1,
- .early_init = CONFIG(MAINBOARD_HAS_SPI_TPM_CR50),
+ .early_init = CONFIG(SPI_TPM),
},
.i2c[0] = {
.speed = I2C_SPEED_FAST,
},
.i2c[1] = {
.speed = I2C_SPEED_FAST,
- .early_init = CONFIG(MAINBOARD_HAS_I2C_TPM_CR50),
+ .early_init = CONFIG(I2C_TPM),
},
.i2c[2] = {
.speed = I2C_SPEED_FAST,
diff --git a/src/mainboard/google/volteer/variants/volteer2/variant.c b/src/mainboard/google/volteer/variants/volteer2/variant.c
index 4424027..c9129b2 100644
--- a/src/mainboard/google/volteer/variants/volteer2/variant.c
+++ b/src/mainboard/google/volteer/variants/volteer2/variant.c
@@ -20,6 +20,6 @@
void variant_devtree_update(void)
{
- if (CONFIG(MAINBOARD_HAS_I2C_TPM_CR50))
+ if (CONFIG(I2C_TPM))
devtree_enable_i2c_tpm();
}
diff --git a/src/mainboard/google/zork/Kconfig b/src/mainboard/google/zork/Kconfig
index 6d66b1a..0e04706 100644
--- a/src/mainboard/google/zork/Kconfig
+++ b/src/mainboard/google/zork/Kconfig
@@ -37,7 +37,8 @@
select GOOGLE_SMBIOS_MAINBOARD_VERSION
select MAINBOARD_HAS_CHROMEOS
select AMD_SOC_CONSOLE_UART
- select MAINBOARD_HAS_I2C_TPM_CR50
+ select I2C_TPM
+ select TPM_GOOGLE_CR50
select MAINBOARD_HAS_TPM2
select PCIEXP_ASPM
select PCIEXP_CLK_PM
diff --git a/src/mainboard/hp/compaq_8200_elite_sff/Kconfig b/src/mainboard/hp/compaq_8200_elite_sff/Kconfig
index 4d8f7dd..0ea593f 100644
--- a/src/mainboard/hp/compaq_8200_elite_sff/Kconfig
+++ b/src/mainboard/hp/compaq_8200_elite_sff/Kconfig
@@ -10,7 +10,7 @@
select SERIRQ_CONTINUOUS_MODE
select SOUTHBRIDGE_INTEL_BD82X6X
select USE_NATIVE_RAMINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select HAVE_OPTION_TABLE
select HAVE_CMOS_DEFAULT
diff --git a/src/mainboard/hp/folio_9480m/Kconfig b/src/mainboard/hp/folio_9480m/Kconfig
index 1e0f116..276eaaa 100644
--- a/src/mainboard/hp/folio_9480m/Kconfig
+++ b/src/mainboard/hp/folio_9480m/Kconfig
@@ -11,7 +11,7 @@
select INTEL_GMA_HAVE_VBT
select INTEL_LYNXPOINT_LP
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_USES_IFD_GBE_REGION
select NORTHBRIDGE_INTEL_HASWELL
diff --git a/src/mainboard/hp/snb_ivb_laptops/Kconfig b/src/mainboard/hp/snb_ivb_laptops/Kconfig
index bb37da3..574e269 100644
--- a/src/mainboard/hp/snb_ivb_laptops/Kconfig
+++ b/src/mainboard/hp/snb_ivb_laptops/Kconfig
@@ -7,7 +7,7 @@
select HAVE_ACPI_TABLES
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SERIRQ_CONTINUOUS_MODE
@@ -86,7 +86,7 @@
select INTEL_GMA_HAVE_VBT
select INTEL_INT15
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_USES_IFD_GBE_REGION
select SOUTHBRIDGE_INTEL_BD82X6X
diff --git a/src/mainboard/hp/z220_series/Kconfig b/src/mainboard/hp/z220_series/Kconfig
index 11b608a..1be3972 100644
--- a/src/mainboard/hp/z220_series/Kconfig
+++ b/src/mainboard/hp/z220_series/Kconfig
@@ -8,7 +8,7 @@
select SERIRQ_CONTINUOUS_MODE
select SOUTHBRIDGE_INTEL_BD82X6X
select USE_NATIVE_RAMINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select HAVE_OPTION_TABLE
select HAVE_CMOS_DEFAULT
diff --git a/src/mainboard/intel/adlrvp/Kconfig b/src/mainboard/intel/adlrvp/Kconfig
index 0e9f4fb..11ec375 100644
--- a/src/mainboard/intel/adlrvp/Kconfig
+++ b/src/mainboard/intel/adlrvp/Kconfig
@@ -53,10 +53,10 @@
select FW_CONFIG
select FW_CONFIG_SOURCE_CHROMEEC_CBI
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_SPI_TPM_CR50
select MAINBOARD_HAS_TPM2
select SOC_INTEL_ALDERLAKE_PCH_M
select SPI_TPM
+ select TPM_GOOGLE_CR50
config BOARD_INTEL_ADLRVP_N
select BOARD_INTEL_ADLRVP_COMMON
diff --git a/src/mainboard/intel/baskingridge/Kconfig b/src/mainboard/intel/baskingridge/Kconfig
index 6d7bc8c..9983e74 100644
--- a/src/mainboard/intel/baskingridge/Kconfig
+++ b/src/mainboard/intel/baskingridge/Kconfig
@@ -9,7 +9,7 @@
select HAVE_OPTION_TABLE
select HAVE_ACPI_RESUME
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select INTEL_INT15
config VBOOT
diff --git a/src/mainboard/intel/coffeelake_rvp/Kconfig b/src/mainboard/intel/coffeelake_rvp/Kconfig
index 4148b47..bcb5aaf 100644
--- a/src/mainboard/intel/coffeelake_rvp/Kconfig
+++ b/src/mainboard/intel/coffeelake_rvp/Kconfig
@@ -9,7 +9,7 @@
select HAVE_ACPI_TABLES
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_USES_IFD_EC_REGION
config BOARD_INTEL_COFFEELAKE_RVP8
diff --git a/src/mainboard/intel/galileo/Kconfig b/src/mainboard/intel/galileo/Kconfig
index 5f6f065..f22f1ee 100644
--- a/src/mainboard/intel/galileo/Kconfig
+++ b/src/mainboard/intel/galileo/Kconfig
@@ -8,7 +8,8 @@
select ENABLE_BUILTIN_HSUART1
select HAVE_ACPI_TABLES
select SOC_INTEL_QUARK
- select MAINBOARD_HAS_I2C_TPM_ATMEL
+ select I2C_TPM
+ select TPM_ATMEL
select MAINBOARD_HAS_TPM2
select UDK_2017_BINDING
diff --git a/src/mainboard/intel/glkrvp/Kconfig b/src/mainboard/intel/glkrvp/Kconfig
index d9b61ca..c2584f3 100644
--- a/src/mainboard/intel/glkrvp/Kconfig
+++ b/src/mainboard/intel/glkrvp/Kconfig
@@ -8,7 +8,7 @@
select HAVE_ACPI_TABLES
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select DRIVERS_GENERIC_MAX98357A
select DRIVERS_I2C_DA7219
select SOC_ESPI
diff --git a/src/mainboard/intel/kblrvp/Kconfig b/src/mainboard/intel/kblrvp/Kconfig
index 6b60ac4..a381897 100644
--- a/src/mainboard/intel/kblrvp/Kconfig
+++ b/src/mainboard/intel/kblrvp/Kconfig
@@ -8,7 +8,7 @@
select HAVE_SPD_IN_CBFS
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select SOC_INTEL_KABYLAKE
config BOARD_INTEL_KBLRVP3
diff --git a/src/mainboard/intel/kunimitsu/Kconfig b/src/mainboard/intel/kunimitsu/Kconfig
index 22fffb0..476a1b9 100644
--- a/src/mainboard/intel/kunimitsu/Kconfig
+++ b/src/mainboard/intel/kunimitsu/Kconfig
@@ -17,7 +17,7 @@
select HAVE_OPTION_TABLE
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select SOC_INTEL_SKYLAKE
select HAVE_SPD_IN_CBFS
diff --git a/src/mainboard/intel/shadowmountain/Kconfig b/src/mainboard/intel/shadowmountain/Kconfig
index 9294857..0d8ad2b 100644
--- a/src/mainboard/intel/shadowmountain/Kconfig
+++ b/src/mainboard/intel/shadowmountain/Kconfig
@@ -20,11 +20,12 @@
select HAVE_SPD_IN_CBFS
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_SPI_TPM_CR50
select MAINBOARD_HAS_TPM2
select PCIEXP_HOTPLUG
select SOC_INTEL_ALDERLAKE_PCH_P
select SOC_INTEL_CSE_LITE_SKU
+ select SPI_TPM
+ select TPM_GOOGLE_CR50
select INTEL_CAR_NEM #TODO - Enable INTEL_CAR_NEM_ENHANCED
config CHROMEOS
diff --git a/src/mainboard/intel/strago/Kconfig b/src/mainboard/intel/strago/Kconfig
index 64d5dfc..144ba5a 100644
--- a/src/mainboard/intel/strago/Kconfig
+++ b/src/mainboard/intel/strago/Kconfig
@@ -13,7 +13,7 @@
select HAVE_ACPI_TABLES
select HAVE_OPTION_TABLE
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select SOC_INTEL_BRASWELL
select PCIEXP_L1_SUB_STATE
diff --git a/src/mainboard/intel/tglrvp/Kconfig b/src/mainboard/intel/tglrvp/Kconfig
index 77a8afd..b8110dd 100644
--- a/src/mainboard/intel/tglrvp/Kconfig
+++ b/src/mainboard/intel/tglrvp/Kconfig
@@ -21,9 +21,9 @@
select HAVE_SPD_IN_CBFS
select SOC_INTEL_CSE_LITE_SKU
select MAINBOARD_HAS_TPM2
- select MAINBOARD_HAS_SPI_TPM_CR50
select SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
select SPI_TPM
+ select TPM_GOOGLE_CR50
config CHROMEOS
select EC_GOOGLE_CHROMEEC_SWITCHES if TGL_CHROME_EC
diff --git a/src/mainboard/intel/wtm2/Kconfig b/src/mainboard/intel/wtm2/Kconfig
index cf16b8a..9977d3b 100644
--- a/src/mainboard/intel/wtm2/Kconfig
+++ b/src/mainboard/intel/wtm2/Kconfig
@@ -8,7 +8,7 @@
select HAVE_OPTION_TABLE
select HAVE_ACPI_RESUME
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select INTEL_INT15
config VBOOT
diff --git a/src/mainboard/kontron/bsl6/Kconfig b/src/mainboard/kontron/bsl6/Kconfig
index 782f560..588596c 100644
--- a/src/mainboard/kontron/bsl6/Kconfig
+++ b/src/mainboard/kontron/bsl6/Kconfig
@@ -10,7 +10,7 @@
select HAVE_ACPI_TABLES
select HAVE_OPTION_TABLE
select HAVE_CMOS_DEFAULT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select EC_KONTRON_KEMPLD
select MAINBOARD_HAS_LIBGFXINIT
select DRIVERS_I2C_NCT7802Y
diff --git a/src/mainboard/kontron/mal10/Kconfig b/src/mainboard/kontron/mal10/Kconfig
index 021e171..389f59f 100644
--- a/src/mainboard/kontron/mal10/Kconfig
+++ b/src/mainboard/kontron/mal10/Kconfig
@@ -10,7 +10,7 @@
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
- select MAINBOARD_HAS_CRB_TPM
+ select CRB_TPM
select MAINBOARD_HAS_LIBGFXINIT
select ONBOARD_VGA_IS_PRIMARY
select SOC_INTEL_APOLLOLAKE
diff --git a/src/mainboard/lenovo/s230u/Kconfig b/src/mainboard/lenovo/s230u/Kconfig
index 08f82aa..c0e1f44 100644
--- a/src/mainboard/lenovo/s230u/Kconfig
+++ b/src/mainboard/lenovo/s230u/Kconfig
@@ -16,7 +16,7 @@
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS
select SERIRQ_CONTINUOUS_MODE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select HAVE_SPD_IN_CBFS
diff --git a/src/mainboard/lenovo/t410/Kconfig b/src/mainboard/lenovo/t410/Kconfig
index 333302e..cff8769 100644
--- a/src/mainboard/lenovo/t410/Kconfig
+++ b/src/mainboard/lenovo/t410/Kconfig
@@ -15,7 +15,7 @@
select INTEL_INT15
select HAVE_ACPI_RESUME
select DRIVERS_LENOVO_WACOM
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select DRIVERS_LENOVO_HYBRID_GRAPHICS
select INTEL_GMA_HAVE_VBT
diff --git a/src/mainboard/lenovo/t420/Kconfig b/src/mainboard/lenovo/t420/Kconfig
index 6f4988c..553438f 100644
--- a/src/mainboard/lenovo/t420/Kconfig
+++ b/src/mainboard/lenovo/t420/Kconfig
@@ -17,7 +17,7 @@
select HAVE_ACPI_RESUME
select INTEL_INT15
select DRIVERS_RICOH_RCE822
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS
diff --git a/src/mainboard/lenovo/t420s/Kconfig b/src/mainboard/lenovo/t420s/Kconfig
index c46d4fc..1f715fd 100644
--- a/src/mainboard/lenovo/t420s/Kconfig
+++ b/src/mainboard/lenovo/t420s/Kconfig
@@ -16,7 +16,7 @@
select HAVE_CMOS_DEFAULT
select HAVE_ACPI_RESUME
select INTEL_INT15
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS
diff --git a/src/mainboard/lenovo/t430/Kconfig b/src/mainboard/lenovo/t430/Kconfig
index 4a51562..64a73f3 100644
--- a/src/mainboard/lenovo/t430/Kconfig
+++ b/src/mainboard/lenovo/t430/Kconfig
@@ -12,7 +12,7 @@
select HAVE_ACPI_TABLES
select HAVE_OPTION_TABLE
select HAVE_CMOS_DEFAULT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select INTEL_INT15
select NORTHBRIDGE_INTEL_SANDYBRIDGE
diff --git a/src/mainboard/lenovo/t430s/Kconfig b/src/mainboard/lenovo/t430s/Kconfig
index dce078e..fe5b895 100644
--- a/src/mainboard/lenovo/t430s/Kconfig
+++ b/src/mainboard/lenovo/t430s/Kconfig
@@ -17,7 +17,7 @@
select HAVE_CMOS_DEFAULT
select HAVE_ACPI_RESUME
select INTEL_INT15
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS if BOARD_LENOVO_T430S
diff --git a/src/mainboard/lenovo/t440p/Kconfig b/src/mainboard/lenovo/t440p/Kconfig
index 6d5329c..6c4f7b0 100644
--- a/src/mainboard/lenovo/t440p/Kconfig
+++ b/src/mainboard/lenovo/t440p/Kconfig
@@ -11,12 +11,14 @@
select HAVE_ACPI_TABLES
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
+ select MEMORY_MAPPED_TPM
+ select MAINBOARD_HAS_TPM1
select INTEL_GMA_HAVE_VBT
select INTEL_INT15
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_USES_IFD_GBE_REGION
+ select MEMORY_MAPPED_TPM
select NO_UART_ON_SUPERIO
select NORTHBRIDGE_INTEL_HASWELL
select SERIRQ_CONTINUOUS_MODE
diff --git a/src/mainboard/lenovo/t520/Kconfig b/src/mainboard/lenovo/t520/Kconfig
index 039baa6..ecd9aa9 100644
--- a/src/mainboard/lenovo/t520/Kconfig
+++ b/src/mainboard/lenovo/t520/Kconfig
@@ -16,7 +16,7 @@
select INTEL_INT15
select GFX_GMA_PANEL_1_ON_LVDS
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select DRIVERS_LENOVO_HYBRID_GRAPHICS
select INTEL_GMA_HAVE_VBT if BOARD_LENOVO_T520
diff --git a/src/mainboard/lenovo/t530/Kconfig b/src/mainboard/lenovo/t530/Kconfig
index 87be416..b3b0989 100644
--- a/src/mainboard/lenovo/t530/Kconfig
+++ b/src/mainboard/lenovo/t530/Kconfig
@@ -14,7 +14,7 @@
select HAVE_CMOS_DEFAULT
select HAVE_ACPI_RESUME
select INTEL_INT15
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select DRIVERS_LENOVO_HYBRID_GRAPHICS
select MAINBOARD_HAS_LIBGFXINIT
diff --git a/src/mainboard/lenovo/w541/Kconfig b/src/mainboard/lenovo/w541/Kconfig
index b08ce0b..81a3b85 100644
--- a/src/mainboard/lenovo/w541/Kconfig
+++ b/src/mainboard/lenovo/w541/Kconfig
@@ -13,7 +13,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_USES_IFD_GBE_REGION
select NORTHBRIDGE_INTEL_HASWELL
diff --git a/src/mainboard/lenovo/x131e/Kconfig b/src/mainboard/lenovo/x131e/Kconfig
index b8fc4d6..916baa2 100644
--- a/src/mainboard/lenovo/x131e/Kconfig
+++ b/src/mainboard/lenovo/x131e/Kconfig
@@ -14,7 +14,7 @@
select HAVE_CMOS_DEFAULT
select HAVE_ACPI_RESUME
select INTEL_INT15
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS
diff --git a/src/mainboard/lenovo/x1_carbon_gen1/Kconfig b/src/mainboard/lenovo/x1_carbon_gen1/Kconfig
index ec5092f..f514e7c 100644
--- a/src/mainboard/lenovo/x1_carbon_gen1/Kconfig
+++ b/src/mainboard/lenovo/x1_carbon_gen1/Kconfig
@@ -17,7 +17,7 @@
select HAVE_ACPI_RESUME
select INTEL_INT15
select DRIVERS_RICOH_RCE822
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS
diff --git a/src/mainboard/lenovo/x201/Kconfig b/src/mainboard/lenovo/x201/Kconfig
index af31496..6c174c5 100644
--- a/src/mainboard/lenovo/x201/Kconfig
+++ b/src/mainboard/lenovo/x201/Kconfig
@@ -17,7 +17,7 @@
select MAINBOARD_HAS_LIBGFXINIT
select SUPERIO_NSC_PC87382
select DRIVERS_LENOVO_WACOM
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select INTEL_GMA_HAVE_VBT
select MAINBOARD_USES_IFD_GBE_REGION
diff --git a/src/mainboard/lenovo/x220/Kconfig b/src/mainboard/lenovo/x220/Kconfig
index 61b3c14..d4b5bca 100644
--- a/src/mainboard/lenovo/x220/Kconfig
+++ b/src/mainboard/lenovo/x220/Kconfig
@@ -16,7 +16,7 @@
select HAVE_ACPI_RESUME
select INTEL_INT15
select DRIVERS_RICOH_RCE822
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS
diff --git a/src/mainboard/lenovo/x230/Kconfig b/src/mainboard/lenovo/x230/Kconfig
index cafdead8..a6fd796 100644
--- a/src/mainboard/lenovo/x230/Kconfig
+++ b/src/mainboard/lenovo/x230/Kconfig
@@ -19,7 +19,7 @@
select HAVE_ACPI_RESUME
select INTEL_INT15
select DRIVERS_RICOH_RCE822
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1 if BOARD_LENOVO_X230 || BOARD_LENOVO_X230T
select MAINBOARD_HAS_LIBGFXINIT
select GFX_GMA_PANEL_1_ON_LVDS if BOARD_LENOVO_X230 || BOARD_LENOVO_X230T
diff --git a/src/mainboard/libretrend/lt1000/Kconfig b/src/mainboard/libretrend/lt1000/Kconfig
index 2726a2c..249cf1d 100644
--- a/src/mainboard/libretrend/lt1000/Kconfig
+++ b/src/mainboard/libretrend/lt1000/Kconfig
@@ -7,7 +7,7 @@
select HAVE_ACPI_TABLES
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select SOC_INTEL_SKYLAKE
select SPD_READ_BY_WORD
select SUPERIO_ITE_IT8786E
diff --git a/src/mainboard/ocp/deltalake/Kconfig b/src/mainboard/ocp/deltalake/Kconfig
index 737bc1d..dbf4a2e 100644
--- a/src/mainboard/ocp/deltalake/Kconfig
+++ b/src/mainboard/ocp/deltalake/Kconfig
@@ -14,7 +14,7 @@
select VPD
select VPD_SMBIOS_VERSION
select IPMI_OCP
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select OVERRIDE_UART_FOR_CONSOLE
diff --git a/src/mainboard/opencellular/elgon/Kconfig b/src/mainboard/opencellular/elgon/Kconfig
index 6c20295..e998869 100644
--- a/src/mainboard/opencellular/elgon/Kconfig
+++ b/src/mainboard/opencellular/elgon/Kconfig
@@ -6,11 +6,11 @@
def_bool y
select BOARD_ROMSIZE_KB_16384
select COMMON_CBFS_SPI_WRAPPER
+ select I2C_TPM
select RTC
select SOC_CAVIUM_CN81XX
select SPI_FLASH
select SPI_FLASH_WINBOND
- select MAINBOARD_HAS_I2C_TPM_GENERIC
select MAINBOARD_HAS_TPM1
select MISSING_BOARD_RESET
diff --git a/src/mainboard/pcengines/apu1/Kconfig b/src/mainboard/pcengines/apu1/Kconfig
index d13c0ec..46f4dde 100644
--- a/src/mainboard/pcengines/apu1/Kconfig
+++ b/src/mainboard/pcengines/apu1/Kconfig
@@ -16,7 +16,7 @@
select BOARD_ROMSIZE_KB_2048
select HAVE_SPD_IN_CBFS
select SEABIOS_ADD_SERCON_PORT_FILE if PAYLOAD_SEABIOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
config MAINBOARD_DIR
default "pcengines/apu1"
diff --git a/src/mainboard/pcengines/apu2/Kconfig b/src/mainboard/pcengines/apu2/Kconfig
index d82bf81..dd6536c 100644
--- a/src/mainboard/pcengines/apu2/Kconfig
+++ b/src/mainboard/pcengines/apu2/Kconfig
@@ -14,7 +14,7 @@
select HAVE_ACPI_TABLES
select BOARD_ROMSIZE_KB_8192
select HAVE_SPD_IN_CBFS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select SEABIOS_ADD_SERCON_PORT_FILE if PAYLOAD_SEABIOS
select PCIEXP_ASPM
select PCIEXP_CLK_PM
diff --git a/src/mainboard/prodrive/hermes/Kconfig b/src/mainboard/prodrive/hermes/Kconfig
index ae7b5f1..49fb6c4 100644
--- a/src/mainboard/prodrive/hermes/Kconfig
+++ b/src/mainboard/prodrive/hermes/Kconfig
@@ -10,7 +10,7 @@
select DRIVERS_ASPEED_AST2050
select INTEL_LPSS_UART_FOR_CONSOLE
select MAINBOARD_HAS_TPM2
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select INTEL_GMA_HAVE_VBT
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
select ONBOARD_VGA_IS_PRIMARY
diff --git a/src/mainboard/protectli/vault_kbl/Kconfig b/src/mainboard/protectli/vault_kbl/Kconfig
index 3ad5ce6..310a744 100644
--- a/src/mainboard/protectli/vault_kbl/Kconfig
+++ b/src/mainboard/protectli/vault_kbl/Kconfig
@@ -11,7 +11,7 @@
select SOC_INTEL_KABYLAKE
select SPI_FLASH_MACRONIX
select SUPERIO_ITE_IT8772F
- select MAINBOARD_HAS_CRB_TPM
+ select CRB_TPM
select HAVE_INTEL_PTT
select MAINBOARD_HAS_TPM2
diff --git a/src/mainboard/purism/librem_cnl/Kconfig.name b/src/mainboard/purism/librem_cnl/Kconfig.name
index cfe8626..ad22009 100644
--- a/src/mainboard/purism/librem_cnl/Kconfig.name
+++ b/src/mainboard/purism/librem_cnl/Kconfig.name
@@ -13,7 +13,7 @@
select BOARD_PURISM_BASEBOARD_LIBREM_CNL
select DRIVERS_I2C_HID
select EC_LIBREM_EC
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select SOC_INTEL_COMETLAKE_1
select SYSTEM_TYPE_LAPTOP
diff --git a/src/mainboard/purism/librem_skl/Kconfig b/src/mainboard/purism/librem_skl/Kconfig
index e20a002..e094259 100644
--- a/src/mainboard/purism/librem_skl/Kconfig
+++ b/src/mainboard/purism/librem_skl/Kconfig
@@ -7,7 +7,7 @@
select HAVE_ACPI_TABLES
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select NO_UART_ON_SUPERIO
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
diff --git a/src/mainboard/razer/blade_stealth_kbl/Kconfig b/src/mainboard/razer/blade_stealth_kbl/Kconfig
index b9ca093..9ff6343 100644
--- a/src/mainboard/razer/blade_stealth_kbl/Kconfig
+++ b/src/mainboard/razer/blade_stealth_kbl/Kconfig
@@ -7,7 +7,7 @@
select SUPERIO_ITE_IT8528E
select SOC_INTEL_KABYLAKE
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select MAINBOARD_HAS_LIBGFXINIT
select HAVE_SPD_IN_CBFS
diff --git a/src/mainboard/samsung/lumpy/Kconfig b/src/mainboard/samsung/lumpy/Kconfig
index d0574bb..eb8643e 100644
--- a/src/mainboard/samsung/lumpy/Kconfig
+++ b/src/mainboard/samsung/lumpy/Kconfig
@@ -5,7 +5,7 @@
select SYSTEM_TYPE_LAPTOP
select BOARD_ROMSIZE_KB_8192
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select EC_SMSC_MEC1308
select HAVE_ACPI_RESUME
diff --git a/src/mainboard/samsung/stumpy/Kconfig b/src/mainboard/samsung/stumpy/Kconfig
index 2a706b9..e123058 100644
--- a/src/mainboard/samsung/stumpy/Kconfig
+++ b/src/mainboard/samsung/stumpy/Kconfig
@@ -4,7 +4,7 @@
def_bool y
select BOARD_ROMSIZE_KB_8192
select MAINBOARD_HAS_CHROMEOS
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM1
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
diff --git a/src/mainboard/siemens/chili/Kconfig b/src/mainboard/siemens/chili/Kconfig
index f6e4914..bc1c027 100644
--- a/src/mainboard/siemens/chili/Kconfig
+++ b/src/mainboard/siemens/chili/Kconfig
@@ -11,7 +11,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select MAINBOARD_USES_IFD_GBE_REGION
select SOC_INTEL_CANNONLAKE_PCH_H
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl2/Kconfig b/src/mainboard/siemens/mc_apl1/variants/mc_apl2/Kconfig
index af1a572..933e594 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl2/Kconfig
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl2/Kconfig
@@ -8,7 +8,7 @@
select RX6110SA_DISABLE_ACPI
select DRIVER_SIEMENS_NC_FPGA
select MAINBOARD_HAS_TPM2
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select TPM_ON_FAST_SPI
select TPM_MEASURED_BOOT
select HAS_RECOVERY_MRC_CACHE
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl4/Kconfig b/src/mainboard/siemens/mc_apl1/variants/mc_apl4/Kconfig
index 53729c2..5d3938b 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl4/Kconfig
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl4/Kconfig
@@ -6,7 +6,7 @@
select DRIVER_INTEL_I210
select APL_SET_MIN_CLOCK_RATIO
select MAINBOARD_HAS_TPM2
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select TPM_ON_FAST_SPI
select DRIVERS_I2C_PTN3460
select TPM_MEASURED_BOOT
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl5/Kconfig b/src/mainboard/siemens/mc_apl1/variants/mc_apl5/Kconfig
index 00d65ce..a012ae2 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl5/Kconfig
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl5/Kconfig
@@ -10,7 +10,7 @@
select NC_FPGA_NOTIFY_CB_READY
select APL_SKIP_SET_POWER_LIMITS
select MAINBOARD_HAS_TPM2
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select TPM_ON_FAST_SPI
select DRIVERS_I2C_PTN3460
select TPM_MEASURED_BOOT
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl6/Kconfig b/src/mainboard/siemens/mc_apl1/variants/mc_apl6/Kconfig
index af8d058..bfbe1dd 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl6/Kconfig
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl6/Kconfig
@@ -10,7 +10,7 @@
select NC_FPGA_NOTIFY_CB_READY
select APL_SKIP_SET_POWER_LIMITS
select MAINBOARD_HAS_TPM2
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select TPM_ON_FAST_SPI
select TPM_MEASURED_BOOT
select HAS_RECOVERY_MRC_CACHE
diff --git a/src/mainboard/siemens/mc_ehl/Kconfig b/src/mainboard/siemens/mc_ehl/Kconfig
index ef8373e..e1d7318 100644
--- a/src/mainboard/siemens/mc_ehl/Kconfig
+++ b/src/mainboard/siemens/mc_ehl/Kconfig
@@ -9,7 +9,7 @@
select DRIVER_SIEMENS_NC_FPGA
select NC_FPGA_NOTIFY_CB_READY
select MAINBOARD_HAS_TPM2
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select TPM_MEASURED_BOOT
select TPM_MEASURED_BOOT_INIT_BOOTBLOCK
select USE_SIEMENS_HWILIB
diff --git a/src/mainboard/starlabs/labtop/Kconfig b/src/mainboard/starlabs/labtop/Kconfig
index f8a5bc7..00c84d1 100644
--- a/src/mainboard/starlabs/labtop/Kconfig
+++ b/src/mainboard/starlabs/labtop/Kconfig
@@ -19,7 +19,7 @@
select EC_STARLABS_NEED_ITE_BIN
select HAVE_INTEL_PTT
select HAVE_SPD_IN_CBFS
- select MAINBOARD_HAS_CRB_TPM
+ select CRB_TPM
select MAINBOARD_HAS_LIBGFXINIT
select MAINBOARD_HAS_TPM2
select SOC_INTEL_COMETLAKE_1
@@ -32,7 +32,7 @@
select EC_STARLABS_KBL_LEVELS
select EC_STARLABS_MAX_CHARGE
select EC_STARLABS_NEED_ITE_BIN
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select PCIEXP_HOTPLUG_PREFETCH_MEM_BELOW_4G
select SOC_INTEL_COMMON_BLOCK_TCSS
diff --git a/src/mainboard/starlabs/lite/Kconfig b/src/mainboard/starlabs/lite/Kconfig
index ced67d9..14ddfc4 100644
--- a/src/mainboard/starlabs/lite/Kconfig
+++ b/src/mainboard/starlabs/lite/Kconfig
@@ -9,7 +9,7 @@
select HAVE_INTEL_PTT
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_CRB_TPM
+ select CRB_TPM
select MAINBOARD_HAS_TPM2
select ONBOARD_VGA_IS_PRIMARY
select SOC_INTEL_COMMON_BLOCK_HDA
diff --git a/src/mainboard/supermicro/x11-lga1151-series/Kconfig b/src/mainboard/supermicro/x11-lga1151-series/Kconfig
index 1060655..d618342 100644
--- a/src/mainboard/supermicro/x11-lga1151-series/Kconfig
+++ b/src/mainboard/supermicro/x11-lga1151-series/Kconfig
@@ -6,7 +6,7 @@
select HAVE_CMOS_DEFAULT
select SOC_INTEL_KABYLAKE
select SKYLAKE_SOC_PCH_H
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select DRIVERS_ASPEED_AST2050
select SUPERIO_ASPEED_AST2400
select IPMI_KCS
diff --git a/src/mainboard/supermicro/x9sae/Kconfig b/src/mainboard/supermicro/x9sae/Kconfig
index 4afe85e..0a60570 100644
--- a/src/mainboard/supermicro/x9sae/Kconfig
+++ b/src/mainboard/supermicro/x9sae/Kconfig
@@ -12,7 +12,7 @@
select INTEL_GMA_HAVE_VBT
select INTEL_INT15
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_USES_IFD_GBE_REGION
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SERIRQ_CONTINUOUS_MODE
diff --git a/src/mainboard/system76/addw1/Kconfig b/src/mainboard/system76/addw1/Kconfig
index 84fb63d..510c408 100644
--- a/src/mainboard/system76/addw1/Kconfig
+++ b/src/mainboard/system76/addw1/Kconfig
@@ -16,7 +16,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/bonw14/Kconfig b/src/mainboard/system76/bonw14/Kconfig
index a260b4b..b9aef5a 100644
--- a/src/mainboard/system76/bonw14/Kconfig
+++ b/src/mainboard/system76/bonw14/Kconfig
@@ -13,7 +13,7 @@
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/cml-u/Kconfig b/src/mainboard/system76/cml-u/Kconfig
index 2502c13..2846843 100644
--- a/src/mainboard/system76/cml-u/Kconfig
+++ b/src/mainboard/system76/cml-u/Kconfig
@@ -13,7 +13,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/darp7/Kconfig b/src/mainboard/system76/darp7/Kconfig
index 960e5ae..033b458 100644
--- a/src/mainboard/system76/darp7/Kconfig
+++ b/src/mainboard/system76/darp7/Kconfig
@@ -14,7 +14,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/galp5/Kconfig b/src/mainboard/system76/galp5/Kconfig
index 98e32f7..66d5b1e 100644
--- a/src/mainboard/system76/galp5/Kconfig
+++ b/src/mainboard/system76/galp5/Kconfig
@@ -14,7 +14,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/gaze15/Kconfig b/src/mainboard/system76/gaze15/Kconfig
index 4ecb107..e2ec7d9 100644
--- a/src/mainboard/system76/gaze15/Kconfig
+++ b/src/mainboard/system76/gaze15/Kconfig
@@ -14,7 +14,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select SOC_INTEL_CANNONLAKE_PCH_H
diff --git a/src/mainboard/system76/gaze16/Kconfig b/src/mainboard/system76/gaze16/Kconfig
index cc96d5f..3b3b77a 100644
--- a/src/mainboard/system76/gaze16/Kconfig
+++ b/src/mainboard/system76/gaze16/Kconfig
@@ -14,7 +14,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select MAINBOARD_USES_IFD_GBE_REGION if BOARD_SYSTEM76_GAZE16_3060_B
select NO_UART_ON_SUPERIO
diff --git a/src/mainboard/system76/kbl-u/Kconfig b/src/mainboard/system76/kbl-u/Kconfig
index 518b885..f5cb968 100644
--- a/src/mainboard/system76/kbl-u/Kconfig
+++ b/src/mainboard/system76/kbl-u/Kconfig
@@ -9,7 +9,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/lemp10/Kconfig b/src/mainboard/system76/lemp10/Kconfig
index a732425..aedfb14 100644
--- a/src/mainboard/system76/lemp10/Kconfig
+++ b/src/mainboard/system76/lemp10/Kconfig
@@ -14,7 +14,7 @@
select HAVE_SPD_IN_CBFS
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/lemp9/Kconfig b/src/mainboard/system76/lemp9/Kconfig
index 1cbf31b..a41a970 100644
--- a/src/mainboard/system76/lemp9/Kconfig
+++ b/src/mainboard/system76/lemp9/Kconfig
@@ -14,7 +14,7 @@
select HAVE_SPD_IN_CBFS
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select SOC_INTEL_COMETLAKE_1
diff --git a/src/mainboard/system76/oryp5/Kconfig b/src/mainboard/system76/oryp5/Kconfig
index e8215f4..95faf82 100644
--- a/src/mainboard/system76/oryp5/Kconfig
+++ b/src/mainboard/system76/oryp5/Kconfig
@@ -15,7 +15,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select SOC_INTEL_CANNONLAKE_PCH_H
diff --git a/src/mainboard/system76/oryp6/Kconfig b/src/mainboard/system76/oryp6/Kconfig
index a5cc553..01d8a1a 100644
--- a/src/mainboard/system76/oryp6/Kconfig
+++ b/src/mainboard/system76/oryp6/Kconfig
@@ -14,7 +14,7 @@
select HAVE_CMOS_DEFAULT
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/oryp8/Kconfig b/src/mainboard/system76/oryp8/Kconfig
index 8e65b70..72a90dd 100644
--- a/src/mainboard/system76/oryp8/Kconfig
+++ b/src/mainboard/system76/oryp8/Kconfig
@@ -15,7 +15,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/system76/whl-u/Kconfig b/src/mainboard/system76/whl-u/Kconfig
index b865444..5eea136 100644
--- a/src/mainboard/system76/whl-u/Kconfig
+++ b/src/mainboard/system76/whl-u/Kconfig
@@ -13,7 +13,7 @@
select HAVE_OPTION_TABLE
select INTEL_GMA_HAVE_VBT
select INTEL_LPSS_UART_FOR_CONSOLE
- select MAINBOARD_HAS_LPC_TPM
+ select MEMORY_MAPPED_TPM
select MAINBOARD_HAS_TPM2
select NO_UART_ON_SUPERIO
select PCIEXP_HOTPLUG
diff --git a/src/mainboard/up/squared/Kconfig b/src/mainboard/up/squared/Kconfig
index 7401c95..91b1cbb 100644
--- a/src/mainboard/up/squared/Kconfig
+++ b/src/mainboard/up/squared/Kconfig
@@ -10,7 +10,7 @@
select BOARD_ROMSIZE_KB_16384
select ONBOARD_VGA_IS_PRIMARY
select MAINBOARD_HAS_LIBGFXINIT
- select MAINBOARD_HAS_CRB_TPM
+ select CRB_TPM
select HAVE_INTEL_PTT
select NO_UART_ON_SUPERIO
diff --git a/src/security/tpm/Kconfig b/src/security/tpm/Kconfig
index 4864f12..fc339a2 100644
--- a/src/security/tpm/Kconfig
+++ b/src/security/tpm/Kconfig
@@ -20,21 +20,14 @@
config TPM1
bool "TPM 1.2"
- depends on MAINBOARD_HAS_LPC_TPM || \
- MAINBOARD_HAS_I2C_TPM_GENERIC || \
- MAINBOARD_HAS_I2C_TPM_ATMEL
+ depends on I2C_TPM || MEMORY_MAPPED_TPM || SPI_TPM || CRB_TPM
depends on !MAINBOARD_HAS_TPM2
help
Select this option if your TPM uses the older TPM 1.2 protocol.
config TPM2
bool "TPM 2.0"
- depends on MAINBOARD_HAS_I2C_TPM_GENERIC || \
- MAINBOARD_HAS_LPC_TPM || \
- MAINBOARD_HAS_I2C_TPM_ATMEL || \
- MAINBOARD_HAS_I2C_TPM_CR50 || \
- MAINBOARD_HAS_SPI_TPM || \
- MAINBOARD_HAS_CRB_TPM
+ depends on I2C_TPM || MEMORY_MAPPED_TPM || SPI_TPM || CRB_TPM
depends on !MAINBOARD_HAS_TPM1
help
Select this option if your TPM uses the newer TPM 2.0 protocol.
@@ -77,7 +70,7 @@
config TPM_RDRESP_NEED_DELAY
bool "Enable Delay Workaround for TPM"
default n
- depends on MAINBOARD_HAS_LPC_TPM
+ depends on MEMORY_MAPPED_TPM
help
Certain TPMs seem to need some delay when reading response
to work around a race-condition-related issue, possibly
diff --git a/src/security/tpm/Makefile.inc b/src/security/tpm/Makefile.inc
index c36183d..8f633a8 100644
--- a/src/security/tpm/Makefile.inc
+++ b/src/security/tpm/Makefile.inc
@@ -1,4 +1,4 @@
-subdirs-$(CONFIG_TPM_CR50) += tss/vendor/cr50
+subdirs-$(CONFIG_TPM_GOOGLE) += tss/vendor/cr50
## TSS
diff --git a/src/security/tpm/tss/vendor/cr50/Kconfig b/src/security/tpm/tss/vendor/cr50/Kconfig
index c4ecdef..f98b8ef 100644
--- a/src/security/tpm/tss/vendor/cr50/Kconfig
+++ b/src/security/tpm/tss/vendor/cr50/Kconfig
@@ -1,11 +1,21 @@
# SPDX-License-Identifier: GPL-2.0-only
-config TPM_CR50
+config TPM_GOOGLE
bool
- depends on TPM2
- default y if MAINBOARD_HAS_I2C_TPM_CR50 || MAINBOARD_HAS_SPI_TPM_CR50
-if TPM_CR50
+config TPM_GOOGLE_CR50
+ bool
+ select TPM_GOOGLE
+
+config TPM_GOOGLE_TI50
+ bool
+ select TPM_GOOGLE
+
+if TPM_GOOGLE
+
+config TPM_GOOGLE_IMMEDIATELY_COMMIT_FW_SECDATA
+ bool
+ default y
config POWER_OFF_ON_CR50_UPDATE
bool
diff --git a/src/security/vboot/secdata_mock.c b/src/security/vboot/secdata_mock.c
index 5792b41..57aed61 100644
--- a/src/security/vboot/secdata_mock.c
+++ b/src/security/vboot/secdata_mock.c
@@ -31,7 +31,7 @@
/*
* The new kernel secdata v1 stores the last read EC hash, and reboots the
* device during EC software sync when that hash didn't match the currently
- * active hash on the EC (this is used with TPM_CR50 to support EC-EFS2 and
+ * active hash on the EC (this is used with TPM_GOOGLE to support EC-EFS2 and
* pretty much a no-op for other devices). Generally, of course the whole
* point of secdata is always that it persists across reboots, but with
* MOCK_SECDATA we can't do that. Previously we always happened to somewhat
diff --git a/src/security/vboot/secdata_tpm.c b/src/security/vboot/secdata_tpm.c
index 847a959..450c681 100644
--- a/src/security/vboot/secdata_tpm.c
+++ b/src/security/vboot/secdata_tpm.c
@@ -384,8 +384,7 @@
* Define and write zero-touch enrollment (ZTE) spaces. For Cr50 devices,
* these are set up elsewhere via TPM vendor commands.
*/
- if (CONFIG(CHROMEOS) && (!(CONFIG(MAINBOARD_HAS_SPI_TPM_CR50) ||
- CONFIG(MAINBOARD_HAS_I2C_TPM_CR50))))
+ if (CONFIG(CHROMEOS) && !(CONFIG(TPM_GOOGLE)))
RETURN_ON_FAILURE(setup_zte_spaces());
/* Define widevine counter space. No need to increment/write to the secure counters
@@ -613,7 +612,7 @@
uint32_t antirollback_write_space_firmware(struct vb2_context *ctx)
{
- if (CONFIG(CR50_IMMEDIATELY_COMMIT_FW_SECDATA))
+ if (CONFIG(TPM_GOOGLE_IMMEDIATELY_COMMIT_FW_SECDATA))
tlcl_cr50_enable_nvcommits();
return safe_write(FIRMWARE_NV_INDEX, ctx->secdata_firmware,
VB2_SECDATA_FIRMWARE_SIZE);
@@ -632,7 +631,7 @@
* recovery, software sync, or other special boot flows. When the AP
* wants to write, it is imporant to actually commit changes.
*/
- if (CONFIG(CR50_IMMEDIATELY_COMMIT_FW_SECDATA))
+ if (CONFIG(TPM_GOOGLE_IMMEDIATELY_COMMIT_FW_SECDATA))
tlcl_cr50_enable_nvcommits();
return safe_write(KERNEL_NV_INDEX, ctx->secdata_kernel, size);
diff --git a/src/security/vboot/vboot_logic.c b/src/security/vboot/vboot_logic.c
index 509169f..2230b5ab 100644
--- a/src/security/vboot/vboot_logic.c
+++ b/src/security/vboot/vboot_logic.c
@@ -303,7 +303,7 @@
* If there is an communication error, a recovery reason will be set and
* vb2api_fw_phase1 will route us to recovery mode.
*/
- if (CONFIG(TPM_CR50))
+ if (CONFIG(TPM_GOOGLE))
check_boot_mode(ctx);
if (get_ec_is_trusted())
diff --git a/src/soc/intel/apollolake/Kconfig b/src/soc/intel/apollolake/Kconfig
index 08ddfa4..b2235f8 100644
--- a/src/soc/intel/apollolake/Kconfig
+++ b/src/soc/intel/apollolake/Kconfig
@@ -150,10 +150,10 @@
config TPM_ON_FAST_SPI
bool
default n
- depends on MAINBOARD_HAS_LPC_TPM
+ depends on MEMORY_MAPPED_TPM
help
- TPM part is conntected on Fast SPI interface, but the LPC MMIO
- TPM transactions are decoded and serialized over the SPI interface.
+ TPM part is conntected on Fast SPI interface and is mapped to the
+ linear address space.
config PCR_BASE_ADDRESS
hex
diff --git a/src/soc/intel/common/Makefile.inc b/src/soc/intel/common/Makefile.inc
index ad987dd..43fc2f8 100644
--- a/src/soc/intel/common/Makefile.inc
+++ b/src/soc/intel/common/Makefile.inc
@@ -20,11 +20,7 @@
ramstage-y += vbt.c
ramstage-$(CONFIG_SOC_INTEL_COMMON_NHLT) += nhlt.c
-bootblock-$(CONFIG_TPM_CR50) += tpm_tis.c
-verstage-$(CONFIG_TPM_CR50) += tpm_tis.c
-romstage-$(CONFIG_TPM_CR50) += tpm_tis.c
-ramstage-$(CONFIG_TPM_CR50) += tpm_tis.c
-postcar-$(CONFIG_TPM_CR50) += tpm_tis.c
+all-$(CONFIG_TPM_GOOGLE) += tpm_tis.c
romstage-$(CONFIG_SOC_INTEL_COMMON_FSP_RESET) += fsp_reset.c
ramstage-$(CONFIG_SOC_INTEL_COMMON_FSP_RESET) += fsp_reset.c
diff --git a/src/soc/intel/skylake/acpi/systemagent.asl b/src/soc/intel/skylake/acpi/systemagent.asl
index 36d4932..1ca6232 100644
--- a/src/soc/intel/skylake/acpi/systemagent.asl
+++ b/src/soc/intel/skylake/acpi/systemagent.asl
@@ -171,7 +171,7 @@
0x00000000, PCH_PRESERVED_BASE_ADDRESS, 0xfe7fffff,
0x00000000, PCH_PRESERVED_BASE_SIZE)
-#if !CONFIG(TPM_CR50)
+#if !CONFIG(TPM_GOOGLE)
/* TPM Area (0xfed40000-0xfed44fff) */
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed,
Cacheable, ReadWrite,
diff --git a/src/soc/intel/tigerlake/Kconfig b/src/soc/intel/tigerlake/Kconfig
index c0cf683..ac175c4 100644
--- a/src/soc/intel/tigerlake/Kconfig
+++ b/src/soc/intel/tigerlake/Kconfig
@@ -89,6 +89,7 @@
select USE_FSP_NOTIFY_PHASE_READY_TO_BOOT
select USE_FSP_NOTIFY_PHASE_END_OF_FIRMWARE
select SOC_INTEL_COMMON_BASECODE if SOC_INTEL_CSE_LITE_SKU
+ select CR50_USE_LONG_INTERRUPT_PULSES if TPM_GOOGLE_CR50
config MAX_CPUS
int
@@ -223,11 +224,6 @@
hex
default 0x7fff
-# Tiger Lake SoC requires at least 100us interrupt pulses in order to guarantee detection
-# in all low power states. Cr50 TPM, if used, needs to be told to generate longer pulses.
-config TPM_CR50
- select CR50_USE_LONG_INTERRUPT_PULSES
-
config VBT_DATA_SIZE_KB
int
default 9
diff --git a/src/vendorcode/google/chromeos/Kconfig b/src/vendorcode/google/chromeos/Kconfig
index 780344c..32af5538 100644
--- a/src/vendorcode/google/chromeos/Kconfig
+++ b/src/vendorcode/google/chromeos/Kconfig
@@ -22,10 +22,6 @@
if CHROMEOS
-config CR50_IMMEDIATELY_COMMIT_FW_SECDATA
- bool
- default y if TPM_CR50
-
config CHROMEOS_RAMOOPS
bool "Reserve space for Chrome OS ramoops"
default y
diff --git a/src/vendorcode/google/chromeos/Makefile.inc b/src/vendorcode/google/chromeos/Makefile.inc
index c05d8e7..ce77194 100644
--- a/src/vendorcode/google/chromeos/Makefile.inc
+++ b/src/vendorcode/google/chromeos/Makefile.inc
@@ -9,7 +9,7 @@
ramstage-$(CONFIG_HAVE_REGULATORY_DOMAIN) += wrdd.c
ramstage-$(CONFIG_USE_SAR) += sar.c
ramstage-$(CONFIG_CHROMEOS_DSM_CALIB) += dsm_calib.c
-ramstage-$(CONFIG_TPM_CR50) += cr50_enable_update.c
+ramstage-$(CONFIG_TPM_GOOGLE) += cr50_enable_update.c
romstage-$(CONFIG_CHROMEOS_CSE_BOARD_RESET_OVERRIDE) += cse_board_reset.c
ramstage-$(CONFIG_CHROMEOS_CSE_BOARD_RESET_OVERRIDE) += cse_board_reset.c
diff --git a/src/vendorcode/google/chromeos/cse_board_reset.c b/src/vendorcode/google/chromeos/cse_board_reset.c
index 0b213a6..08db7e2 100644
--- a/src/vendorcode/google/chromeos/cse_board_reset.c
+++ b/src/vendorcode/google/chromeos/cse_board_reset.c
@@ -16,7 +16,7 @@
int ret;
struct cr50_firmware_version version;
- if (CONFIG(MAINBOARD_HAS_SPI_TPM_CR50)) {
+ if (CONFIG(TPM2) && CONFIG(TPM_GOOGLE_CR50)) {
/* Initialize TPM and get the cr50 firmware version. */
ret = tlcl_lib_init();
if (ret != VB2_SUCCESS) {
@@ -36,6 +36,10 @@
(version.major >= 3 && version.minor >= 20))
return;
}
+ if (CONFIG(TPM_GOOGLE_TI50)) {
+ /* All versions of Ti50 firmware support the above PLTRST wiring. */
+ return;
+ }
printk(BIOS_INFO, "Initiating request to EC to trigger cold reset\n");
/*