diff options
author | Furquan Shaikh <furquan@chromium.org> | 2017-04-07 13:26:01 -0700 |
---|---|---|
committer | Furquan Shaikh <furquan@google.com> | 2017-04-13 05:04:13 +0200 |
commit | 260b297a8969d7119d514272af7abacd12c8c42d (patch) | |
tree | 4e17674a8ad483059c66a74959c7f436c82ad61c /src/include | |
parent | bf6dfaefc2fd2f22e55e3227d8b023bcd992cae5 (diff) | |
download | coreboot-260b297a8969d7119d514272af7abacd12c8c42d.tar.xz |
drivers/spi/tpm: Clean up SPI TPM driver
1. Move common TIS macros to include/tpm.h.
2. Use common TIS macros while referring to status and access registers.
3. Add a new function claim_locality to properly check for required
access bits and claim locality 0.
BUG=b:36873582
Change-Id: I11bf3e8b6e1f50b7868c9fe4394a858488367287
Signed-off-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-on: https://review.coreboot.org/19213
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/tpm.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/include/tpm.h b/src/include/tpm.h index bd85b43844..32a44c17eb 100644 --- a/src/include/tpm.h +++ b/src/include/tpm.h @@ -19,6 +19,32 @@ #include <stddef.h> #include <stdint.h> +enum tis_access { + TPM_ACCESS_VALID = (1 << 7), + TPM_ACCESS_ACTIVE_LOCALITY = (1 << 5), + TPM_ACCESS_REQUEST_PENDING = (1 << 2), + TPM_ACCESS_REQUEST_USE = (1 << 1), + TPM_ACCESS_ESTABLISHMENT = (1 << 0), +}; + +enum tis_status { + TPM_STS_FAMILY_SHIFT = 26, + TPM_STS_FAMILY_MASK = (0x3 << TPM_STS_FAMILY_SHIFT), + TPM_STS_FAMILY_TPM_2_0 = (1 << TPM_STS_FAMILY_SHIFT), + TPM_STS_FAMILY_TPM_1_2 = (0 << TPM_STS_FAMILY_SHIFT), + TPM_STS_RESET_ESTABLISHMENT = (1 << 25), + TPM_STS_COMMAND_CANCEL = (1 << 24), + TPM_STS_BURST_COUNT_SHIFT = 8, + TPM_STS_BURST_COUNT_MASK = (0xFFFF << TPM_STS_BURST_COUNT_SHIFT), + TPM_STS_VALID = (1 << 7), + TPM_STS_COMMAND_READY = (1 << 6), + TPM_STS_GO = (1 << 5), + TPM_STS_DATA_AVAIL = (1 << 4), + TPM_STS_DATA_EXPECT = (1 << 3), + TPM_STS_SELF_TEST_DONE = (1 << 2), + TPM_STS_RESPONSE_RETRY = (1 << 1), +}; + /* * tis_init() * |