Hi all, So I've hopefully taken all review feedback into account, fixed a few other things on top (accessing gen6+ PM registers on ilk mostly) and polished the turd otherwise. I've also tried to come up with some infrastructure to reproduce fifo underruns for testing so that we can make sure we don't break stuff. But it looks like that's a bit too hard to easily do, or I'm just not good enough at creating bad watermarks ;-) Anyway a few patches still need an r-b, so comments and review highly welcome. Cheers, Daniel Daniel Vetter (14): drm/i915: extract ibx_display_interrupt_update drm/i915: improve SERR_INT clearing for fifo underrun reporting drm/i915: improve GEN7_ERR_INT clearing for fifo underrun reporting drm/i915: kill lpt pch transcoder->crtc mapping code for fifo underruns drm/i915: irq handlers don't need interrupt-safe spinlocks drm/i915: streamline hsw_pm_irq_handler drm/i915: queue work outside spinlock in hsw_pm_irq_handler drm/i915: kill dev_priv->rps.lock drm/i915: unify ring irq refcounts (again) drm/i915: don't enable PM_VEBOX_CS_ERROR_INTERRUPT drm/i915: unify PM interrupt preinstall sequence drm/i915: unify GT/PM irq postinstall code drm/i915: extract rps interrupt enable/disable helpers drm/i915: simplify rps interrupt enabling/disabling sequence drivers/gpu/drm/i915/i915_dma.c | 1 - drivers/gpu/drm/i915/i915_drv.h | 8 +- drivers/gpu/drm/i915/i915_irq.c | 328 ++++++++++++++++---------------- drivers/gpu/drm/i915/i915_reg.h | 2 + drivers/gpu/drm/i915/intel_pm.c | 65 +++---- drivers/gpu/drm/i915/intel_ringbuffer.c | 31 ++- drivers/gpu/drm/i915/intel_ringbuffer.h | 5 +- 7 files changed, 220 insertions(+), 220 deletions(-) -- 1.8.1.4