summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorKylene Jo Hall <kjhall@us.ibm.com>2006-07-14 00:24:30 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-07-14 21:53:55 -0700
commitcab091eaa4952777d3183b6d7ce203a213cddc12 (patch)
treee972336ef2441e2d107959d5dc0914429bc0487d /drivers
parent737bebd137561e184f0a8b4332d9bb0238d8b639 (diff)
downloadlinux-cab091eaa4952777d3183b6d7ce203a213cddc12.tar.bz2
[PATCH] tpm: interrupt clear fix
Under stress testing I found that the interrupt is not always cleared. Signed-off-by: Kylene Hall <kjhall@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/char/tpm/tpm_tis.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
index 3232b1932597..29dac1e4537c 100644
--- a/drivers/char/tpm/tpm_tis.c
+++ b/drivers/char/tpm/tpm_tis.c
@@ -424,6 +424,7 @@ static irqreturn_t tis_int_handler(int irq, void *dev_id, struct pt_regs *regs)
iowrite32(interrupt,
chip->vendor.iobase +
TPM_INT_STATUS(chip->vendor.locality));
+ ioread32(chip->vendor.iobase + TPM_INT_STATUS(chip->vendor.locality));
return IRQ_HANDLED;
}