LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* 2.6.36.2 regression: suspend on Lenovo X200s broken due to TPM
@ 2010-12-20 18:10 Andrew Lutomirski
  2010-12-20 18:22 ` Matthew Garrett
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Lutomirski @ 2010-12-20 18:10 UTC (permalink / raw)
  To: linux-kernel, stable, Matthew Garrett, Dmitry Torokhov

The change "PNPACPI: cope with invalid device IDs", added in 2.6.36.2,
makes the kernel detect my TPM (it used to not work at all), but the
TPM driver doesn't work because it can't autodetect the iTPM
workaround.  This breaks suspend without actually fixing my TPM.

On boot, I get:

[   11.159923] tpm_tis 00:0a: 1.2 TPM (device-id 0x1020, rev-id 6)
[   11.165033] tpm_tis 00:0a: tpm_transmit: tpm_send: error -5
[   11.171020] tpm_tis 00:0a: tpm_transmit: tpm_send: error -5
[   11.177021] tpm_tis 00:0a: tpm_transmit: tpm_send: error -5

and on suspend I get:

[   67.918108] tpm_tis 00:0a: tpm_transmit: tpm_send: error -5
[   67.918116] legacy_suspend(): pnp_bus_suspend+0x0/0x85 returns -5
[   67.918120] PM: Device 00:0a failed to suspend: error -5
[   68.174167] PM: Some devices failed to suspend

tpm_tis.itpm=1 fixes it, as does upstream commit
3f0d3d016d89a5efb8b926d4707eb21fa13f3d27 (tpm: Autodetect itpm
devices)

Greg (and mjg): can you either revert the PNPACPI fix in 2.6.36.3 or
add the upstream fix?

The offending commit is:

commit 47bbe7b5e827946c7b560b1917cd8cbdbe6d84b7
Author: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date:   Sat Sep 18 10:11:09 2010 -0700

    PNPACPI: cope with invalid device IDs

    commit 420a0f66378c84b00b0e603e4d38210102dbe367 upstream.

    If primary ID (HID) is invalid try locating first valid ID on compatible
    ID list before giving up.

    This helps, for example, to recognize i8042 AUX port on Sony Vaio VPCZ1
    which uses SNYSYN0003 as HID. Without the patch users are forced to
    boot with i8042.nopnp to make use of their touchpads.

    Tested-by: Jan-Hendrik Zab <jan@jhz.name>
    Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

The fix is:

commit 3f0d3d016d89a5efb8b926d4707eb21fa13f3d27
Author: Matthew Garrett <mjg@redhat.com>
Date:   Thu Oct 21 17:42:40 2010 -0400

    tpm: Autodetect itpm devices

    Some Lenovos have TPMs that require a quirk to function correctly. This can
    be autodetected by checking whether the device has a _HID of INTC0102. This
    is an invalid PNPid, and as such is discarded by the pnp layer - however
    it's still present in the ACPI code, so we can pull it out that way. This
    means that the quirk won't be automatically applied on non-ACPI systems,
    but without ACPI we don't have any way to identify the chip anyway so I
    don't think that's a great concern.

    Signed-off-by: Matthew Garrett <mjg@redhat.com>
    Acked-by: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
    Tested-by: Jiri Kosina <jkosina@suse.cz>
    Tested-by: Andy Isaacson <adi@hexapodia.org>
    Signed-off-by: James Morris <jmorris@namei.org>

This applies cleanly to 2.6.36.2, reports "tpm_tis 00:0a: Intel iTPM
workaround enabled" and makes my laptop suspend again.

Thanks,
Andy

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: 2.6.36.2 regression: suspend on Lenovo X200s broken due to TPM
  2010-12-20 18:10 2.6.36.2 regression: suspend on Lenovo X200s broken due to TPM Andrew Lutomirski
@ 2010-12-20 18:22 ` Matthew Garrett
  2011-01-23  2:44   ` Andrew Lutomirski
  0 siblings, 1 reply; 3+ messages in thread
From: Matthew Garrett @ 2010-12-20 18:22 UTC (permalink / raw)
  To: Andrew Lutomirski; +Cc: linux-kernel, stable, Dmitry Torokhov

On Mon, Dec 20, 2010 at 01:10:03PM -0500, Andrew Lutomirski wrote:
> The change "PNPACPI: cope with invalid device IDs", added in 2.6.36.2,
> makes the kernel detect my TPM (it used to not work at all), but the
> TPM driver doesn't work because it can't autodetect the iTPM
> workaround.  This breaks suspend without actually fixing my TPM.

I hadn't realised that patch went back to stable. Greg, you'll want to 
pull 3f0d3d016d89a5efb8b926d4707eb21fa13f3d27 as well.

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: 2.6.36.2 regression: suspend on Lenovo X200s broken due to TPM
  2010-12-20 18:22 ` Matthew Garrett
@ 2011-01-23  2:44   ` Andrew Lutomirski
  0 siblings, 0 replies; 3+ messages in thread
From: Andrew Lutomirski @ 2011-01-23  2:44 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-kernel, stable, Dmitry Torokhov, Matthew Garrett

On Mon, Dec 20, 2010 at 1:22 PM, Matthew Garrett <mjg59@srcf.ucam.org> wrote:
> On Mon, Dec 20, 2010 at 01:10:03PM -0500, Andrew Lutomirski wrote:
>> The change "PNPACPI: cope with invalid device IDs", added in 2.6.36.2,
>> makes the kernel detect my TPM (it used to not work at all), but the
>> TPM driver doesn't work because it can't autodetect the iTPM
>> workaround.  This breaks suspend without actually fixing my TPM.
>
> I hadn't realised that patch went back to stable. Greg, you'll want to
> pull 3f0d3d016d89a5efb8b926d4707eb21fa13f3d27 as well.

Greg, did this get lost for 2.6.36.3?

--Andy

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-01-23  2:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-12-20 18:10 2.6.36.2 regression: suspend on Lenovo X200s broken due to TPM Andrew Lutomirski
2010-12-20 18:22 ` Matthew Garrett
2011-01-23  2:44   ` Andrew Lutomirski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).