[Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-03-05 Thread Chris Wilson
We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register access sequence, with a single forcewake dance on the first access and release immediately after the last. We set a timer on the

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-03-05 Thread Ville Syrjälä
On Wed, Mar 05, 2014 at 12:00:39PM +, Chris Wilson wrote: We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register access sequence, with a single forcewake dance on the first access

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-03-05 Thread Daniel Vetter
On Wed, Mar 05, 2014 at 02:21:19PM +0200, Ville Syrjälä wrote: On Wed, Mar 05, 2014 at 12:00:39PM +, Chris Wilson wrote: We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-03-03 Thread Ville Syrjälä
On Fri, Feb 28, 2014 at 06:44:03PM +, Chris Wilson wrote: We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register access sequence, with a single forcewake dance on the first access

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-03-03 Thread Chris Wilson
On Mon, Mar 03, 2014 at 04:46:20PM +0200, Ville Syrjälä wrote: On Fri, Feb 28, 2014 at 06:44:03PM +, Chris Wilson wrote: @@ -405,9 +403,8 @@ void gen6_gt_force_wake_put(struct drm_i915_private *dev_priv, int fw_engine) spin_lock_irqsave(dev_priv-uncore.lock, irqflags); if

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-03-02 Thread Ben Widawsky
On Fri, Feb 28, 2014 at 06:44:03PM +, Chris Wilson wrote: We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register access sequence, with a single forcewake dance on the first access

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-03-02 Thread Chris Wilson
On Sun, Mar 02, 2014 at 05:01:26PM -0800, Ben Widawsky wrote: On Fri, Feb 28, 2014 at 06:44:03PM +, Chris Wilson wrote: We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register

[Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-02-28 Thread Chris Wilson
We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register access sequence, with a single forcewake dance on the first access and release immediately after the last. We set a timer on the

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-02-28 Thread Ville Syrjälä
On Fri, Feb 28, 2014 at 09:02:38AM +, Chris Wilson wrote: We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register access sequence, with a single forcewake dance on the first access

Re: [Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-02-28 Thread Chris Wilson
On Fri, Feb 28, 2014 at 11:16:33AM +0200, Ville Syrjälä wrote: Should we use the timer to delay the forcewake release from register read/write functions too? Or maybe do it only for register read/write since gen6_gt_force_wake_get/put are rather rare and I wouldn't expect significant forcewake

[Intel-gfx] [PATCH] drm/i915: Convert the forcewake worker into a timer func

2014-02-28 Thread Chris Wilson
We don't want to suffer scheduling delay when turning off the GPU after waking it up to touch registers. Ideally, we only want to keep the GPU awake for the register access sequence, with a single forcewake dance on the first access and release immediately after the last. We set a timer on the