diff options
author | Tim Wawrzynczak <twawrzynczak@chromium.org> | 2022-02-14 16:04:21 -0700 |
---|---|---|
committer | Tim Wawrzynczak <twawrzynczak@chromium.org> | 2022-03-07 18:06:24 +0000 |
commit | 6b8599f29a888c0946ff44e97c32ecd4cec2a151 (patch) | |
tree | ca38ae8682e63f5abc66e9475798b5614a05c0fe /src/security/tpm | |
parent | f019d986b154cb95db541be9c71eafde51ec9294 (diff) |
drivers/tpm/spi: Refactor out some cr50-specific logic
Mainboards accessing the cr50 over an I2C bus may want to reuse some of
the same firmware version and BOARD_CFG logic, therefore refactor this
logic out into a bus-agnostic file, drivers/tpm/cr50.c. This file uses
the new tis_vendor_read/write() functions in order to access the cr50
regardless of the bus which is physically used. In order to leave SPI
devices intact, the tis_vendor_* functions are added to the SPI driver.
BUG=b:202246591
TEST=boot to OS on google/dratini, see the same FW version and board_cfg
console prints as before the change.
Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Change-Id: Ie68618cbe026a2b9221f93d0fe41d0b2054e8091
Reviewed-on: https://review.coreboot.org/c/coreboot/+/61977
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Diffstat (limited to 'src/security/tpm')
-rw-r--r-- | src/security/tpm/tis.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/security/tpm/tis.h b/src/security/tpm/tis.h index 3b65134d27..0ef5a8a090 100644 --- a/src/security/tpm/tis.h +++ b/src/security/tpm/tis.h @@ -111,5 +111,9 @@ cb_err_t tis_vendor_write(unsigned int addr, const void *sendbuf, size_t send_si */ cb_err_t tis_vendor_read(unsigned int addr, void *recvbuf, size_t recv_size); +static inline bool tpm_first_access_this_boot(void) +{ + return ENV_SEPARATE_VERSTAGE || ENV_BOOTBLOCK || !CONFIG(VBOOT); +} #endif /* TIS_H_ */ |