[Intel-gfx] [PATCH v2] drm/i915/lspcon: Switch back to PCON mode after output replug
Ville Syrjälä
ville.syrjala at linux.intel.com
Thu Feb 23 18:15:28 UTC 2017
On Wed, Feb 22, 2017 at 05:10:52PM +0200, Imre Deak wrote:
> At least a ParadTech PS175 LSPCON chip/firmware uses long instead of
> short pulses to signal output unplug/plug events. This is contrary to
> how branch devices normally work which use short HPD signaling. This
> chip will also switch to LS mode after an unplug event, which could be
> the consequence of the long HPD signaling semantics and an effort to
> save power automatically. Because of this we'll fail to do AUX and
> detect the output after a replug event.
>
> To fix this make sure we are in PCON mode during connector detection.
>
> v2:
> - Switch the mode in the proper spot.
>
> Cc: raptorteak at gmail.com
> Cc: Shashank Sharma <shashank.sharma at intel.com>
> Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98912
> Reported-and-tested-by: raptorteak at gmail.com
> Signed-off-by: Imre Deak <imre.deak at intel.com>
lgtm
Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_dp.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 024798a..e1529ff 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -4326,9 +4326,13 @@ intel_dp_short_pulse(struct intel_dp *intel_dp)
> static enum drm_connector_status
> intel_dp_detect_dpcd(struct intel_dp *intel_dp)
> {
> + struct intel_lspcon *lspcon = dp_to_lspcon(intel_dp);
> uint8_t *dpcd = intel_dp->dpcd;
> uint8_t type;
>
> + if (lspcon->active)
> + lspcon_resume(lspcon);
> +
> if (!intel_dp_get_dpcd(intel_dp))
> return connector_status_disconnected;
>
> --
> 2.5.0
--
Ville Syrjälä
Intel OTC
More information about the Intel-gfx
mailing list