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