summaryrefslogtreecommitdiff
path: root/src/drivers/i2c/tpm
diff options
context:
space:
mode:
authorDaniel Kurtz <djkurtz@chromium.org>2017-04-21 10:25:48 +0800
committerAaron Durbin <adurbin@chromium.org>2017-04-24 22:32:22 +0200
commit732618975ee688059ca50f87a76f8a3bed8d4fb1 (patch)
tree05457f30d673b6ae039dd570566f81d5ce2d903e /src/drivers/i2c/tpm
parent9164e37e988ab61290698fedf65a33c1a5d89741 (diff)
downloadcoreboot-732618975ee688059ca50f87a76f8a3bed8d4fb1.tar.xz
drivers/i2c/tpm: Remove vendor.irq
The vendor.irq field was originally intended for use as the TPM 1.2 "command complete" interrupt. However, all actual coreboot tpm drivers and hardware use the vendor.status method of checking command completion instead, and this irq field is not used. Let's just remove this unused functionality to simplify the code. BRANCH=none BUG=b:36786804 TEST=Boot reef w/ serial enabled firmware, verify verstage sees "cr50 TPM" and does not complain about lack of tis_plat_irq_status(). TEST=Boot eve w/ serial enabled firmware, verify verstage sees "cr50 TPM" and does not complain about lack of tis_plat_irq_status(). Change-Id: I994c5bfbd18124af9cb81d9684117af766ab0124 Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-on: https://review.coreboot.org/19396 Reviewed-by: Julius Werner <jwerner@chromium.org> Reviewed-by: Philippe Mathieu-Daudé <philippe.mathieu.daude@gmail.com> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: build bot (Jenkins)
Diffstat (limited to 'src/drivers/i2c/tpm')
-rw-r--r--src/drivers/i2c/tpm/tis.c3
-rw-r--r--src/drivers/i2c/tpm/tpm.c3
-rw-r--r--src/drivers/i2c/tpm/tpm.h1
3 files changed, 0 insertions, 7 deletions
diff --git a/src/drivers/i2c/tpm/tis.c b/src/drivers/i2c/tpm/tis.c
index 9bdf0130e2..7cdb2a23b5 100644
--- a/src/drivers/i2c/tpm/tis.c
+++ b/src/drivers/i2c/tpm/tis.c
@@ -103,9 +103,6 @@ static ssize_t tpm_transmit(const uint8_t *sbuf, size_t sbufsiz, void *rbuf,
goto out;
}
- if (chip->vendor.irq)
- goto out_recv;
-
int timeout = 2 * 60 * 1000; /* two minutes timeout */
while (timeout) {
ASSERT(chip->vendor.status);
diff --git a/src/drivers/i2c/tpm/tpm.c b/src/drivers/i2c/tpm/tpm.c
index 5350695922..cc44b48692 100644
--- a/src/drivers/i2c/tpm/tpm.c
+++ b/src/drivers/i2c/tpm/tpm.c
@@ -545,9 +545,6 @@ int tpm_vendor_init(struct tpm_chip *chip, unsigned int bus, uint32_t dev_addr)
chip->vendor.send = &tpm_tis_i2c_send;
chip->vendor.cancel = &tpm_tis_i2c_ready;
- /* Disable interrupts (not supported) */
- chip->vendor.irq = 0;
-
if (request_locality(chip, 0) != 0)
return -1;
diff --git a/src/drivers/i2c/tpm/tpm.h b/src/drivers/i2c/tpm/tpm.h
index 35cf3972cf..1a01e05055 100644
--- a/src/drivers/i2c/tpm/tpm.h
+++ b/src/drivers/i2c/tpm/tpm.h
@@ -58,7 +58,6 @@ struct tpm_vendor_specific {
uint8_t req_complete_mask;
uint8_t req_complete_val;
uint8_t req_canceled;
- int irq;
int (*recv)(struct tpm_chip *, uint8_t *, size_t);
int (*send)(struct tpm_chip *, uint8_t *, size_t);
void (*cancel)(struct tpm_chip *);