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

Daniel Vetter
2014-03-05T12:50:35Z

On Wed, Mar 05, 2014 at 02:21:19PM +0200, Ville Syrjälä wrote:
> On Wed, Mar 05, 2014 at 12:00:39PM +0000, 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 and release immediately after the last. We set a timer
> > on the first access so that we only dance once and on the next scheduler
> > tick, we drop the forcewake again.
> >
> > This moves the cleanup routine from the common i915 workqueue to a timer
> > func so that we don't anger powertop, and drop the forcewake again
> > quicker.
> >
> > v2: Enable the deferred force_wake_put for regular register reads as
> > well.
> > v3: Beautification and make sure we disable forcewake when shutting
> > down.
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Ben Widawsky <ben@bwidawsk.net>
> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Looks good.
>
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> The next question will be if we want this for VLV too, but that's going
> to be a bit more comlicated due to the dual forcewake counts. I guess we
> can leave that alone for now.

Queued for -next, thanks for the patch.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch