From afb3a7bd224dc3fc3840f7b07849f8ec4aa2214e Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Mon, 17 Feb 2020 19:27:22 -0700 Subject: [PATCH] TPM support Change-Id: I1d106ac7da4d7229706cb8ad5a98c58b32d86a40 --- src/mainboard/system76/cml-u/Kconfig | 16 +++++----------- src/mainboard/system76/cml-u/acpi_tables.c | 0 src/mainboard/system76/cml-u/devicetree.cb | 6 +++++- src/mainboard/system76/cml-u/gpio.h | 4 ++-- src/mainboard/system76/lemp9/Kconfig | 16 +++++----------- src/mainboard/system76/lemp9/devicetree.cb | 6 +++++- src/mainboard/system76/lemp9/gpio.h | 4 ++-- src/mainboard/system76/whl-u/Kconfig | 16 +++++----------- src/mainboard/system76/whl-u/acpi_tables.c | 0 src/mainboard/system76/whl-u/devicetree.cb | 6 +++++- src/mainboard/system76/whl-u/gpio.h | 4 ++-- 11 files changed, 36 insertions(+), 42 deletions(-) delete mode 100644 src/mainboard/system76/cml-u/acpi_tables.c delete mode 100644 src/mainboard/system76/whl-u/acpi_tables.c diff --git a/src/mainboard/system76/cml-u/Kconfig b/src/mainboard/system76/cml-u/Kconfig index 24364b71c6..e501e26782 100644 --- a/src/mainboard/system76/cml-u/Kconfig +++ b/src/mainboard/system76/cml-u/Kconfig @@ -12,9 +12,8 @@ config BOARD_SPECIFIC_OPTIONS select HAVE_SMI_HANDLER select INTEL_GMA_HAVE_VBT select INTEL_LPSS_UART_FOR_CONSOLE -# Chip select 2 is not yet supported by intel fast_spi -# select MAINBOARD_HAS_SPI_TPM_CR50 -# select MAINBOARD_HAS_TPM2 + select MAINBOARD_HAS_LPC_TPM + select MAINBOARD_HAS_TPM2 select NO_UART_ON_SUPERIO select PCIEXP_HOTPLUG select SOC_INTEL_COMETLAKE @@ -98,13 +97,8 @@ config POST_DEVICE bool default n -# Chip select 2 is not yet supported by intel fast_spi -#config DRIVER_TPM_SPI_BUS -# hex -# default 0x0 -# -#config DRIVER_TPM_SPI_CHIP -# int -# default 2 +config TPM_PIRQ + hex + default 0x1F # GPP_A7_IRQ endif diff --git a/src/mainboard/system76/cml-u/acpi_tables.c b/src/mainboard/system76/cml-u/acpi_tables.c deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/mainboard/system76/cml-u/devicetree.cb b/src/mainboard/system76/cml-u/devicetree.cb index c477ba3a40..cce39187b3 100644 --- a/src/mainboard/system76/cml-u/devicetree.cb +++ b/src/mainboard/system76/cml-u/devicetree.cb @@ -230,7 +230,11 @@ chip soc/intel/cannonlake device pci 1e.1 off end # UART #1 device pci 1e.2 off end # GSPI #0 device pci 1e.3 off end # GSPI #1 - device pci 1f.0 on end # LPC Interface + device pci 1f.0 on # LPC Interface + chip drivers/pc80/tpm + device pnp 0c31.0 on end + end + end device pci 1f.1 off end # P2SB device pci 1f.2 off end # Power Management Controller device pci 1f.3 on end # Intel HDA diff --git a/src/mainboard/system76/cml-u/gpio.h b/src/mainboard/system76/cml-u/gpio.h index 5431a7d73c..a17d6ffa52 100644 --- a/src/mainboard/system76/cml-u/gpio.h +++ b/src/mainboard/system76/cml-u/gpio.h @@ -89,8 +89,8 @@ static const struct pad_config gpio_table[] = { PAD_CFG_NF(GPP_A6, NONE, DEEP, NF1), // GSPI0 - // TODO - TPM_PIRQ# - PAD_CFG_NC(GPP_A7), + // TPM_PIRQ# + PAD_CFG_GPI_APIC_HIGH(GPP_A7, NONE, DEEP), // LPC // PM_CLKRUN# with pull-up diff --git a/src/mainboard/system76/lemp9/Kconfig b/src/mainboard/system76/lemp9/Kconfig index a612503b6a..67fffccb78 100644 --- a/src/mainboard/system76/lemp9/Kconfig +++ b/src/mainboard/system76/lemp9/Kconfig @@ -11,9 +11,8 @@ config BOARD_SPECIFIC_OPTIONS select GENERIC_SPD_BIN select INTEL_GMA_HAVE_VBT select INTEL_LPSS_UART_FOR_CONSOLE -# Chip select 2 is not yet supported by intel fast_spi -# select MAINBOARD_HAS_SPI_TPM_CR50 -# select MAINBOARD_HAS_TPM2 + select MAINBOARD_HAS_LPC_TPM + select MAINBOARD_HAS_TPM2 select NO_UART_ON_SUPERIO select SOC_INTEL_COMETLAKE select SOC_INTEL_COMMON_BLOCK_HDA @@ -91,13 +90,8 @@ config POST_DEVICE bool default n -# Chip select 2 is not yet supported by intel fast_spi -#config DRIVER_TPM_SPI_BUS -# hex -# default 0x0 -# -#config DRIVER_TPM_SPI_CHIP -# int -# default 2 +config TPM_PIRQ + hex + default 0x1F # GPP_A7_IRQ endif diff --git a/src/mainboard/system76/lemp9/devicetree.cb b/src/mainboard/system76/lemp9/devicetree.cb index e7cd468701..a42a9a09e2 100644 --- a/src/mainboard/system76/lemp9/devicetree.cb +++ b/src/mainboard/system76/lemp9/devicetree.cb @@ -230,7 +230,11 @@ chip soc/intel/cannonlake device pci 1e.1 off end # UART #1 device pci 1e.2 off end # GSPI #0 device pci 1e.3 off end # GSPI #1 - device pci 1f.0 on end # LPC Interface + device pci 1f.0 on # LPC Interface + chip drivers/pc80/tpm + device pnp 0c31.0 on end + end + end device pci 1f.1 off end # P2SB device pci 1f.2 off end # Power Management Controller device pci 1f.3 on end # Intel HDA diff --git a/src/mainboard/system76/lemp9/gpio.h b/src/mainboard/system76/lemp9/gpio.h index 0d8737ad20..2a21e8b416 100644 --- a/src/mainboard/system76/lemp9/gpio.h +++ b/src/mainboard/system76/lemp9/gpio.h @@ -89,8 +89,8 @@ static const struct pad_config gpio_table[] = { PAD_CFG_NF(GPP_A6, NONE, DEEP, NF1), // GSPI0 - // TODO - TPM_PIRQ# - PAD_CFG_NC(GPP_A7), + // TPM_PIRQ# + PAD_CFG_GPI_APIC_HIGH(GPP_A7, NONE, DEEP), // LPC // PM_CLKRUN# with pull-up diff --git a/src/mainboard/system76/whl-u/Kconfig b/src/mainboard/system76/whl-u/Kconfig index 0570481d97..34f115dcab 100644 --- a/src/mainboard/system76/whl-u/Kconfig +++ b/src/mainboard/system76/whl-u/Kconfig @@ -12,9 +12,8 @@ config BOARD_SPECIFIC_OPTIONS select HAVE_SMI_HANDLER select INTEL_GMA_HAVE_VBT select INTEL_LPSS_UART_FOR_CONSOLE -# Chip select 2 is not yet supported by intel fast_spi -# select MAINBOARD_HAS_SPI_TPM_CR50 -# select MAINBOARD_HAS_TPM2 + select MAINBOARD_HAS_LPC_TPM + select MAINBOARD_HAS_TPM2 select NO_UART_ON_SUPERIO select PCIEXP_HOTPLUG select SOC_INTEL_COMMON_ACPI_EC_PTS_WAK @@ -98,13 +97,8 @@ config POST_DEVICE bool default n -# Chip select 2 is not yet supported by intel fast_spi -#config DRIVER_TPM_SPI_BUS -# hex -# default 0x0 -# -#config DRIVER_TPM_SPI_CHIP -# int -# default 2 +config TPM_PIRQ + hex + default 0x1F # GPP_A7_IRQ endif diff --git a/src/mainboard/system76/whl-u/acpi_tables.c b/src/mainboard/system76/whl-u/acpi_tables.c deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/mainboard/system76/whl-u/devicetree.cb b/src/mainboard/system76/whl-u/devicetree.cb index c477ba3a40..cce39187b3 100644 --- a/src/mainboard/system76/whl-u/devicetree.cb +++ b/src/mainboard/system76/whl-u/devicetree.cb @@ -230,7 +230,11 @@ chip soc/intel/cannonlake device pci 1e.1 off end # UART #1 device pci 1e.2 off end # GSPI #0 device pci 1e.3 off end # GSPI #1 - device pci 1f.0 on end # LPC Interface + device pci 1f.0 on # LPC Interface + chip drivers/pc80/tpm + device pnp 0c31.0 on end + end + end device pci 1f.1 off end # P2SB device pci 1f.2 off end # Power Management Controller device pci 1f.3 on end # Intel HDA diff --git a/src/mainboard/system76/whl-u/gpio.h b/src/mainboard/system76/whl-u/gpio.h index 5431a7d73c..a17d6ffa52 100644 --- a/src/mainboard/system76/whl-u/gpio.h +++ b/src/mainboard/system76/whl-u/gpio.h @@ -89,8 +89,8 @@ static const struct pad_config gpio_table[] = { PAD_CFG_NF(GPP_A6, NONE, DEEP, NF1), // GSPI0 - // TODO - TPM_PIRQ# - PAD_CFG_NC(GPP_A7), + // TPM_PIRQ# + PAD_CFG_GPI_APIC_HIGH(GPP_A7, NONE, DEEP), // LPC // PM_CLKRUN# with pull-up