diff options
author | Jason Gunthorpe <jgunthorpe@obsidianresearch.com> | 2013-10-06 20:43:13 +0200 |
---|---|---|
committer | Peter Huewe <peterhuewe@gmx.de> | 2013-10-22 19:43:04 +0200 |
commit | 4c336e4b1556f4b722ba597bc6e3df786968a600 (patch) | |
tree | 06c87151784a45fa4ae7beb7c0121fd045b469a1 /drivers/char/tpm/Kconfig | |
parent | tpm: Merge the tpm-bios module with tpm.o (diff) | |
download | linux-4c336e4b1556f4b722ba597bc6e3df786968a600.tar.xz linux-4c336e4b1556f4b722ba597bc6e3df786968a600.zip |
tpm: Add support for the Nuvoton NPCT501 I2C TPM
This chip is/was also branded as a Winbond WPCT301.
Originally written by Dan Morav <dmorav@nuvoton.com> and posted to LKML:
https://lkml.org/lkml/2011/9/7/206
The original posting was not merged, I have taken it as a
starting point, forward ported, tested and revised the driver:
- Rework interrupt handling to work properly with level triggered
interrupts. The old version just locked up.
- Synchronize various items with Peter Huewe's Infineon driver:
* Add durations/timeouts sysfs calls
* Remove I2C device auto-detection
* Don't fiddle with chip->release
* Call tpm_dev_vendor_release in the probe error path
* Use MODULE_DEVICE_TABLE for the I2C ids
* Provide OF compatible strings for DT support
* Use SIMPLE_DEV_PM_OPS
* Use module_i2c_driver
- checkpatch cleanups
- Testing on ARM Kirkwood with GPIO interrupts, with this device tree:
tpm@57 {
compatible = "nuvoton,npct501";
reg = <0x57>;
interrupt-parent = <&gpio1>;
interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
};
Signed-off-by: Dan Morav <dmorav@nuvoton.com>
[jgg: revised and tested]
Signed-off-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
[phuewe: minor whitespace changes, fixed module name in kconfig]
Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Diffstat (limited to 'drivers/char/tpm/Kconfig')
-rw-r--r-- | drivers/char/tpm/Kconfig | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/char/tpm/Kconfig b/drivers/char/tpm/Kconfig index 94c0c74434ea..ade71c134a1a 100644 --- a/drivers/char/tpm/Kconfig +++ b/drivers/char/tpm/Kconfig @@ -44,6 +44,16 @@ config TCG_TIS_I2C_INFINEON To compile this driver as a module, choose M here; the module will be called tpm_tis_i2c_infineon. +config TCG_TIS_I2C_NUVOTON + tristate "TPM Interface Specification 1.2 Interface (I2C - Nuvoton)" + depends on I2C + ---help--- + If you have a TPM security chip with an I2C interface from + Nuvoton Technology Corp. say Yes and it will be accessible + from within Linux. + To compile this driver as a module, choose M here; the module + will be called tpm_i2c_nuvoton. + config TCG_NSC tristate "National Semiconductor TPM Interface" depends on X86 |