Kconfig 5.7 KB

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