xref: /openbmc/u-boot/drivers/tpm/Kconfig (revision fea7f3aa)
1#
2# TPM subsystem configuration
3#
4
5menu "TPM support"
6
7config DM_TPM
8	bool "Enable driver model for Trusted Platform Module drivers"
9	depends on DM && TPM
10	help
11          Enable driver model for TPMs. The TIS interface (tis_open(),
12	  tis_sendrecv(), etc.) is then implemented by the TPM uclass. Note
13	  that even with driver model only a single TPM is currently
14	  supported, since the tpm library assumes this.
15
16config TPM_TIS_SANDBOX
17	bool "Enable sandbox TPM driver"
18	depends on SANDBOX
19	help
20	  This driver emulates a TPM, providing access to base functions
21	  such as reading and writing TPM private data. This is enough to
22	  support Chrome OS verified boot. Extend functionality is not
23	  implemented.
24
25config TPM_ATMEL_TWI
26	bool "Enable Atmel TWI TPM device driver"
27	depends on TPM
28	help
29	  This driver supports an Atmel TPM device connected on the I2C bus.
30	  The usual tpm operations and the 'tpm' command can be used to talk
31	  to the device using the standard TPM Interface Specification (TIS)
32	  protocol
33
34config TPM_TIS_I2C
35	bool "Enable support for Infineon SLB9635/45 TPMs on I2C"
36	depends on TPM && DM_I2C
37	help
38	  This driver supports Infineon TPM devices connected on the I2C bus.
39	  The usual tpm operations and the 'tpm' command can be used to talk
40	  to the device using the standard TPM Interface Specification (TIS)
41	  protocol
42
43config TPM_TIS_I2C_BURST_LIMITATION
44	bool "Enable I2C burst length limitation"
45	depends on TPM_TIS_I2C
46	help
47	  Some broken TPMs have a limitation on the number of bytes they can
48	  receive in one message. Enable this option to allow you to set this
49	  option. The can allow a broken TPM to be used by splitting messages
50	  into separate pieces.
51
52config TPM_TIS_I2C_BURST_LIMITATION_LEN
53	int "Length"
54	depends on TPM_TIS_I2C_BURST_LIMITATION
55	help
56	  Use this to set the burst limitation length
57
58config TPM_TIS_LPC
59	bool "Enable support for Infineon SLB9635/45 TPMs on LPC"
60	depends on TPM && X86
61	help
62	  This driver supports Infineon TPM devices connected on the I2C bus.
63	  The usual tpm operations and the 'tpm' command can be used to talk
64	  to the device using the standard TPM Interface Specification (TIS)
65	  protocol
66
67config TPM_AUTH_SESSIONS
68	bool "Enable TPM authentication session support"
69	depends on TPM
70	help
71	  Enable support for authorised (AUTH1) commands as specified in the
72	  TCG Main Specification 1.2. OIAP-authorised versions of the commands
73	  TPM_LoadKey2 and TPM_GetPubKey are provided. Both features are
74	  available using the 'tpm' command, too.
75
76endmenu
77