2023-08-04 18:07:15

by Jonathan McDowell

[permalink] [raw]
Subject: [PATCH] tpm/tpm_tis: Disable interrupts for Lenovo P620 devices

The Lenovo ThinkStation P620 suffers from an irq storm issue like
various other Lenovo machines, so add an entry for it to
tpm_tis_dmi_table and force polling.

It is worth noting that 481c2d14627de8ecbb54dd125466e4b4a5069b47
(tpm,tpm_tis: Disable interrupts after 1000 unhandled IRQs) does not
seem to fix the problem on this machine, but setting
tpm_tis.interrupts=0 on the kernel command line does.

Cc: [email protected] # v6.4+
Fixes: e644b2f498d2 ("tpm, tpm_tis: Enable interrupt test")
Signed-off-by: Jonathan McDowell <[email protected]>
---
drivers/char/tpm/tpm_tis.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
index cc42cf3de960..0cbd745374dc 100644
--- a/drivers/char/tpm/tpm_tis.c
+++ b/drivers/char/tpm/tpm_tis.c
@@ -162,6 +162,14 @@ static const struct dmi_system_id tpm_tis_dmi_table[] = {
DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad L590"),
},
},
+ {
+ .callback = tpm_tis_disable_irq,
+ .ident = "ThinkStation P620",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkStation P620"),
+ },
+ },
{
.callback = tpm_tis_disable_irq,
.ident = "UPX-TGL",
--
2.41.0


2023-08-05 00:17:39

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] tpm/tpm_tis: Disable interrupts for Lenovo P620 devices

On Fri Aug 4, 2023 at 8:08 PM EEST, Jonathan McDowell wrote:
> The Lenovo ThinkStation P620 suffers from an irq storm issue like
> various other Lenovo machines, so add an entry for it to
> tpm_tis_dmi_table and force polling.
>
> It is worth noting that 481c2d14627de8ecbb54dd125466e4b4a5069b47
> (tpm,tpm_tis: Disable interrupts after 1000 unhandled IRQs) does not
> seem to fix the problem on this machine, but setting
> tpm_tis.interrupts=0 on the kernel command line does.
>
> Cc: [email protected] # v6.4+
> Fixes: e644b2f498d2 ("tpm, tpm_tis: Enable interrupt test")
> Signed-off-by: Jonathan McDowell <[email protected]>
> ---
> drivers/char/tpm/tpm_tis.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
> index cc42cf3de960..0cbd745374dc 100644
> --- a/drivers/char/tpm/tpm_tis.c
> +++ b/drivers/char/tpm/tpm_tis.c
> @@ -162,6 +162,14 @@ static const struct dmi_system_id tpm_tis_dmi_table[] = {
> DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad L590"),
> },
> },
> + {
> + .callback = tpm_tis_disable_irq,
> + .ident = "ThinkStation P620",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkStation P620"),
> + },
> + },
> {
> .callback = tpm_tis_disable_irq,
> .ident = "UPX-TGL",

Reviewed-by: Jarkko Sakkinen <[email protected]>

BR, Jarkko