1a7d660bcSSimon Glass# 2a7d660bcSSimon Glass# TPM subsystem configuration 3a7d660bcSSimon Glass# 4a7d660bcSSimon Glass 5a7d660bcSSimon Glassmenu "TPM support" 6a7d660bcSSimon Glass 79f9ce3c3SMiquel Raynalcomment "Please select only one TPM revision" 89f9ce3c3SMiquel Raynal depends on TPM_V1 && TPM_V2 99f9ce3c3SMiquel Raynal 109f9ce3c3SMiquel Raynalconfig TPM_V1 119f9ce3c3SMiquel Raynal bool "TPMv1.x support" 129f9ce3c3SMiquel Raynal depends on TPM 139f9ce3c3SMiquel Raynal default y 149f9ce3c3SMiquel Raynal help 159f9ce3c3SMiquel Raynal Major TPM versions are not compatible at all, choose either 169f9ce3c3SMiquel Raynal one or the other. This option enables TPMv1.x drivers/commands. 179f9ce3c3SMiquel Raynal 189f9ce3c3SMiquel Raynalif TPM_V1 && !TPM_V2 199f9ce3c3SMiquel Raynal 20527a0727SSimon Glassconfig TPM_TIS_SANDBOX 21527a0727SSimon Glass bool "Enable sandbox TPM driver" 229f9ce3c3SMiquel Raynal depends on TPM_V1 && SANDBOX 23*a0cf1d0cSMiquel Raynal default y 24527a0727SSimon Glass help 252bae712fSMiquel Raynal This driver emulates a TPMv1.x, providing access to base functions 26527a0727SSimon Glass such as reading and writing TPM private data. This is enough to 27527a0727SSimon Glass support Chrome OS verified boot. Extend functionality is not 28527a0727SSimon Glass implemented. 29a7d660bcSSimon Glass 30a7d660bcSSimon Glassconfig TPM_ATMEL_TWI 31a7d660bcSSimon Glass bool "Enable Atmel TWI TPM device driver" 329f9ce3c3SMiquel Raynal depends on TPM_V1 33a7d660bcSSimon Glass help 34a7d660bcSSimon Glass This driver supports an Atmel TPM device connected on the I2C bus. 35a7d660bcSSimon Glass The usual tpm operations and the 'tpm' command can be used to talk 36a7d660bcSSimon Glass to the device using the standard TPM Interface Specification (TIS) 37a7d660bcSSimon Glass protocol 38a7d660bcSSimon Glass 390766ad2fSChristophe Ricardconfig TPM_TIS_INFINEON 40a7d660bcSSimon Glass bool "Enable support for Infineon SLB9635/45 TPMs on I2C" 419f9ce3c3SMiquel Raynal depends on TPM_V1 && DM_I2C 42a7d660bcSSimon Glass help 43a7d660bcSSimon Glass This driver supports Infineon TPM devices connected on the I2C bus. 44a7d660bcSSimon Glass The usual tpm operations and the 'tpm' command can be used to talk 45a7d660bcSSimon Glass to the device using the standard TPM Interface Specification (TIS) 46a7d660bcSSimon Glass protocol 47a7d660bcSSimon Glass 48a7d660bcSSimon Glassconfig TPM_TIS_I2C_BURST_LIMITATION 49a7d660bcSSimon Glass bool "Enable I2C burst length limitation" 50d677bfe2SMiquel Raynal depends on TPM_TIS_INFINEON 51a7d660bcSSimon Glass help 52a7d660bcSSimon Glass Some broken TPMs have a limitation on the number of bytes they can 53a7d660bcSSimon Glass receive in one message. Enable this option to allow you to set this 54a7d660bcSSimon Glass option. The can allow a broken TPM to be used by splitting messages 55a7d660bcSSimon Glass into separate pieces. 56a7d660bcSSimon Glass 57a7d660bcSSimon Glassconfig TPM_TIS_I2C_BURST_LIMITATION_LEN 58a7d660bcSSimon Glass int "Length" 59a7d660bcSSimon Glass depends on TPM_TIS_I2C_BURST_LIMITATION 60a7d660bcSSimon Glass help 61a7d660bcSSimon Glass Use this to set the burst limitation length 62a7d660bcSSimon Glass 63a7d660bcSSimon Glassconfig TPM_TIS_LPC 64a7d660bcSSimon Glass bool "Enable support for Infineon SLB9635/45 TPMs on LPC" 659f9ce3c3SMiquel Raynal depends on TPM_V1 && X86 66d677bfe2SMiquel Raynal select TPM_DRIVER_SELECTED 67a7d660bcSSimon Glass help 68ca5bc1bcSChristophe Ricard This driver supports Infineon TPM devices connected on the LPC bus. 69a7d660bcSSimon Glass The usual tpm operations and the 'tpm' command can be used to talk 70a7d660bcSSimon Glass to the device using the standard TPM Interface Specification (TIS) 71a7d660bcSSimon Glass protocol 72a7d660bcSSimon Glass 73a7d660bcSSimon Glassconfig TPM_AUTH_SESSIONS 74a7d660bcSSimon Glass bool "Enable TPM authentication session support" 759f9ce3c3SMiquel Raynal depends on TPM_V1 76a7d660bcSSimon Glass help 77a7d660bcSSimon Glass Enable support for authorised (AUTH1) commands as specified in the 78a7d660bcSSimon Glass TCG Main Specification 1.2. OIAP-authorised versions of the commands 79a7d660bcSSimon Glass TPM_LoadKey2 and TPM_GetPubKey are provided. Both features are 80a7d660bcSSimon Glass available using the 'tpm' command, too. 81a7d660bcSSimon Glass 823aa74088SChristophe Ricardconfig TPM_ST33ZP24_I2C 833aa74088SChristophe Ricard bool "STMicroelectronics ST33ZP24 I2C TPM" 849f9ce3c3SMiquel Raynal depends on TPM_V1 && DM_I2C 853aa74088SChristophe Ricard ---help--- 863aa74088SChristophe Ricard This driver supports STMicroelectronics TPM devices connected on the I2C bus. 873aa74088SChristophe Ricard The usual tpm operations and the 'tpm' command can be used to talk 883aa74088SChristophe Ricard to the device using the standard TPM Interface Specification (TIS) 893aa74088SChristophe Ricard protocol 903aa74088SChristophe Ricard 91b75fdc11SChristophe Ricardconfig TPM_ST33ZP24_SPI 92b75fdc11SChristophe Ricard bool "STMicroelectronics ST33ZP24 SPI TPM" 939f9ce3c3SMiquel Raynal depends on TPM_V1 && DM_SPI 94b75fdc11SChristophe Ricard ---help--- 95b75fdc11SChristophe Ricard This driver supports STMicroelectronics TPM devices connected on the SPI bus. 96b75fdc11SChristophe Ricard The usual tpm operations and the 'tpm' command can be used to talk 97b75fdc11SChristophe Ricard to the device using the standard TPM Interface Specification (TIS) 98b75fdc11SChristophe Ricard protocol 99b75fdc11SChristophe Ricard 1007690be35SMario Sixconfig TPM_FLUSH_RESOURCES 1017690be35SMario Six bool "Enable TPM resource flushing support" 1029f9ce3c3SMiquel Raynal depends on TPM_V1 1037690be35SMario Six help 1047690be35SMario Six Enable support to flush specific resources (e.g. keys) from the TPM. 1057690be35SMario Six The functionality is available via the 'tpm' command as well. 1060f4b2ba1Smario.six@gdsys.cc 1070f4b2ba1Smario.six@gdsys.ccconfig TPM_LOAD_KEY_BY_SHA1 1080f4b2ba1Smario.six@gdsys.cc bool "Enable TPM key loading by SHA1 support" 1099f9ce3c3SMiquel Raynal depends on TPM_V1 1100f4b2ba1Smario.six@gdsys.cc help 1110f4b2ba1Smario.six@gdsys.cc Enable support to load keys into the TPM by identifying 1120f4b2ba1Smario.six@gdsys.cc their parent via the public key's SHA1 hash. 1130f4b2ba1Smario.six@gdsys.cc The functionality is available via the 'tpm' command as well. 1143d1df0e3Smario.six@gdsys.cc 1153d1df0e3Smario.six@gdsys.ccconfig TPM_LIST_RESOURCES 1163d1df0e3Smario.six@gdsys.cc bool "Enable TPM resource listing support" 1179f9ce3c3SMiquel Raynal depends on TPM_V1 1183d1df0e3Smario.six@gdsys.cc help 1193d1df0e3Smario.six@gdsys.cc Enable support to list specific resources (e.g. keys) within the TPM. 1203d1df0e3Smario.six@gdsys.cc The functionality is available via the 'tpm' command as well. 1219f9ce3c3SMiquel Raynal 1229f9ce3c3SMiquel Raynalendif # TPM_V1 1239f9ce3c3SMiquel Raynal 1249f9ce3c3SMiquel Raynalconfig TPM_V2 1259f9ce3c3SMiquel Raynal bool "TPMv2.x support" 1269f9ce3c3SMiquel Raynal depends on TPM 1279f9ce3c3SMiquel Raynal help 1289f9ce3c3SMiquel Raynal Major TPM versions are not compatible at all, choose either 1299f9ce3c3SMiquel Raynal one or the other. This option enables TPMv2.x drivers/commands. 1309f9ce3c3SMiquel Raynal 1319f9ce3c3SMiquel Raynalif TPM_V2 && !TPM_V1 1329f9ce3c3SMiquel Raynal 1332bae712fSMiquel Raynalconfig TPM2_TIS_SANDBOX 1342bae712fSMiquel Raynal bool "Enable sandbox TPMv2.x driver" 1352bae712fSMiquel Raynal depends on TPM_V2 && SANDBOX 136*a0cf1d0cSMiquel Raynal default y 1372bae712fSMiquel Raynal select TPM_DRIVER_SELECTED 1382bae712fSMiquel Raynal help 1392bae712fSMiquel Raynal This driver emulates a TPMv2.x, providing access to base functions 1402bae712fSMiquel Raynal such as basic configuration, PCR extension and PCR read. Extended 1412bae712fSMiquel Raynal functionalities are not implemented. 1422bae712fSMiquel Raynal 143eb46910bSMiquel Raynalconfig TPM2_TIS_SPI 144eb46910bSMiquel Raynal bool "Enable support for TPMv2.x SPI chips" 145eb46910bSMiquel Raynal depends on TPM_V2 && DM_SPI 146eb46910bSMiquel Raynal select TPM_DRIVER_SELECTED 147eb46910bSMiquel Raynal help 148eb46910bSMiquel Raynal This driver supports TPMv2.x devices connected on the SPI bus. 149eb46910bSMiquel Raynal The usual TPM operations and the 'tpm' command can be used to talk 150eb46910bSMiquel Raynal to the device using the standard TPM Interface Specification (TIS) 151eb46910bSMiquel Raynal protocol. 152eb46910bSMiquel Raynal 1539f9ce3c3SMiquel Raynalendif # TPM_V2 1549f9ce3c3SMiquel Raynal 155a7d660bcSSimon Glassendmenu 156