xref: /linux/drivers/char/tpm/Kconfig (revision ce816fa88cca083c47ab9000b2138a83043a78be)
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
36a2871c62SJason Gunthorpeconfig TCG_TIS_I2C_ATMEL
37a2871c62SJason Gunthorpe	tristate "TPM Interface Specification 1.2 Interface (I2C - Atmel)"
38a2871c62SJason Gunthorpe	depends on I2C
39a2871c62SJason Gunthorpe	---help---
40a2871c62SJason Gunthorpe	  If you have an Atmel I2C TPM security chip say Yes and it will be
41a2871c62SJason Gunthorpe	  accessible from within Linux.
42a2871c62SJason Gunthorpe	  To compile this driver as a module, choose M here; the module will
43a2871c62SJason Gunthorpe	  be called tpm_tis_i2c_atmel.
44a2871c62SJason Gunthorpe
45aad628c1SPeter Hueweconfig TCG_TIS_I2C_INFINEON
46aad628c1SPeter Huewe	tristate "TPM Interface Specification 1.2 Interface (I2C - Infineon)"
47aad628c1SPeter Huewe	depends on I2C
48aad628c1SPeter Huewe	---help---
49aad628c1SPeter Huewe	  If you have a TPM security chip that is compliant with the
50aad628c1SPeter Huewe	  TCG TIS 1.2 TPM specification and Infineon's I2C Protocol Stack
51aad628c1SPeter Huewe	  Specification 0.20 say Yes and it will be accessible from within
52aad628c1SPeter Huewe	  Linux.
53aad628c1SPeter Huewe	  To compile this driver as a module, choose M here; the module
54b3f2436aSPeter Huewe	  will be called tpm_i2c_infineon.
55aad628c1SPeter Huewe
564c336e4bSJason Gunthorpeconfig TCG_TIS_I2C_NUVOTON
574c336e4bSJason Gunthorpe	tristate "TPM Interface Specification 1.2 Interface (I2C - Nuvoton)"
584c336e4bSJason Gunthorpe	depends on I2C
594c336e4bSJason Gunthorpe	---help---
604c336e4bSJason Gunthorpe	  If you have a TPM security chip with an I2C interface from
614c336e4bSJason Gunthorpe	  Nuvoton Technology Corp. say Yes and it will be accessible
624c336e4bSJason Gunthorpe	  from within Linux.
634c336e4bSJason Gunthorpe	  To compile this driver as a module, choose M here; the module
644c336e4bSJason Gunthorpe	  will be called tpm_i2c_nuvoton.
654c336e4bSJason Gunthorpe
661da177e4SLinus Torvaldsconfig TCG_NSC
671da177e4SLinus Torvalds	tristate "National Semiconductor TPM Interface"
682f592f2aSRajiv Andrade	depends on X86
691da177e4SLinus Torvalds	---help---
703dde6ad8SDavid Sterba	  If you have a TPM security chip from National Semiconductor
711da177e4SLinus Torvalds	  say Yes and it will be accessible from within Linux.  To
721da177e4SLinus Torvalds	  compile this driver as a module, choose M here; the module
731da177e4SLinus Torvalds	  will be called tpm_nsc.
741da177e4SLinus Torvalds
751da177e4SLinus Torvaldsconfig TCG_ATMEL
761da177e4SLinus Torvalds	tristate "Atmel TPM Interface"
77*ce816fa8SUwe Kleine-König	depends on PPC64 || HAS_IOPORT_MAP
781da177e4SLinus Torvalds	---help---
791da177e4SLinus Torvalds	  If you have a TPM security chip from Atmel say Yes and it
801da177e4SLinus Torvalds	  will be accessible from within Linux.  To compile this driver
811da177e4SLinus Torvalds	  as a module, choose M here; the module will be called tpm_atmel.
821da177e4SLinus Torvalds
83ebb81fdbSMarcel Selhorstconfig TCG_INFINEON
84f9abb020SMarcel Selhorst	tristate "Infineon Technologies TPM Interface"
85cedb27deSBjorn Helgaas	depends on PNP
86ebb81fdbSMarcel Selhorst	---help---
87ebb81fdbSMarcel Selhorst	  If you have a TPM security chip from Infineon Technologies
88f9abb020SMarcel Selhorst	  (either SLD 9630 TT 1.1 or SLB 9635 TT 1.2) say Yes and it
89f9abb020SMarcel Selhorst	  will be accessible from within Linux.
90f9abb020SMarcel Selhorst	  To compile this driver as a module, choose M here; the module
91ebb81fdbSMarcel Selhorst	  will be called tpm_infineon.
92ebb81fdbSMarcel Selhorst	  Further information on this driver and the supported hardware
93631dd1a8SJustin P. Mattock	  can be found at http://www.trust.rub.de/projects/linux-device-driver-infineon-tpm/
94ebb81fdbSMarcel Selhorst
95132f7629SAshley Laiconfig TCG_IBMVTPM
96132f7629SAshley Lai	tristate "IBM VTPM Interface"
975b266032SKent Yoder	depends on PPC_PSERIES
98132f7629SAshley Lai	---help---
99132f7629SAshley Lai	  If you have IBM virtual TPM (VTPM) support say Yes and it
100132f7629SAshley Lai	  will be accessible from within Linux.  To compile this driver
101132f7629SAshley Lai	  as a module, choose M here; the module will be called tpm_ibmvtpm.
102132f7629SAshley Lai
1032bfee22fSMathias Leblancconfig TCG_ST33_I2C
1042bfee22fSMathias Leblanc	tristate "STMicroelectronics ST33 I2C TPM"
1052bfee22fSMathias Leblanc	depends on I2C
1062bfee22fSMathias Leblanc	depends on GPIOLIB
1072bfee22fSMathias Leblanc	---help---
1082bfee22fSMathias Leblanc	  If you have a TPM security chip from STMicroelectronics working with
1092bfee22fSMathias Leblanc	  an I2C bus say Yes and it will be accessible from within Linux.
1102bfee22fSMathias Leblanc	  To compile this driver as a module, choose M here; the module will be
1112bfee22fSMathias Leblanc	  called tpm_stm_st33_i2c.
1122bfee22fSMathias Leblanc
113e2683957SDaniel De Graafconfig TCG_XEN
114e2683957SDaniel De Graaf	tristate "XEN TPM Interface"
115e2683957SDaniel De Graaf	depends on TCG_TPM && XEN
116713efcabSKonrad Rzeszutek Wilk	select XEN_XENBUS_FRONTEND
117e2683957SDaniel De Graaf	---help---
118e2683957SDaniel De Graaf	  If you want to make TPM support available to a Xen user domain,
119e2683957SDaniel De Graaf	  say Yes and it will be accessible from within Linux. See
120e2683957SDaniel De Graaf	  the manpages for xl, xl.conf, and docs/misc/vtpm.txt in
121e2683957SDaniel De Graaf	  the Xen source repository for more details.
122e2683957SDaniel De Graaf	  To compile this driver as a module, choose M here; the module
123e2683957SDaniel De Graaf	  will be called xen-tpmfront.
124e2683957SDaniel De Graaf
1257126b75cSJan Engelhardtendif # TCG_TPM
126