[Intel-gfx] [PATCH] drm/i915: Only request PM interrupts for the events we handled
Jesse Barnes
jbarnes at virtuousgeek.org
Sun Jul 8 18:10:57 CEST 2012
On 7/5/2012 7:02 AM, Chris Wilson wrote:
> There is little point waking up every 10ms to service an interrupt which
> we then promptly ignore. So only program the the PMIER to enable
> interrupts for those events which we do handle, not all of them!
>
> Signed-off-by: Chris Wilson<chris at chris-wilson.co.uk>
> Cc: Jesse Barnes<jbarnes at virtuousgeek.org>
> Cc: Eugeni Dodonov<eugeni.dodonov at intel.com>
> Cc: Ben Widawsky<ben at bwidawsk.net>
> ---
> drivers/gpu/drm/i915/intel_pm.c | 9 +--------
> 1 file changed, 1 insertion(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index 0e27e95..53df531 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -2491,14 +2491,7 @@ static void gen6_enable_rps(struct drm_device *dev)
> gen6_set_rps(dev_priv->dev, (gt_perf_status& 0xff00)>> 8);
>
> /* requires MSI enabled */
> - I915_WRITE(GEN6_PMIER,
> - GEN6_PM_MBOX_EVENT |
> - GEN6_PM_THERMAL_EVENT |
> - GEN6_PM_RP_DOWN_TIMEOUT |
> - GEN6_PM_RP_UP_THRESHOLD |
> - GEN6_PM_RP_DOWN_THRESHOLD |
> - GEN6_PM_RP_UP_EI_EXPIRED |
> - GEN6_PM_RP_DOWN_EI_EXPIRED);
> + I915_WRITE(GEN6_PMIER, GEN6_PM_DEFERRED_EVENTS);
> spin_lock_irq(&dev_priv->rps_lock);
> WARN_ON(dev_priv->pm_iir != 0);
> I915_WRITE(GEN6_PMIMR, 0);
Yeah looks good to me, though like Ben said these other ones could be
fun at some point.
Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org>
More information about the Intel-gfx
mailing list