From de5d8ba55909b83df89d59aafcf3036723413ae5 Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Wed, 23 Feb 2022 18:39:39 -0600 Subject: [PATCH] mb/google/glados: Drop TPM PIRQ The Infineon TPM 1.2 used on glados boards doesn't use a PIRQ; Linux only works with 'tpm.tis_interrupts=0" and Windows fails to init the TPM citing a lack of available resources. With the PIRQ removed, both Linux and Windows are happy / the TPM is available for use. Test: build/boot Linux 5.16.x and Windows 11 on google/chell Change-Id: I544695505291bbebe062df636cc8ddd139c08c2b Signed-off-by: Matt DeVillier Reviewed-on: https://review.coreboot.org/c/coreboot/+/62444 Tested-by: build bot (Jenkins) Reviewed-by: Tim Wawrzynczak --- src/mainboard/google/glados/Kconfig | 4 ---- .../google/glados/variants/asuka/include/variant/gpio.h | 2 +- .../google/glados/variants/caroline/include/variant/gpio.h | 2 +- .../google/glados/variants/cave/include/variant/gpio.h | 2 +- .../google/glados/variants/chell/include/variant/gpio.h | 2 +- .../google/glados/variants/glados/include/variant/gpio.h | 2 +- .../google/glados/variants/lars/include/variant/gpio.h | 2 +- .../google/glados/variants/sentry/include/variant/gpio.h | 2 +- 8 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/mainboard/google/glados/Kconfig b/src/mainboard/google/glados/Kconfig index 68e4f7199d..3a1f38bbb5 100644 --- a/src/mainboard/google/glados/Kconfig +++ b/src/mainboard/google/glados/Kconfig @@ -113,10 +113,6 @@ config VARIANT_DIR config OVERRIDE_DEVICETREE default "variants/\$(CONFIG_VARIANT_DIR)/overridetree.cb" -config TPM_PIRQ - hex - default 0x18 # GPP_E0_IRQ - config INCLUDE_NHLT_BLOBS bool "Include blobs for audio." select NHLT_DMIC_2CH diff --git a/src/mainboard/google/glados/variants/asuka/include/variant/gpio.h b/src/mainboard/google/glados/variants/asuka/include/variant/gpio.h index 758b7cc321..135768ae8a 100644 --- a/src/mainboard/google/glados/variants/asuka/include/variant/gpio.h +++ b/src/mainboard/google/glados/variants/asuka/include/variant/gpio.h @@ -143,7 +143,7 @@ static const struct pad_config gpio_table[] = { /* ITCH_SPI_D2 */ PAD_NC(GPP_D21, NONE), /* ITCH_SPI_D3 */ PAD_NC(GPP_D22, NONE), /* I2S_MCLK */ PAD_CFG_NF(GPP_D23, NONE, DEEP, NF1), -/* SPI_TPM_IRQ */ PAD_CFG_GPI_APIC_HIGH(GPP_E0, NONE, PLTRST), +/* SPI_TPM_IRQ */ PAD_NC(GPP_E0, NONE), /* SATAXPCIE1 */ PAD_NC(GPP_E1, NONE), /* SSD_PEDET */ PAD_NC(GPP_E2, NONE), /* AUDIO_DB_ID */ PAD_CFG_GPI_GPIO_DRIVER(GPP_E3, NONE, DEEP), diff --git a/src/mainboard/google/glados/variants/caroline/include/variant/gpio.h b/src/mainboard/google/glados/variants/caroline/include/variant/gpio.h index fe31102f64..8003dbeda5 100644 --- a/src/mainboard/google/glados/variants/caroline/include/variant/gpio.h +++ b/src/mainboard/google/glados/variants/caroline/include/variant/gpio.h @@ -152,7 +152,7 @@ static const struct pad_config gpio_table[] = { /* TS_SPI1_IO2 */ PAD_NC(GPP_D21, NONE), /* TS_SPI1_IO3 */ PAD_CFG_GPO(GPP_D22, 1, DEEP), /* I2S2 BUFFER */ /* I2S_MCLK */ PAD_CFG_NF(GPP_D23, NONE, DEEP, NF1), -/* SATAXPCI0 */ PAD_CFG_GPI_APIC_HIGH(GPP_E0, NONE, PLTRST), /* TPM_PIRQ_L */ +/* SPI_TPM_IRQ */ PAD_NC(GPP_E0, NONE), /* SATAXPCIE1 */ PAD_NC(GPP_E1, NONE), /* SATAXPCIE2 */ PAD_NC(GPP_E2, NONE), /* CPU_GP0 */ PAD_NC(GPP_E3, NONE), diff --git a/src/mainboard/google/glados/variants/cave/include/variant/gpio.h b/src/mainboard/google/glados/variants/cave/include/variant/gpio.h index e96a78a379..b908348090 100644 --- a/src/mainboard/google/glados/variants/cave/include/variant/gpio.h +++ b/src/mainboard/google/glados/variants/cave/include/variant/gpio.h @@ -148,7 +148,7 @@ static const struct pad_config gpio_table[] = { /* TS_SPI_IO2 */ PAD_NC(GPP_D21, NONE), /* TS_SPI_IO3 */ PAD_NC(GPP_D22, NONE), /* I2S_MCLK */ PAD_CFG_NF(GPP_D23, NONE, DEEP, NF1), -/* SATAXPCI0 */ PAD_CFG_GPI_APIC_HIGH(GPP_E0, NONE, PLTRST), /* TPM_PIRQ_L */ +/* SPI_TPM_IRQ */ PAD_NC(GPP_E0, NONE), /* SATAXPCIE1 */ PAD_NC(GPP_E1, NONE), /* SATAXPCIE2 */ PAD_NC(GPP_E2, NONE), /* CPU_GP0 */ PAD_CFG_GPI_GPIO_DRIVER(GPP_E3, NONE, DEEP), /* AUDIO_DB_ID */ diff --git a/src/mainboard/google/glados/variants/chell/include/variant/gpio.h b/src/mainboard/google/glados/variants/chell/include/variant/gpio.h index 326047262d..d1215e64b4 100644 --- a/src/mainboard/google/glados/variants/chell/include/variant/gpio.h +++ b/src/mainboard/google/glados/variants/chell/include/variant/gpio.h @@ -142,7 +142,7 @@ static const struct pad_config gpio_table[] = { /* SPI1_IO2 */ PAD_CFG_GPO(GPP_D21, 0, DEEP), /* SPI1_IO3 */ PAD_CFG_GPO(GPP_D22, 0, DEEP), /* I2S2 BUFFER */ /* I2S_MCLK */ PAD_CFG_NF(GPP_D23, NONE, DEEP, NF1), -/* SATAXPCI0 */ PAD_CFG_GPI_APIC_HIGH(GPP_E0, NONE, PLTRST), /* TPM_PIRQ_L */ +/* SPI_TPM_IRQ */ PAD_NC(GPP_E0, NONE), /* SATAXPCIE1 */ PAD_NC(GPP_E1, NONE), /* SATAXPCIE2 */ PAD_NC(GPP_E2, NONE), /* CPU_GP0 */ PAD_CFG_GPO(GPP_E3, 1, DEEP), /* TOUCHSCREEN_RST_L */ diff --git a/src/mainboard/google/glados/variants/glados/include/variant/gpio.h b/src/mainboard/google/glados/variants/glados/include/variant/gpio.h index b812fb7a13..8baecab0eb 100644 --- a/src/mainboard/google/glados/variants/glados/include/variant/gpio.h +++ b/src/mainboard/google/glados/variants/glados/include/variant/gpio.h @@ -145,7 +145,7 @@ static const struct pad_config gpio_table[] = { /* GPP_D21 */ /* GPP_D22 */ /* I2S_MCLK */ PAD_CFG_NF(GPP_D23, NONE, DEEP, NF1), -/* SATAXPCI0 */ PAD_CFG_GPI_APIC_HIGH(GPP_E0, NONE, DEEP), /* TPM_PIRQ_L */ +/* SPI_TPM_IRQ */ PAD_NC(GPP_E0, NONE), /* SATAXPCIE1 */ /* GPP_E1 */ /* SATAXPCIE2 */ /* GPP_E2 */ /* CPU_GP0 */ /* GPP_E3 */ diff --git a/src/mainboard/google/glados/variants/lars/include/variant/gpio.h b/src/mainboard/google/glados/variants/lars/include/variant/gpio.h index 7cf56aac8f..5ff059bb4e 100644 --- a/src/mainboard/google/glados/variants/lars/include/variant/gpio.h +++ b/src/mainboard/google/glados/variants/lars/include/variant/gpio.h @@ -138,7 +138,7 @@ static const struct pad_config gpio_table[] = { /* ITCH_SPI_D2 */ PAD_NC(GPP_D21, NONE), /* ITCH_SPI_D3 */ PAD_NC(GPP_D22, NONE), /* I2S_MCLK */ PAD_CFG_NF(GPP_D23, NONE, DEEP, NF1), -/* SPI_TPM_IRQ */ PAD_CFG_GPI_APIC_HIGH(GPP_E0, NONE, PLTRST), +/* SPI_TPM_IRQ */ PAD_NC(GPP_E0, NONE), /* SATAXPCIE1 */ PAD_NC(GPP_E1, NONE), /* SSD_PEDET */ PAD_NC(GPP_E2, NONE), /* CPU_GP0 */ PAD_NC(GPP_E3, NONE), diff --git a/src/mainboard/google/glados/variants/sentry/include/variant/gpio.h b/src/mainboard/google/glados/variants/sentry/include/variant/gpio.h index 10291b02ec..f208a278a0 100644 --- a/src/mainboard/google/glados/variants/sentry/include/variant/gpio.h +++ b/src/mainboard/google/glados/variants/sentry/include/variant/gpio.h @@ -146,7 +146,7 @@ static const struct pad_config gpio_table[] = { /* ITCH_SPI_D2 */ PAD_NC(GPP_D21, NONE), /* ITCH_SPI_D3 */ PAD_NC(GPP_D22, NONE), /* I2S_MCLK */ PAD_CFG_NF(GPP_D23, NONE, DEEP, NF1), -/* SPI_TPM_IRQ */ PAD_CFG_GPI_APIC_HIGH(GPP_E0, NONE, PLTRST), +/* SPI_TPM_IRQ */ PAD_NC(GPP_E0, NONE), /* SATAXPCIE1 */ PAD_NC(GPP_E1, NONE), /* SSD_PEDET */ PAD_NC(GPP_E2, NONE), /* AUDIO_DB_ID */ PAD_CFG_GPI_GPIO_DRIVER(GPP_E3, NONE, DEEP),