xref: /linux/drivers/char/tpm/Kconfig (revision 2bfee22f6c60e046f6b04f2d4855fddac1f67290)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# TPM device configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvalds
57126b75cSJan Engelhardtmenuconfig TCG_TPM
61da177e4SLinus Torvalds	tristate "TPM Hardware Support"
77126b75cSJan Engelhardt	depends on HAS_IOMEM
8da31894eSEric Paris	select SECURITYFS
91da177e4SLinus Torvalds	---help---
101da177e4SLinus Torvalds	  If you have a TPM security chip in your system, which
111da177e4SLinus Torvalds	  implements the Trusted Computing Group's specification,
121da177e4SLinus Torvalds	  say Yes and it will be accessible from within Linux.  For
131da177e4SLinus Torvalds	  more information see <http://www.trustedcomputinggroup.org>.
141da177e4SLinus Torvalds	  An implementation of the Trusted Software Stack (TSS), the
151da177e4SLinus Torvalds	  userspace enablement piece of the specification, can be
161da177e4SLinus Torvalds	  obtained at: <http://sourceforge.net/projects/trousers>.  To
171da177e4SLinus Torvalds	  compile this driver as a module, choose M here; the module
181da177e4SLinus Torvalds	  will be called tpm. If unsure, say N.
197f2ab000SRajiv Andrade	  Notes:
207f2ab000SRajiv Andrade	  1) For more TPM drivers enable CONFIG_PNP, CONFIG_ACPI
21ec4a162aSJames Morris	  and CONFIG_PNPACPI.
227f2ab000SRajiv Andrade	  2) Without ACPI enabled, the BIOS event log won't be accessible,
237f2ab000SRajiv Andrade	  which is required to validate the PCR 0-7 values.
241da177e4SLinus Torvalds
257126b75cSJan Engelhardtif TCG_TPM
267126b75cSJan Engelhardt
2727084efeSLeendert van Doornconfig TCG_TIS
2827084efeSLeendert van Doorn	tristate "TPM Interface Specification 1.2 Interface"
292f592f2aSRajiv Andrade	depends on X86
3027084efeSLeendert van Doorn	---help---
3127084efeSLeendert van Doorn	  If you have a TPM security chip that is compliant with the
3227084efeSLeendert van Doorn	  TCG TIS 1.2 TPM specification say Yes and it will be accessible
3327084efeSLeendert van Doorn	  from within Linux.  To compile this driver as a module, choose
3427084efeSLeendert van Doorn	  M here; the module will be called tpm_tis.
3527084efeSLeendert van Doorn
36aad628c1SPeter Hueweconfig TCG_TIS_I2C_INFINEON
37aad628c1SPeter Huewe	tristate "TPM Interface Specification 1.2 Interface (I2C - Infineon)"
38aad628c1SPeter Huewe	depends on I2C
39aad628c1SPeter Huewe	---help---
40aad628c1SPeter Huewe	  If you have a TPM security chip that is compliant with the
41aad628c1SPeter Huewe	  TCG TIS 1.2 TPM specification and Infineon's I2C Protocol Stack
42aad628c1SPeter Huewe	  Specification 0.20 say Yes and it will be accessible from within
43aad628c1SPeter Huewe	  Linux.
44aad628c1SPeter Huewe	  To compile this driver as a module, choose M here; the module
45aad628c1SPeter Huewe	  will be called tpm_tis_i2c_infineon.
46aad628c1SPeter Huewe
471da177e4SLinus Torvaldsconfig TCG_NSC
481da177e4SLinus Torvalds	tristate "National Semiconductor TPM Interface"
492f592f2aSRajiv Andrade	depends on X86
501da177e4SLinus Torvalds	---help---
513dde6ad8SDavid Sterba	  If you have a TPM security chip from National Semiconductor
521da177e4SLinus Torvalds	  say Yes and it will be accessible from within Linux.  To
531da177e4SLinus Torvalds	  compile this driver as a module, choose M here; the module
541da177e4SLinus Torvalds	  will be called tpm_nsc.
551da177e4SLinus Torvalds
561da177e4SLinus Torvaldsconfig TCG_ATMEL
571da177e4SLinus Torvalds	tristate "Atmel TPM Interface"
585ce5ed35SGeert Uytterhoeven	depends on PPC64 || HAS_IOPORT
591da177e4SLinus Torvalds	---help---
601da177e4SLinus Torvalds	  If you have a TPM security chip from Atmel say Yes and it
611da177e4SLinus Torvalds	  will be accessible from within Linux.  To compile this driver
621da177e4SLinus Torvalds	  as a module, choose M here; the module will be called tpm_atmel.
631da177e4SLinus Torvalds
64ebb81fdbSMarcel Selhorstconfig TCG_INFINEON
65f9abb020SMarcel Selhorst	tristate "Infineon Technologies TPM Interface"
66cedb27deSBjorn Helgaas	depends on PNP
67ebb81fdbSMarcel Selhorst	---help---
68ebb81fdbSMarcel Selhorst	  If you have a TPM security chip from Infineon Technologies
69f9abb020SMarcel Selhorst	  (either SLD 9630 TT 1.1 or SLB 9635 TT 1.2) say Yes and it
70f9abb020SMarcel Selhorst	  will be accessible from within Linux.
71f9abb020SMarcel Selhorst	  To compile this driver as a module, choose M here; the module
72ebb81fdbSMarcel Selhorst	  will be called tpm_infineon.
73ebb81fdbSMarcel Selhorst	  Further information on this driver and the supported hardware
74631dd1a8SJustin P. Mattock	  can be found at http://www.trust.rub.de/projects/linux-device-driver-infineon-tpm/
75ebb81fdbSMarcel Selhorst
76132f7629SAshley Laiconfig TCG_IBMVTPM
77132f7629SAshley Lai	tristate "IBM VTPM Interface"
78132f7629SAshley Lai	depends on PPC64
79132f7629SAshley Lai	---help---
80132f7629SAshley Lai	  If you have IBM virtual TPM (VTPM) support say Yes and it
81132f7629SAshley Lai	  will be accessible from within Linux.  To compile this driver
82132f7629SAshley Lai	  as a module, choose M here; the module will be called tpm_ibmvtpm.
83132f7629SAshley Lai
84*2bfee22fSMathias Leblancconfig TCG_ST33_I2C
85*2bfee22fSMathias Leblanc        tristate "STMicroelectronics ST33 I2C TPM"
86*2bfee22fSMathias Leblanc        depends on I2C
87*2bfee22fSMathias Leblanc        depends on GPIOLIB
88*2bfee22fSMathias Leblanc        ---help---
89*2bfee22fSMathias Leblanc        If you have a TPM security chip from STMicroelectronics working with
90*2bfee22fSMathias Leblanc        an I2C bus say Yes and it will be accessible from within Linux.
91*2bfee22fSMathias Leblanc        To compile this driver as a module, choose M here; the module will be
92*2bfee22fSMathias Leblanc        called tpm_stm_st33_i2c.
93*2bfee22fSMathias Leblanc
947126b75cSJan Engelhardtendif # TCG_TPM
95