Files
system76-coreboot/src/drivers/pc80/tpm/Kconfig
Bill XIE a4bf0b7cd1 drivers/pc80/tpm: Add some optional delay to tis_readresponse()
Certain TPMs (observed on Infineon SLB9635 installed on revolve 810 g1)
seem to need some delay between tis_wait_valid() and
tis_has_valid_data(), or tis_has_valid_data() may invalidly return 0,
ending the loop immaturely with some bytes left unread, and fail to
pass the check below, causing the current command not finalized by
tis_command_ready(), and blocking any later tis_wait_ready().

This time the added delay is controlled by a Kconfig option
TPM_RDRESP_NEED_DELAY.

Change-Id: Ic2a2f252e72a0bbce51e2863f8e46647b1570ba5
Signed-off-by: Bill XIE <persmule@gmail.com>
Reviewed-on: https://review.coreboot.org/25322
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2018-04-16 15:47:53 +00:00

58 lines
1.4 KiB
Plaintext

config LPC_TPM
bool "Enable TPM support"
depends on MAINBOARD_HAS_LPC_TPM
default n
help
Enable this option to enable LPC TPM support in coreboot.
If unsure, say N.
config TPM_TIS_BASE_ADDRESS
hex
default 0xfed40000
depends on LPC_TPM
help
This can be used to adjust the TPM memory base address.
The default is specified by the TCG PC Client Specific TPM
Interface Specification 1.2 and should not be changed unless
the TPM being used does not conform to TPM TIS 1.2.
config TPM_PIRQ
hex
default 0x0
depends on LPC_TPM
help
This can be used to specify a PIRQ to use instead of SERIRQ,
which is needed for SPI TPM interrupt support on x86.
config TPM_INIT_FAILURE_IS_FATAL
bool
default n
depends on LPC_TPM
help
What to do if TPM init failed. If true, force a hard reset,
otherwise just log error message to console.
config SKIP_TPM_STARTUP_ON_NORMAL_BOOT
bool
default n
depends on LPC_TPM
help
Skip TPM init on normal boot. Useful if payload does TPM init.
config TPM_DEACTIVATE
bool "Deactivate TPM"
default n
depends on LPC_TPM
help
Deactivate TPM by issuing deactivate command.
config TPM_RDRESP_NEED_DELAY
bool "Enable Delay Workaround for TPM"
default n
depends on LPC_TPM
help
Certain TPMs seem to need some delay when reading response
to work around a race-condition-related issue, possibly
caused by ill-programmed TPM firmware.