According to eDP spec, sink could required a granularity in the start of x coordinate or in the width of the selective update region. As it is not supported by hardware, lets not enable PSR2 in sinks that requires it. Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@xxxxxxxxx> Signed-off-by: José Roberto de Souza <jose.souza@xxxxxxxxx> --- drivers/gpu/drm/i915/intel_psr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c index 0dd4211cb293..84b512426514 100644 --- a/drivers/gpu/drm/i915/intel_psr.c +++ b/drivers/gpu/drm/i915/intel_psr.c @@ -243,6 +243,8 @@ void intel_psr_init_dpcd(struct intel_dp *intel_dp) bool y_req = intel_dp->psr_dpcd[1] & DP_PSR2_SU_Y_COORDINATE_REQUIRED; bool alpm = intel_dp_get_alpm_status(intel_dp); + bool granularity_req = (intel_dp->psr_dpcd[1] & + DP_PSR2_SU_GRANULARITY_REQUIRED); /* * All panels that supports PSR version 03h (PSR2 + @@ -255,7 +257,8 @@ void intel_psr_init_dpcd(struct intel_dp *intel_dp) * Y-coordinate requirement panels we would need to enable * GTC first. */ - dev_priv->psr.sink_psr2_support = y_req && alpm; + dev_priv->psr.sink_psr2_support = y_req && alpm && + !granularity_req; DRM_DEBUG_KMS("PSR2 %ssupported\n", dev_priv->psr.sink_psr2_support ? "" : "not "); -- 2.19.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx