[PATCH] tpm: add HID module parameter
authorKylene Jo Hall <kjhall@us.ibm.com>
Sat, 22 Apr 2006 09:39:52 +0000 (02:39 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sat, 22 Apr 2006 16:19:55 +0000 (09:19 -0700)
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 <kjhall@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/char/tpm/tpm_tis.c

index 447f76388067fe8d8ec88996bf3a247f139fbb35..b9cae9a238bb651d7814740b013ae39899d9f727 100644 (file)
@@ -610,7 +610,13 @@ static int tpm_tis_pnp_resume(struct pnp_dev *dev)
 
 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 = {
@@ -621,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);