summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-06-22 15:23:03 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-06-24 10:22:05 -0700
commitdd218276595f35a9a3e2fe1d0f1ed34634cac623 (patch)
treeb7a83ecf24e76385fe12e2c0e35cbba272409a4c
parent842426d4e7085d7e3f65d9dc7d94e50f79cbbfe9 (diff)
downloadlwn-dd218276595f35a9a3e2fe1d0f1ed34634cac623.tar.gz
lwn-dd218276595f35a9a3e2fe1d0f1ed34634cac623.zip
Revert "drm/i915: Exit cherryview_irq_handler() after one pass"
This reverts commit 9dbaab56ac09f07a73fe83bf69bec3e31060080a. Turns out it was a bad idea and was fixed up "properly" in 4.7 but those patches are too big to put into 4.6, so let's just revert it for now. Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Peter Frühberger <peter.fruehberger@gmail.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/gpu/drm/i915/i915_irq.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 1c212205d0e7..d1a46ef5ab3f 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -1829,7 +1829,7 @@ static irqreturn_t cherryview_irq_handler(int irq, void *arg)
/* IRQs are synced during runtime_suspend, we don't require a wakeref */
disable_rpm_wakeref_asserts(dev_priv);
- do {
+ for (;;) {
master_ctl = I915_READ(GEN8_MASTER_IRQ) & ~GEN8_MASTER_IRQ_CONTROL;
iir = I915_READ(VLV_IIR);
@@ -1857,7 +1857,7 @@ static irqreturn_t cherryview_irq_handler(int irq, void *arg)
I915_WRITE(GEN8_MASTER_IRQ, DE_MASTER_IRQ_CONTROL);
POSTING_READ(GEN8_MASTER_IRQ);
- } while (0);
+ }
enable_rpm_wakeref_asserts(dev_priv);