On Thu, Jul 31, 2014 at 02:03:36PM +0300, Imre Deak wrote:
> Just like during booting the BIOS can leave the VDD bit enabled after
> system resume. So apply the same state sanitization there too. This
> fixes a problem where after resume the port power domain refcount gets
> unbalanced.
> 
> v2:
> - unchanged
> v3:
> - call edp sanitizing from the encoder reset handler (Daniel)

It happens a bit earlier than with the earlier attempt, but if
it works it works.

Reviewed-by: Ville Syrjälä <ville.syrj...@linux.intel.com>

> 
> Reported-and-tested-by: Jarkko Nikula <jarkko.nik...@linux.intel.com>
> Signed-off-by: Imre Deak <imre.d...@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_dp.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 71294b5..8741439 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -4002,6 +4002,11 @@ void intel_dp_encoder_destroy(struct drm_encoder 
> *encoder)
>       kfree(intel_dig_port);
>  }
>  
> +static void intel_dp_encoder_reset(struct drm_encoder *encoder)
> +{
> +     intel_edp_panel_vdd_sanitize(to_intel_encoder(encoder));
> +}
> +
>  static const struct drm_connector_funcs intel_dp_connector_funcs = {
>       .dpms = intel_connector_dpms,
>       .detect = intel_dp_detect,
> @@ -4017,6 +4022,7 @@ static const struct drm_connector_helper_funcs 
> intel_dp_connector_helper_funcs =
>  };
>  
>  static const struct drm_encoder_funcs intel_dp_enc_funcs = {
> +     .reset = intel_dp_encoder_reset,
>       .destroy = intel_dp_encoder_destroy,
>  };
>  
> -- 
> 1.8.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to