coreboot-kgpe-d16/src/drivers/spi
Vadim Bendebury 9a506d5c9a spi/tpm: Make sure AP properly syncs up with Cr50
When Cr50 TPM is being reset, it continues replying to the SPI bus
requests, sends wrong register values in response to read requests.

This patch makes sure that the TPM driver does not proceed unless
proper value is read from the TPM device identification register.

If the read value is still wrong after 10 retries taken with 10 ms
intervals, the driver gives up and declares TPM broken/unavailable.

BRANCH=cr50
BUG=b:68012381
TEST=ran a script resetting the Fizz device as soon as the "index
     0x1007 return code 0" string shows up in the AP console output.
     The script keeps rebooting the Fizz indefinitely, before this
     script Fizz would fail to read TPM properly and fall into
     recovery after no more than four reboots.

Change-Id: I7e67ec62c2bf31077b9ae558e09214d07eccf96b
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://review.coreboot.org/22231
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2017-11-01 18:02:43 +00:00
..
acpi device: acpi_name() should take a const struct device 2017-09-14 14:34:27 +00:00
tpm spi/tpm: Make sure AP properly syncs up with Cr50 2017-11-01 18:02:43 +00:00
adesto.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
amic.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
atmel.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
boot_device_rw_nommap.c drivers/spi/spi_flash: Pass in flash structure to fill in probe 2017-05-19 21:21:47 +02:00
cbfs_spi.c drivers/spi/spi_flash: Pass in flash structure to fill in probe 2017-05-19 21:21:47 +02:00
eon.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
flashconsole.c console/flashsconsole: Add spi flash console for debugging 2017-06-04 18:44:56 +02:00
gigadevice.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
Kconfig spi: Get rid of SPI_ATOMIC_SEQUENCING 2016-12-23 04:54:55 +01:00
macronix.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
Makefile.inc console/flashconsole: Enable support for postcar 2017-10-16 00:21:49 +00:00
spansion.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
spi-generic.c drivers/spi/spi-generic: Make spi_setup_slave strong symbol 2017-05-24 04:43:46 +02:00
spi_flash.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
spi_flash_internal.h drivers/spi/spi_flash: Pass in spi_slave structure as const to probe functions 2017-05-19 21:22:41 +02:00
spiconsole.c drivers/spi: Re-factor spi_crop_chunk 2017-05-05 23:42:19 +02:00
sst.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
stmicro.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00
winbond.c drivers/spi: add IS_ENABLED() around Kconfig symbol references 2017-07-02 18:56:25 +00:00