I recently found that not all BIOS manufacturers are using the specified
generic PNP id in their TPM ACPI table entry. I have added the vendor
specific IDs that I know about and added a module parameter that a user
can specify another HID to the probe list if their device isn't being
found by the default list.
Signed-off-by: Kylene Hall <[email protected]>
---
drivers/char/tpm/tpm_tis.c | 13 ++++++++++++-
1 files changed, 12 insertions(+), 1 deletion(-)
--- linux-2.6.17-rc1/drivers/char/tpm/tpm_tis.c 2006-04-18 15:24:27.850777000 -0500
+++ linux-2.6.17-rc1-tpm/drivers/char/tpm/tpm_tis.c 2006-04-18 15:38:33.719640500 -0500
@@ -602,7 +610,13 @@ static int tpm_tis_pnp_resume(struct pnp
static struct pnp_device_id tpm_pnp_tbl[] __devinitdata = {
{"PNP0C31", 0}, /* TPM */
- {"", 0}
+ {"ATM1200", 0}, /* Atmel */
+ {"IFX0102", 0}, /* Infineon */
+ {"BCM0101", 0}, /* Broadcom */
+ {"NSC1200", 0}, /* National */
+ /* Add new here */
+ {"", 0}, /* User Specified */
+ {"", 0} /* Terminator */
};
static struct pnp_driver tis_pnp_driver = {
@@ -613,6 +627,11 @@ static struct pnp_driver tis_pnp_driver
.resume = tpm_tis_pnp_resume,
};
+#define TIS_HID_USR_IDX sizeof(tpm_pnp_tbl)/sizeof(struct pnp_device_id) -2
+module_param_string(hid, tpm_pnp_tbl[TIS_HID_USR_IDX].id,
+ sizeof(tpm_pnp_tbl[TIS_HID_USR_IDX].id), 0444);
+MODULE_PARM_DESC(hid, "Set additional specific HID for this driver to probe");
+
static int __init init_tis(void)
{
return pnp_register_driver(&tis_pnp_driver);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]