xref: /openbmc/u-boot/drivers/tpm/Kconfig (revision a7d660bc4982fea59d14d30eb79e77499d1074ef)
1*a7d660bcSSimon Glass#
2*a7d660bcSSimon Glass# TPM subsystem configuration
3*a7d660bcSSimon Glass#
4*a7d660bcSSimon Glass
5*a7d660bcSSimon Glassmenu "TPM support"
6*a7d660bcSSimon Glass
7527a0727SSimon Glassconfig TPM_TIS_SANDBOX
8527a0727SSimon Glass	bool "Enable sandbox TPM driver"
9*a7d660bcSSimon Glass	depends on SANDBOX
10527a0727SSimon Glass	help
11527a0727SSimon Glass	  This driver emulates a TPM, providing access to base functions
12527a0727SSimon Glass	  such as reading and writing TPM private data. This is enough to
13527a0727SSimon Glass	  support Chrome OS verified boot. Extend functionality is not
14527a0727SSimon Glass	  implemented.
15*a7d660bcSSimon Glass
16*a7d660bcSSimon Glassconfig TPM_ATMEL_TWI
17*a7d660bcSSimon Glass	bool "Enable Atmel TWI TPM device driver"
18*a7d660bcSSimon Glass	depends on TPM
19*a7d660bcSSimon Glass	help
20*a7d660bcSSimon Glass	  This driver supports an Atmel TPM device connected on the I2C bus.
21*a7d660bcSSimon Glass	  The usual tpm operations and the 'tpm' command can be used to talk
22*a7d660bcSSimon Glass	  to the device using the standard TPM Interface Specification (TIS)
23*a7d660bcSSimon Glass	  protocol
24*a7d660bcSSimon Glass
25*a7d660bcSSimon Glassconfig TPM_TIS_I2C
26*a7d660bcSSimon Glass	bool "Enable support for Infineon SLB9635/45 TPMs on I2C"
27*a7d660bcSSimon Glass	depends on TPM && DM_I2C
28*a7d660bcSSimon Glass	help
29*a7d660bcSSimon Glass	  This driver supports Infineon TPM devices connected on the I2C bus.
30*a7d660bcSSimon Glass	  The usual tpm operations and the 'tpm' command can be used to talk
31*a7d660bcSSimon Glass	  to the device using the standard TPM Interface Specification (TIS)
32*a7d660bcSSimon Glass	  protocol
33*a7d660bcSSimon Glass
34*a7d660bcSSimon Glassconfig TPM_TIS_I2C_BURST_LIMITATION
35*a7d660bcSSimon Glass	bool "Enable I2C burst length limitation"
36*a7d660bcSSimon Glass	depends on TPM_TIS_I2C
37*a7d660bcSSimon Glass	help
38*a7d660bcSSimon Glass	  Some broken TPMs have a limitation on the number of bytes they can
39*a7d660bcSSimon Glass	  receive in one message. Enable this option to allow you to set this
40*a7d660bcSSimon Glass	  option. The can allow a broken TPM to be used by splitting messages
41*a7d660bcSSimon Glass	  into separate pieces.
42*a7d660bcSSimon Glass
43*a7d660bcSSimon Glassconfig TPM_TIS_I2C_BURST_LIMITATION_LEN
44*a7d660bcSSimon Glass	int "Length"
45*a7d660bcSSimon Glass	depends on TPM_TIS_I2C_BURST_LIMITATION
46*a7d660bcSSimon Glass	help
47*a7d660bcSSimon Glass	  Use this to set the burst limitation length
48*a7d660bcSSimon Glass
49*a7d660bcSSimon Glassconfig TPM_TIS_LPC
50*a7d660bcSSimon Glass	bool "Enable support for Infineon SLB9635/45 TPMs on LPC"
51*a7d660bcSSimon Glass	depends on TPM && X86
52*a7d660bcSSimon Glass	help
53*a7d660bcSSimon Glass	  This driver supports Infineon TPM devices connected on the I2C bus.
54*a7d660bcSSimon Glass	  The usual tpm operations and the 'tpm' command can be used to talk
55*a7d660bcSSimon Glass	  to the device using the standard TPM Interface Specification (TIS)
56*a7d660bcSSimon Glass	  protocol
57*a7d660bcSSimon Glass
58*a7d660bcSSimon Glassconfig TPM_AUTH_SESSIONS
59*a7d660bcSSimon Glass	bool "Enable TPM authentication session support"
60*a7d660bcSSimon Glass	depends on TPM
61*a7d660bcSSimon Glass	help
62*a7d660bcSSimon Glass	  Enable support for authorised (AUTH1) commands as specified in the
63*a7d660bcSSimon Glass	  TCG Main Specification 1.2. OIAP-authorised versions of the commands
64*a7d660bcSSimon Glass	  TPM_LoadKey2 and TPM_GetPubKey are provided. Both features are
65*a7d660bcSSimon Glass	  available using the 'tpm' command, too.
66*a7d660bcSSimon Glass
67*a7d660bcSSimon Glassendmenu
68