[Intel-gfx] [PATCH] drm/i915: Grab RPM wakeref around enabling vblank interrupts

Chris Wilson chris at chris-wilson.co.uk
Fri Oct 7 19:00:35 UTC 2016


On Fri, Oct 07, 2016 at 07:57:21PM +0100, Chris Wilson wrote:
> On Fri, Oct 07, 2016 at 09:44:53PM +0300, Ville Syrjälä wrote:
> > On Fri, Oct 07, 2016 at 07:33:00PM +0100, Chris Wilson wrote:
> > > On Fri, Oct 07, 2016 at 09:06:07PM +0300, Ville Syrjälä wrote:
> > > > On Fri, Oct 07, 2016 at 02:50:32PM +0100, Chris Wilson wrote:
> > > > > Whilst the vblank is configured to send an interrupt everytime, we need
> > > > > to keep the device awake to process those interrupts.
> > > > 
> > > > If we can enable vblanks the pipe will be active, and thus we can't
> > > > runtime suspend anyway. Also might_sleep() would be a problem.
> > > 
> > > Where is the pipe made active? Is it just having any mode is sufficient
> > > to disable rpm? Will that always be the case?
> > 
> > Active pipe holds a power domain reference, which implies an rpm
> > reference as well.
> 
> What's the best way to write
> 
> 	/* vblank IRQ requires the powerwell to stay awake */
> 	WARN_ON(!to_intel_crtc(dev_priv->pipe_to_crtc_mapping[pipe])->active);

Also, any reason why we shouldn't merge valleyview_enable_vblank() with
i915_enable_vblank()?
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list