As per Bspec:49259 while computing the dsc slice count, we need to
ensure that mode->hdisplay is divisible by the slice count.
This check is there for DSI, where we select slice_count from bios,
but is missing for DP.

Signed-off-by: Ankit Nautiyal <ankit.k.nauti...@intel.com>
---
 drivers/gpu/drm/i915/display/intel_dp.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
b/drivers/gpu/drm/i915/display/intel_dp.c
index 04d22f0c1524..6cfc7d1c96ea 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -1031,6 +1031,9 @@ u8 intel_dp_dsc_get_slice_count(const struct 
intel_connector *connector,
                if (num_joined_pipes > 1 && valid_dsc_slicecount[i] < 2)
                        continue;
 
+               if (mode_hdisplay % test_slice_count)
+                       continue;
+
                if (min_slice_count <= test_slice_count)
                        return test_slice_count;
        }
-- 
2.45.2

Reply via email to