[Intel-gfx] [PATCH 2/3] drm/i915: Assume eDP is always connected

Ville Syrjälä ville.syrjala at linux.intel.com
Wed Jul 18 10:03:59 UTC 2018


On Tue, Jul 17, 2018 at 01:00:25PM -0700, Rodrigo Vivi wrote:
> On Tue, Jul 17, 2018 at 08:42:15PM +0300, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > 
> > We never registered any kind of lid notifier for eDP, so looking at the
> > lid status is pretty much bonkers. Let's just consider eDP always
> > connected instead.
> 
> hm....
> I've seen in the past, specially on rvps, so many times that
> we detect edp or assume edp is there and it is not...
> that generates a flood of aux timeout reads...
> 
> I never investigate that, but I wonder if this change here
> couldn't make that case even more common... 

I don't know if RVPs would have any of the lid stuff implemented.
I somewhat doubt it.

If dpcd reads fail we won't register edp so any timeouts and whatnot
should only be logged during driver load.

> 
> > 
> > Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > ---
> >  drivers/gpu/drm/i915/intel_dp.c | 11 ++---------
> >  1 file changed, 2 insertions(+), 9 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> > index b45b08420c1f..61657b8b109c 100644
> > --- a/drivers/gpu/drm/i915/intel_dp.c
> > +++ b/drivers/gpu/drm/i915/intel_dp.c
> > @@ -4532,14 +4532,7 @@ intel_dp_detect_dpcd(struct intel_dp *intel_dp)
> >  static enum drm_connector_status
> >  edp_detect(struct intel_dp *intel_dp)
> >  {
> > -	struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > -	enum drm_connector_status status;
> > -
> > -	status = intel_panel_detect(dev_priv);
> > -	if (status == connector_status_unknown)
> > -		status = connector_status_connected;
> > -
> > -	return status;
> > +	return connector_status_connected;
> >  }
> >  
> >  static bool ibx_digital_port_connected(struct intel_encoder *encoder)
> > @@ -4802,7 +4795,7 @@ intel_dp_long_pulse(struct intel_connector *connector)
> >  
> >  	intel_display_power_get(dev_priv, intel_dp->aux_power_domain);
> >  
> > -	/* Can't disconnect eDP, but you can close the lid... */
> > +	/* Can't disconnect eDP */
> >  	if (intel_dp_is_edp(intel_dp))
> >  		status = edp_detect(intel_dp);
> >  	else if (intel_digital_port_connected(&dp_to_dig_port(intel_dp)->base))
> > -- 
> > 2.16.4
> > 
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel


More information about the Intel-gfx mailing list