]> Git Repo - linux.git/blame - drivers/char/tpm/Kconfig
Merge branch 'work.thaw' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux.git] / drivers / char / tpm / Kconfig
CommitLineData
1da177e4
LT
1#
2# TPM device configuration
3#
4
7126b75c 5menuconfig TCG_TPM
1da177e4 6 tristate "TPM Hardware Support"
7126b75c 7 depends on HAS_IOMEM
da31894e 8 select SECURITYFS
4bf4b4ed 9 select CRYPTO
c1f92b4b 10 select CRYPTO_HASH_INFO
1da177e4
LT
11 ---help---
12 If you have a TPM security chip in your system, which
13 implements the Trusted Computing Group's specification,
14 say Yes and it will be accessible from within Linux. For
15 more information see <http://www.trustedcomputinggroup.org>.
16 An implementation of the Trusted Software Stack (TSS), the
17 userspace enablement piece of the specification, can be
18 obtained at: <http://sourceforge.net/projects/trousers>. To
19 compile this driver as a module, choose M here; the module
20 will be called tpm. If unsure, say N.
7f2ab000
RA
21 Notes:
22 1) For more TPM drivers enable CONFIG_PNP, CONFIG_ACPI
ec4a162a 23 and CONFIG_PNPACPI.
7f2ab000
RA
24 2) Without ACPI enabled, the BIOS event log won't be accessible,
25 which is required to validate the PCR 0-7 values.
1da177e4 26
7126b75c
JE
27if TCG_TPM
28
6e592a06
JG
29config HW_RANDOM_TPM
30 bool "TPM HW Random Number Generator support"
31 depends on TCG_TPM && HW_RANDOM && !(TCG_TPM=y && HW_RANDOM=m)
32 default y
33 ---help---
34 This setting exposes the TPM's Random Number Generator as a hwrng
35 device. This allows the kernel to collect randomness from the TPM at
36 boot, and provides the TPM randomines in /dev/hwrng.
37
38 If unsure, say Y.
39
41a5e1cf
CR
40config TCG_TIS_CORE
41 tristate
42 ---help---
43 TCG TIS TPM core driver. It implements the TPM TCG TIS logic and hooks
44 into the TPM kernel APIs. Physical layers will register against it.
45
27084efe 46config TCG_TIS
44506436 47 tristate "TPM Interface Specification 1.2 Interface / TPM 2.0 FIFO Interface"
420d4398 48 depends on X86 || OF
41a5e1cf 49 select TCG_TIS_CORE
27084efe
LD
50 ---help---
51 If you have a TPM security chip that is compliant with the
44506436
PH
52 TCG TIS 1.2 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.
27084efe 56
0edbfea5
CR
57config TCG_TIS_SPI
58 tristate "TPM Interface Specification 1.3 Interface / TPM 2.0 FIFO Interface - (SPI)"
59 depends on SPI
60 select TCG_TIS_CORE
61 ---help---
62 If you have a TPM security chip which is connected to a regular,
63 non-tcg SPI master (i.e. most embedded platforms) that is compliant with the
64 TCG TIS 1.3 TPM specification (TPM1.2) or the TCG PTP FIFO
65 specification (TPM2.0) say Yes and it will be accessible from
66 within Linux. To compile this driver as a module, choose M here;
67 the module will be called tpm_tis_spi.
68
a2871c62
JG
69config TCG_TIS_I2C_ATMEL
70 tristate "TPM Interface Specification 1.2 Interface (I2C - Atmel)"
71 depends on I2C
72 ---help---
73 If you have an Atmel I2C TPM security chip say Yes and it will be
74 accessible from within Linux.
75 To compile this driver as a module, choose M here; the module will
76 be called tpm_tis_i2c_atmel.
77
aad628c1
PH
78config TCG_TIS_I2C_INFINEON
79 tristate "TPM Interface Specification 1.2 Interface (I2C - Infineon)"
80 depends on I2C
81 ---help---
82 If you have a TPM security chip that is compliant with the
83 TCG TIS 1.2 TPM specification and Infineon's I2C Protocol Stack
84 Specification 0.20 say Yes and it will be accessible from within
85 Linux.
86 To compile this driver as a module, choose M here; the module
b3f2436a 87 will be called tpm_i2c_infineon.
aad628c1 88
4c336e4b
JG
89config TCG_TIS_I2C_NUVOTON
90 tristate "TPM Interface Specification 1.2 Interface (I2C - Nuvoton)"
91 depends on I2C
92 ---help---
93 If you have a TPM security chip with an I2C interface from
94 Nuvoton Technology Corp. say Yes and it will be accessible
95 from within Linux.
96 To compile this driver as a module, choose M here; the module
97 will be called tpm_i2c_nuvoton.
98
1da177e4
LT
99config TCG_NSC
100 tristate "National Semiconductor TPM Interface"
2f592f2a 101 depends on X86
1da177e4 102 ---help---
3dde6ad8 103 If you have a TPM security chip from National Semiconductor
1da177e4
LT
104 say Yes and it will be accessible from within Linux. To
105 compile this driver as a module, choose M here; the module
106 will be called tpm_nsc.
107
108config TCG_ATMEL
109 tristate "Atmel TPM Interface"
ce816fa8 110 depends on PPC64 || HAS_IOPORT_MAP
1da177e4
LT
111 ---help---
112 If you have a TPM security chip from Atmel say Yes and it
113 will be accessible from within Linux. To compile this driver
114 as a module, choose M here; the module will be called tpm_atmel.
115
ebb81fdb 116config TCG_INFINEON
f9abb020 117 tristate "Infineon Technologies TPM Interface"
cedb27de 118 depends on PNP
ebb81fdb
MS
119 ---help---
120 If you have a TPM security chip from Infineon Technologies
f9abb020
MS
121 (either SLD 9630 TT 1.1 or SLB 9635 TT 1.2) say Yes and it
122 will be accessible from within Linux.
123 To compile this driver as a module, choose M here; the module
ebb81fdb
MS
124 will be called tpm_infineon.
125 Further information on this driver and the supported hardware
631dd1a8 126 can be found at http://www.trust.rub.de/projects/linux-device-driver-infineon-tpm/
ebb81fdb 127
132f7629
AL
128config TCG_IBMVTPM
129 tristate "IBM VTPM Interface"
5b266032 130 depends on PPC_PSERIES
132f7629
AL
131 ---help---
132 If you have IBM virtual TPM (VTPM) support say Yes and it
133 will be accessible from within Linux. To compile this driver
134 as a module, choose M here; the module will be called tpm_ibmvtpm.
135
e2683957
DDG
136config TCG_XEN
137 tristate "XEN TPM Interface"
138 depends on TCG_TPM && XEN
713efcab 139 select XEN_XENBUS_FRONTEND
e2683957
DDG
140 ---help---
141 If you want to make TPM support available to a Xen user domain,
142 say Yes and it will be accessible from within Linux. See
143 the manpages for xl, xl.conf, and docs/misc/vtpm.txt in
144 the Xen source repository for more details.
145 To compile this driver as a module, choose M here; the module
146 will be called xen-tpmfront.
147
30fc8d13
JS
148config TCG_CRB
149 tristate "TPM 2.0 CRB Interface"
08eff49d 150 depends on ACPI
30fc8d13
JS
151 ---help---
152 If you have a TPM security chip that is compliant with the
153 TCG CRB 2.0 TPM specification say Yes and it will be accessible
154 from within Linux. To compile this driver as a module, choose
155 M here; the module will be called tpm_crb.
156
6f99612e
SB
157config TCG_VTPM_PROXY
158 tristate "VTPM Proxy Interface"
159 depends on TCG_TPM
a6885a53 160 select ANON_INODES
6f99612e
SB
161 ---help---
162 This driver proxies for an emulated TPM (vTPM) running in userspace.
163 A device /dev/vtpmx is provided that creates a device pair
164 /dev/vtpmX and a server-side file descriptor on which the vTPM
165 can receive commands.
166
167
bf38b871 168source "drivers/char/tpm/st33zp24/Kconfig"
7126b75c 169endif # TCG_TPM
This page took 0.846955 seconds and 4 git commands to generate.