@@ -200,7 +200,7 @@ static int dpu_crtc_get_lm_crc(struct drm_crtc *crtc,
200200 struct dpu_crtc_state * crtc_state )
201201{
202202 struct dpu_crtc_mixer * m ;
203- u32 crcs [CRTC_QUAD_MIXERS ];
203+ u32 crcs [CRTC_DUAL_MIXERS ];
204204
205205 int rc = 0 ;
206206 int i ;
@@ -1328,7 +1328,6 @@ static struct msm_display_topology dpu_crtc_get_topology(
13281328 struct drm_display_mode * mode = & crtc_state -> adjusted_mode ;
13291329 struct msm_display_topology topology = {0 };
13301330 struct drm_encoder * drm_enc ;
1331- u32 num_rt_intf ;
13321331
13331332 drm_for_each_encoder_mask (drm_enc , crtc -> dev , crtc_state -> encoder_mask )
13341333 dpu_encoder_update_topology (drm_enc , & topology , crtc_state -> state ,
@@ -1342,14 +1341,11 @@ static struct msm_display_topology dpu_crtc_get_topology(
13421341 * Dual display
13431342 * 2 LM, 2 INTF ( Split display using 2 interfaces)
13441343 *
1345- * If DSC is enabled, try to use 4:4:2 topology if there is enough
1346- * resource. Otherwise, use 2:2:2 topology.
1347- *
13481344 * Single display
13491345 * 1 LM, 1 INTF
13501346 * 2 LM, 1 INTF (stream merge to support high resolution interfaces)
13511347 *
1352- * If DSC is enabled, use 2:2:1 topology
1348+ * If DSC is enabled, use 2 LMs for 2 :2:1 topology
13531349 *
13541350 * Add dspps to the reservation requirements if ctm is requested
13551351 *
@@ -1361,23 +1357,14 @@ static struct msm_display_topology dpu_crtc_get_topology(
13611357 * (mode->hdisplay > MAX_HDISPLAY_SPLIT) check.
13621358 */
13631359
1364- num_rt_intf = topology .num_intf ;
1365- if (topology .cwb_enabled )
1366- num_rt_intf -- ;
1367-
1368- if (topology .num_dsc ) {
1369- if (dpu_kms -> catalog -> dsc_count >= num_rt_intf * 2 )
1370- topology .num_dsc = num_rt_intf * 2 ;
1371- else
1372- topology .num_dsc = num_rt_intf ;
1373- topology .num_lm = topology .num_dsc ;
1374- } else if (num_rt_intf == 2 ) {
1360+ if (topology .num_intf == 2 && !topology .cwb_enabled )
1361+ topology .num_lm = 2 ;
1362+ else if (topology .num_dsc == 2 )
13751363 topology .num_lm = 2 ;
1376- } else if (dpu_kms -> catalog -> caps -> has_3d_merge ) {
1364+ else if (dpu_kms -> catalog -> caps -> has_3d_merge )
13771365 topology .num_lm = (mode -> hdisplay > MAX_HDISPLAY_SPLIT ) ? 2 : 1 ;
1378- } else {
1366+ else
13791367 topology .num_lm = 1 ;
1380- }
13811368
13821369 if (crtc_state -> ctm )
13831370 topology .num_dspp = topology .num_lm ;
0 commit comments