[Intel-gfx] [PATCH 2/2] drm/i915: take a power domain reference while checking the HDMI live status

Ville Syrjälä ville.syrjala at linux.intel.com
Thu Nov 19 11:17:45 PST 2015


On Thu, Nov 19, 2015 at 09:13:04PM +0200, Imre Deak wrote:
> On Thu, 2015-11-19 at 21:08 +0200, Ville Syrjälä wrote:
> > On Thu, Nov 19, 2015 at 08:55:01PM +0200, Imre Deak wrote:
> > > There are platforms that don't need the full GMBUS power domain
> > > (PCH, BXT) while others do (VLV/CHV). For optimizing this we
> > > would need to add a new power domain, but it's not clear how much
> > > we
> > > would benefit given the short time we hold the reference. So for
> > > now
> > > let's keep things simple.
> > 
> > Actually on PCH platforms the gmbus domain means just just an
> > rpm ref since the gmbus hw lives in the PCH.
> 
> Ah right.
> 
> > And IIRC on BXT gmbus lives in pw0 so same deal really.
> 
> It's in PW2 there. I'll fix the commit message.

Doh. Not sure where I got the PW0 zero idea. Maybe I confused gmbus
with hpd. But yes, you're right about that.

> 
> > And for vlv/chv we should just need the disp2d well, which
> > is exactly what we get with the gmbus domain.
> > 
> > So I don't think there's actually anything to optimize here
> > with current platforms.
> > 
> > Both patches look fine to me:
> > Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > 
> > > 
> > > Signed-off-by: Imre Deak <imre.deak at intel.com>
> > > ---
> > >  drivers/gpu/drm/i915/intel_hdmi.c | 4 ++++
> > >  1 file changed, 4 insertions(+)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c
> > > b/drivers/gpu/drm/i915/intel_hdmi.c
> > > index 17ced03..bdd462e 100644
> > > --- a/drivers/gpu/drm/i915/intel_hdmi.c
> > > +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> > > @@ -1393,6 +1393,8 @@ intel_hdmi_detect(struct drm_connector
> > > *connector, bool force)
> > >  	DRM_DEBUG_KMS("[CONNECTOR:%d:%s]\n",
> > >  		      connector->base.id, connector->name);
> > >  
> > > +	intel_display_power_get(dev_priv, POWER_DOMAIN_GMBUS);
> > > +
> > >  	while (!live_status && --retry) {
> > >  		live_status =
> > > intel_digital_port_connected(dev_priv,
> > >  				hdmi_to_dig_port(intel_hdmi));
> > > @@ -1412,6 +1414,8 @@ intel_hdmi_detect(struct drm_connector
> > > *connector, bool force)
> > >  	} else
> > >  		status = connector_status_disconnected;
> > >  
> > > +	intel_display_power_put(dev_priv, POWER_DOMAIN_GMBUS);
> > > +
> > >  	return status;
> > >  }
> > >  
> > > -- 
> > > 2.5.0
> > > 
> > > _______________________________________________
> > > Intel-gfx mailing list
> > > Intel-gfx at lists.freedesktop.org
> > > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> > 

-- 
Ville Syrjälä
Intel OTC


More information about the Intel-gfx mailing list