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