diff options
author | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2007-04-03 10:21:41 +0200 |
---|---|---|
committer | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2007-04-03 10:29:15 +0200 |
commit | 139e4bbc73c65d6e1d7fc831ae15c8b28f92e821 (patch) | |
tree | 1bc17089c8ff4e7691ab9a3344dd7f5e34281d09 | |
parent | 7743af94492681f5aaf7cfdef78d695a6db7cbd0 (diff) |
Make sure we ack irqs before we read a breadcrumb so that
breadcrumb updates that occur _AFTER_ we've read the breadcrumb really
generates a new IRQ.
-rw-r--r-- | shared-core/i915_irq.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/shared-core/i915_irq.c b/shared-core/i915_irq.c index 5da54107..4047e77e 100644 --- a/shared-core/i915_irq.c +++ b/shared-core/i915_irq.c @@ -294,6 +294,8 @@ irqreturn_t i915_driver_irq_handler(DRM_IRQ_ARGS) return IRQ_NONE; I915_WRITE16(I915REG_INT_IDENTITY_R, temp); + (void) I915_READ16(I915REG_INT_IDENTITY_R); + DRM_READMEMORYBARRIER(); dev_priv->sarea_priv->last_dispatch = READ_BREADCRUMB(dev_priv); |