[PATCH] drm/msm/dpu: Allocate the number of LMs based on max_mixer_width to support 4 streams MST case

Yongxing Mou quic_yongmou at quicinc.com
Tue Feb 11 10:37:43 UTC 2025


In 2x2 mst case, each 2k monitor will use 2 lms, but dpu_8_4 only have
6 lms, so let 2k only use one lm to support such case.

Signed-off-by: Abhinav Kumar <quic_abhinavk at quicinc.com>
Signed-off-by: Yongxing Mou <quic_yongmou at quicinc.com>
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
index 5172ab4dea995a154cd88d05c3842d7425fc34ce..e8846bf8edc5f9b2b3b7f093e4d5aad75de53da1 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
@@ -677,7 +677,8 @@ static struct msm_display_topology dpu_encoder_get_topology(
 	else if (!dpu_kms->catalog->caps->has_3d_merge)
 		topology.num_lm = 1;
 	else
-		topology.num_lm = (mode->hdisplay > MAX_HDISPLAY_SPLIT) ? 2 : 1;
+		topology.num_lm = (mode->hdisplay > dpu_kms->catalog->caps->max_mixer_width) ?
+				   2 : 1;
 
 	if (crtc_state->ctm)
 		topology.num_dspp = topology.num_lm;

---
base-commit: df5d6180169ae06a2eac57e33b077ad6f6252440
change-id: 20250211-dp_lm-8f8ef15f5955

Best regards,
-- 
Yongxing Mou <quic_yongmou at quicinc.com>



More information about the dri-devel mailing list