Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/msm/dpu: Only enable DSC_MODE_MULTIPLEX if dsc_merge is enabled

When the topology calls for two interfaces on the current fixed topology
of 2 DSC blocks, or uses 1 DSC block for a single interface (e.g. SC7280
with only one DSC block), there should be no merging of DSC output.

This is already represented by the return value of
dpu_encoder_use_dsc_merge(), but not yet used to correctly configure
this flag.

Fixes: 58dca9810749 ("drm/msm/disp/dpu1: Add support for DSC in encoder")
Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/577067/
Link: https://lore.kernel.org/r/20240204-dpu-dsc-multiplex-v1-1-080963233c52@somainline.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

authored by

Marijn Suijten and committed by
Dmitry Baryshkov
06267d22 99d519fe

+3 -1
+3 -1
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
··· 1860 1860 dsc_common_mode = 0; 1861 1861 pic_width = dsc->pic_width; 1862 1862 1863 - dsc_common_mode = DSC_MODE_MULTIPLEX | DSC_MODE_SPLIT_PANEL; 1863 + dsc_common_mode = DSC_MODE_SPLIT_PANEL; 1864 + if (dpu_encoder_use_dsc_merge(enc_master->parent)) 1865 + dsc_common_mode |= DSC_MODE_MULTIPLEX; 1864 1866 if (enc_master->intf_mode == INTF_MODE_VIDEO) 1865 1867 dsc_common_mode |= DSC_MODE_VIDEO; 1866 1868