• Paulo Zanoni's avatar
    drm/i915: don't queue PM events we won't process · 60611c13
    Paulo Zanoni authored
    On SNB/IVB/VLV we only call gen6_rps_irq_handler if one of the IIR
    bits set is part of GEN6_PM_RPS_EVENTS, but at gen6_rps_irq_handler we
    add all the enabled IIR bits to the work queue, not only the ones that
    are part of GEN6_PM_RPS_EVENTS. But then gen6_pm_rps_work only
    processes GEN6_PM_RPS_EVENTS, so it's useless to add anything that's
    not GEN6_PM_RPS_EVENTS to the work queue.
    
    As a bonus, gen6_rps_irq_handler looks more similar to
    hsw_pm_irq_handler, so we may be able to merge them in the future.
    
    v2: - Add a WARN in case we queued something we're not going to
          process.
    Signed-off-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
    Reviewed-by: Ben Widawsky <ben@bwidawsk.net> (v1)
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    60611c13
i915_irq.c 90.1 KB