Message ID | 1355341841-4595-3-git-send-email-damien.lespiau@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, 12 Dec 2012, Damien Lespiau <damien.lespiau@gmail.com> wrote: > From: Damien Lespiau <damien.lespiau@intel.com> > > Just like: > > commit a93cd34234db2269fa2481464ffd39263d617aed This is your local commit id, and will be meaningless upstream. Otherwise, Reviewed-by: Jani Nikula <jani.nikula@intel.com> > Author: Damien Lespiau <damien.lespiau@intel.com> > Date: Wed Dec 12 19:37:22 2012 +0000 > > drm/i915/hdmi: Read the HPD status before trying to read the EDID > > But this time for DiplayPort. > > Signed-off-by: Damien Lespiau <damien.lespiau@intel.com> > --- > drivers/gpu/drm/i915/intel_dp.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c > index b2130bc..fe3c22f 100644 > --- a/drivers/gpu/drm/i915/intel_dp.c > +++ b/drivers/gpu/drm/i915/intel_dp.c > @@ -2248,6 +2248,8 @@ static enum drm_connector_status > ironlake_dp_detect(struct intel_dp *intel_dp) > { > struct drm_device *dev = intel_dp_to_dev(intel_dp); > + struct drm_i915_private *dev_priv = dev->dev_private; > + struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp); > enum drm_connector_status status; > > /* Can't disconnect eDP, but you can close the lid... */ > @@ -2258,6 +2260,9 @@ ironlake_dp_detect(struct intel_dp *intel_dp) > return status; > } > > + if (!intel_ironlake_digital_port_connected(dev_priv, intel_dig_port)) > + return connector_status_disconnected; > + > return intel_dp_detect_dpcd(intel_dp); > } > > -- > 1.7.11.7 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index b2130bc..fe3c22f 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -2248,6 +2248,8 @@ static enum drm_connector_status ironlake_dp_detect(struct intel_dp *intel_dp) { struct drm_device *dev = intel_dp_to_dev(intel_dp); + struct drm_i915_private *dev_priv = dev->dev_private; + struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp); enum drm_connector_status status; /* Can't disconnect eDP, but you can close the lid... */ @@ -2258,6 +2260,9 @@ ironlake_dp_detect(struct intel_dp *intel_dp) return status; } + if (!intel_ironlake_digital_port_connected(dev_priv, intel_dig_port)) + return connector_status_disconnected; + return intel_dp_detect_dpcd(intel_dp); }