summaryrefslogtreecommitdiff
path: root/drivers/char/tpm/tpm.c
diff options
context:
space:
mode:
authorXiaoyan Zhang <xiaoyan.zhang@intel.com>2012-08-22 18:47:22 +0800
committerKent Yoder <key@linux.vnet.ibm.com>2012-08-22 16:23:42 -0500
commitf84fdff0fdcda7e509ce530e0ee612233a2104fb (patch)
tree6af900776de08b9610f383eb741681366e800e9a /drivers/char/tpm/tpm.c
parent1f862f0f96abdf8b030bda84d6b66d676f31785f (diff)
downloadlwn-f84fdff0fdcda7e509ce530e0ee612233a2104fb.tar.gz
lwn-f84fdff0fdcda7e509ce530e0ee612233a2104fb.zip
driver: add PPI support in tpm driver
The Physical Presence Interface enables the OS and the BIOS to cooperate and provides a simple and straightforward platform user experience for administering the TPM without sacrificing security. V2: separate the patch out in a separate source file, add #ifdef CONFIG_ACPI so it compiles out on ppc, use standard error instead of ACPI error as return code of show/store fns. V3: move #ifdef CONFIG_ACPI from .c file to .h file. V4: move tpm_ppi code from tpm module to tpm_bios module. V5: modify sys_add_ppi() so that ppi_attr_grp doesn't need to be exported Signed-off-by: Xiaoyan Zhang <xiaoyan.zhang@intel.com> Signed-off-by: Kent Yoder <key@linux.vnet.ibm.com>
Diffstat (limited to 'drivers/char/tpm/tpm.c')
-rw-r--r--drivers/char/tpm/tpm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c
index 0a75638e3e56..39526c053158 100644
--- a/drivers/char/tpm/tpm.c
+++ b/drivers/char/tpm/tpm.c
@@ -1476,6 +1476,11 @@ struct tpm_chip *tpm_register_hardware(struct device *dev,
goto put_device;
}
+ if (sys_add_ppi(&dev->kobj)) {
+ misc_deregister(&chip->vendor.miscdev);
+ goto put_device;
+ }
+
chip->bios_dir = tpm_bios_log_setup(devname);
/* Make chip available */