[2.6.37-rc1 REGRESSION] suspend fails on x200 (was Re: [PATCH]tpm: Autodetect itpm devices)

From: Andy Isaacson
Date: Mon Nov 01 2010 - 17:25:35 EST


On Thu, Oct 21, 2010 at 05:42:40PM -0400, Matthew Garrett wrote:
> 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.

Matthew,

Thanks for coming up with a clean way to integrate this iTPM support!

Unfortunately, automagically loading tpm_tis results in a suspend
regression on my X200:

(hand-transcribed, sorry for any typos)

[ 16.759044] tpm_tis 00:0a: 1.2 TPM (device-id 0x1020, rev-id 6)
[ 7537.636134] PM: Entering mem sleep
[ 7537.636221] Suspending console(s) (use no_console_suspend to debug)
[ 7537.636668] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[ 7537.658111] tpm_tis 00:0a: tpm_transmit: tpm_send: error -5
[ 7537.658119] legacy_suspend(): pnp_bus_suspend+0x0/0x6a returns -5
[ 7537.658122] PM: Device 00:0a failed to suspend: error -5
[ 7537.681940] sd 0:0:0:0: [sda] Stopping disk
[ 7538.564024] PM: Some devices failed to suspend

I suspect that it would have failed previously if I'd forced the module
to load, but since tpm_tis now loads automatically as of 2.6.37-rc1, I
have to "rmmod tpm_tis" for suspend to work.

-andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/