Skip to content

Commit 9025588

Browse files
committed
Merge tag 'drm-intel-fixes-2025-04-17' of https://gitlab.freedesktop.org/drm/i915/kernel into drm-fixes
drm/i915 fixes for v6.15-rc3: - Fix DP DSC configurations that require 3 DSC engines per pipe Signed-off-by: Dave Airlie <[email protected]> From: Jani Nikula <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2 parents c925e99 + 3a47280 commit 9025588

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

drivers/gpu/drm/i915/display/intel_display_device.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ struct intel_display_platforms {
161161
#define HAS_DPT(__display) (DISPLAY_VER(__display) >= 13)
162162
#define HAS_DSB(__display) (DISPLAY_INFO(__display)->has_dsb)
163163
#define HAS_DSC(__display) (DISPLAY_RUNTIME_INFO(__display)->has_dsc)
164+
#define HAS_DSC_3ENGINES(__display) (DISPLAY_VERx100(__display) == 1401 && HAS_DSC(__display))
164165
#define HAS_DSC_MST(__display) (DISPLAY_VER(__display) >= 12 && HAS_DSC(__display))
165166
#define HAS_FBC(__display) (DISPLAY_RUNTIME_INFO(__display)->fbc_mask != 0)
166167
#define HAS_FBC_DIRTY_RECT(__display) (DISPLAY_VER(__display) >= 30)

drivers/gpu/drm/i915/display/intel_dp.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1050,10 +1050,11 @@ u8 intel_dp_dsc_get_slice_count(const struct intel_connector *connector,
10501050
u8 test_slice_count = valid_dsc_slicecount[i] * num_joined_pipes;
10511051

10521052
/*
1053-
* 3 DSC Slices per pipe need 3 DSC engines,
1054-
* which is supported only with Ultrajoiner.
1053+
* 3 DSC Slices per pipe need 3 DSC engines, which is supported only
1054+
* with Ultrajoiner only for some platforms.
10551055
*/
1056-
if (valid_dsc_slicecount[i] == 3 && num_joined_pipes != 4)
1056+
if (valid_dsc_slicecount[i] == 3 &&
1057+
(!HAS_DSC_3ENGINES(display) || num_joined_pipes != 4))
10571058
continue;
10581059

10591060
if (test_slice_count >

0 commit comments

Comments
 (0)