summaryrefslogtreecommitdiff
path: root/src/drivers/i2c
diff options
context:
space:
mode:
authorFurquan Shaikh <furquan@chromium.org>2017-04-07 13:26:01 -0700
committerFurquan Shaikh <furquan@google.com>2017-04-13 05:04:13 +0200
commit260b297a8969d7119d514272af7abacd12c8c42d (patch)
tree4e17674a8ad483059c66a74959c7f436c82ad61c /src/drivers/i2c
parentbf6dfaefc2fd2f22e55e3227d8b023bcd992cae5 (diff)
downloadcoreboot-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/drivers/i2c')
-rw-r--r--src/drivers/i2c/tpm/cr50.c1
-rw-r--r--src/drivers/i2c/tpm/tpm.c1
-rw-r--r--src/drivers/i2c/tpm/tpm.h15
3 files changed, 2 insertions, 15 deletions
diff --git a/src/drivers/i2c/tpm/cr50.c b/src/drivers/i2c/tpm/cr50.c
index 42c82d6fec..ce30bf1b7c 100644
--- a/src/drivers/i2c/tpm/cr50.c
+++ b/src/drivers/i2c/tpm/cr50.c
@@ -39,6 +39,7 @@
#include <device/i2c.h>
#include <endian.h>
#include <timer.h>
+#include <tpm.h>
#include "tpm.h"
#if IS_ENABLED(CONFIG_ARCH_X86)
diff --git a/src/drivers/i2c/tpm/tpm.c b/src/drivers/i2c/tpm/tpm.c
index e804d6fc60..5350695922 100644
--- a/src/drivers/i2c/tpm/tpm.c
+++ b/src/drivers/i2c/tpm/tpm.c
@@ -38,6 +38,7 @@
#include <device/i2c.h>
#include <endian.h>
#include <timer.h>
+#include <tpm.h>
#include "tpm.h"
/* max. number of iterations after I2C NAK */
diff --git a/src/drivers/i2c/tpm/tpm.h b/src/drivers/i2c/tpm/tpm.h
index 3a9a2ab949..e511e0df22 100644
--- a/src/drivers/i2c/tpm/tpm.h
+++ b/src/drivers/i2c/tpm/tpm.h
@@ -47,21 +47,6 @@ enum tpm_timeout {
#define TPM_RSP_SIZE_BYTE 2
#define TPM_RSP_RC_BYTE 6
-enum tis_access {
- TPM_ACCESS_VALID = 0x80,
- TPM_ACCESS_ACTIVE_LOCALITY = 0x20,
- TPM_ACCESS_REQUEST_PENDING = 0x04,
- TPM_ACCESS_REQUEST_USE = 0x02,
-};
-
-enum tis_status {
- TPM_STS_VALID = 0x80,
- TPM_STS_COMMAND_READY = 0x40,
- TPM_STS_GO = 0x20,
- TPM_STS_DATA_AVAIL = 0x10,
- TPM_STS_DATA_EXPECT = 0x08,
-};
-
#define TPM_ACCESS(l) (0x0000 | ((l) << 4))
#define TPM_STS(l) (0x0001 | ((l) << 4))
#define TPM_DATA_FIFO(l) (0x0005 | ((l) << 4))