#
# TPM device configuration
#

menuconfig TCG_TPM
	tristate "TPM Hardware Support"
	depends on HAS_IOMEM
	select SECURITYFS
	---help---
	  If you have a TPM security chip in your system, which
	  implements the Trusted Computing Group's specification,
	  say Yes and it will be accessible from within Linux.  For
	  more information see <http://www.trustedcomputinggroup.org>. 
	  An implementation of the Trusted Software Stack (TSS), the 
	  userspace enablement piece of the specification, can be 
	  obtained at: <http://sourceforge.net/projects/trousers>.  To 
	  compile this driver as a module, choose M here; the module 
	  will be called tpm. If unsure, say N.
	  Notes:
	  1) For more TPM drivers enable CONFIG_PNP, CONFIG_ACPI
	  and CONFIG_PNPACPI.
	  2) Without ACPI enabled, the BIOS event log won't be accessible,
	  which is required to validate the PCR 0-7 values.

if TCG_TPM

config TCG_TIS
	tristate "TPM Interface Specification 1.2 Interface"
	depends on X86
	---help---
	  If you have a TPM security chip that is compliant with the
	  TCG TIS 1.2 TPM specification 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_tis.

config TCG_TIS_I2C_INFINEON
	tristate "TPM Interface Specification 1.2 Interface (I2C - Infineon)"
	depends on I2C
	---help---
	  If you have a TPM security chip that is compliant with the
	  TCG TIS 1.2 TPM specification and Infineon's I2C Protocol Stack
	  Specification 0.20 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_tis_i2c_infineon.

config TCG_NSC
	tristate "National Semiconductor TPM Interface"
	depends on X86
	---help---
	  If you have a TPM security chip from National Semiconductor 
	  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_nsc.

config TCG_ATMEL
	tristate "Atmel TPM Interface"
	depends on PPC64 || HAS_IOPORT
	---help---
	  If you have a TPM security chip from Atmel 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_atmel.

config TCG_INFINEON
	tristate "Infineon Technologies TPM Interface"
	depends on PNP
	---help---
	  If you have a TPM security chip from Infineon Technologies
	  (either SLD 9630 TT 1.1 or SLB 9635 TT 1.2) 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_infineon.
	  Further information on this driver and the supported hardware
	  can be found at http://www.trust.rub.de/projects/linux-device-driver-infineon-tpm/ 

config TCG_IBMVTPM
	tristate "IBM VTPM Interface"
	depends on PPC_PSERIES
	---help---
	  If you have IBM virtual TPM (VTPM) support 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_ibmvtpm.

config TCG_ST33_I2C
        tristate "STMicroelectronics ST33 I2C TPM"
        depends on I2C
        depends on GPIOLIB
        ---help---
        If you have a TPM security chip from STMicroelectronics working with
        an I2C bus 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_stm_st33_i2c.

config TCG_XEN
	tristate "XEN TPM Interface"
	depends on TCG_TPM && XEN
	select XEN_XENBUS_FRONTEND
	---help---
	  If you want to make TPM support available to a Xen user domain,
	  say Yes and it will be accessible from within Linux. See
	  the manpages for xl, xl.conf, and docs/misc/vtpm.txt in
	  the Xen source repository for more details.
	  To compile this driver as a module, choose M here; the module
	  will be called xen-tpmfront.

endif # TCG_TPM
