Kconfig 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. #
  2. # TPM device configuration
  3. #
  4. menuconfig TCG_TPM
  5. tristate "TPM Hardware Support"
  6. depends on HAS_IOMEM
  7. select SECURITYFS
  8. ---help---
  9. If you have a TPM security chip in your system, which
  10. implements the Trusted Computing Group's specification,
  11. say Yes and it will be accessible from within Linux. For
  12. more information see <http://www.trustedcomputinggroup.org>.
  13. An implementation of the Trusted Software Stack (TSS), the
  14. userspace enablement piece of the specification, can be
  15. obtained at: <http://sourceforge.net/projects/trousers>. To
  16. compile this driver as a module, choose M here; the module
  17. will be called tpm. If unsure, say N.
  18. Notes:
  19. 1) For more TPM drivers enable CONFIG_PNP, CONFIG_ACPI
  20. and CONFIG_PNPACPI.
  21. 2) Without ACPI enabled, the BIOS event log won't be accessible,
  22. which is required to validate the PCR 0-7 values.
  23. if TCG_TPM
  24. config TCG_TIS_CORE
  25. tristate
  26. ---help---
  27. TCG TIS TPM core driver. It implements the TPM TCG TIS logic and hooks
  28. into the TPM kernel APIs. Physical layers will register against it.
  29. config TCG_TIS
  30. tristate "TPM Interface Specification 1.2 Interface / TPM 2.0 FIFO Interface"
  31. depends on X86
  32. select TCG_TIS_CORE
  33. ---help---
  34. If you have a TPM security chip that is compliant with the
  35. TCG TIS 1.2 TPM specification (TPM1.2) or the TCG PTP FIFO
  36. specification (TPM2.0) say Yes and it will be accessible from
  37. within Linux. To compile this driver as a module, choose M here;
  38. the module will be called tpm_tis.
  39. config TCG_TIS_SPI
  40. tristate "TPM Interface Specification 1.3 Interface / TPM 2.0 FIFO Interface - (SPI)"
  41. depends on SPI
  42. select TCG_TIS_CORE
  43. ---help---
  44. If you have a TPM security chip which is connected to a regular,
  45. non-tcg SPI master (i.e. most embedded platforms) that is compliant with the
  46. TCG TIS 1.3 TPM specification (TPM1.2) or the TCG PTP FIFO
  47. specification (TPM2.0) say Yes and it will be accessible from
  48. within Linux. To compile this driver as a module, choose M here;
  49. the module will be called tpm_tis_spi.
  50. config TCG_TIS_I2C_ATMEL
  51. tristate "TPM Interface Specification 1.2 Interface (I2C - Atmel)"
  52. depends on I2C
  53. ---help---
  54. If you have an Atmel I2C TPM security chip say Yes and it will be
  55. accessible from within Linux.
  56. To compile this driver as a module, choose M here; the module will
  57. be called tpm_tis_i2c_atmel.
  58. config TCG_TIS_I2C_INFINEON
  59. tristate "TPM Interface Specification 1.2 Interface (I2C - Infineon)"
  60. depends on I2C
  61. ---help---
  62. If you have a TPM security chip that is compliant with the
  63. TCG TIS 1.2 TPM specification and Infineon's I2C Protocol Stack
  64. Specification 0.20 say Yes and it will be accessible from within
  65. Linux.
  66. To compile this driver as a module, choose M here; the module
  67. will be called tpm_i2c_infineon.
  68. config TCG_TIS_I2C_NUVOTON
  69. tristate "TPM Interface Specification 1.2 Interface (I2C - Nuvoton)"
  70. depends on I2C
  71. ---help---
  72. If you have a TPM security chip with an I2C interface from
  73. Nuvoton Technology Corp. say Yes and it will be accessible
  74. from within Linux.
  75. To compile this driver as a module, choose M here; the module
  76. will be called tpm_i2c_nuvoton.
  77. config TCG_NSC
  78. tristate "National Semiconductor TPM Interface"
  79. depends on X86
  80. ---help---
  81. If you have a TPM security chip from National Semiconductor
  82. say Yes and it will be accessible from within Linux. To
  83. compile this driver as a module, choose M here; the module
  84. will be called tpm_nsc.
  85. config TCG_ATMEL
  86. tristate "Atmel TPM Interface"
  87. depends on PPC64 || HAS_IOPORT_MAP
  88. ---help---
  89. If you have a TPM security chip from Atmel say Yes and it
  90. will be accessible from within Linux. To compile this driver
  91. as a module, choose M here; the module will be called tpm_atmel.
  92. config TCG_INFINEON
  93. tristate "Infineon Technologies TPM Interface"
  94. depends on PNP
  95. ---help---
  96. If you have a TPM security chip from Infineon Technologies
  97. (either SLD 9630 TT 1.1 or SLB 9635 TT 1.2) say Yes and it
  98. will be accessible from within Linux.
  99. To compile this driver as a module, choose M here; the module
  100. will be called tpm_infineon.
  101. Further information on this driver and the supported hardware
  102. can be found at http://www.trust.rub.de/projects/linux-device-driver-infineon-tpm/
  103. config TCG_IBMVTPM
  104. tristate "IBM VTPM Interface"
  105. depends on PPC_PSERIES
  106. ---help---
  107. If you have IBM virtual TPM (VTPM) support say Yes and it
  108. will be accessible from within Linux. To compile this driver
  109. as a module, choose M here; the module will be called tpm_ibmvtpm.
  110. config TCG_XEN
  111. tristate "XEN TPM Interface"
  112. depends on TCG_TPM && XEN
  113. select XEN_XENBUS_FRONTEND
  114. ---help---
  115. If you want to make TPM support available to a Xen user domain,
  116. say Yes and it will be accessible from within Linux. See
  117. the manpages for xl, xl.conf, and docs/misc/vtpm.txt in
  118. the Xen source repository for more details.
  119. To compile this driver as a module, choose M here; the module
  120. will be called xen-tpmfront.
  121. config TCG_CRB
  122. tristate "TPM 2.0 CRB Interface"
  123. depends on X86 && ACPI
  124. ---help---
  125. If you have a TPM security chip that is compliant with the
  126. TCG CRB 2.0 TPM specification say Yes and it will be accessible
  127. from within Linux. To compile this driver as a module, choose
  128. M here; the module will be called tpm_crb.
  129. config TCG_VTPM_PROXY
  130. tristate "VTPM Proxy Interface"
  131. depends on TCG_TPM
  132. select ANON_INODES
  133. ---help---
  134. This driver proxies for an emulated TPM (vTPM) running in userspace.
  135. A device /dev/vtpmx is provided that creates a device pair
  136. /dev/vtpmX and a server-side file descriptor on which the vTPM
  137. can receive commands.
  138. source "drivers/char/tpm/st33zp24/Kconfig"
  139. endif # TCG_TPM