OSDN Git Service

drm/msm/dsi: update hdisplay calculation for dsi_timing_setup
authorJessica Zhang <quic_jesszhan@quicinc.com>
Wed, 24 May 2023 17:45:22 +0000 (10:45 -0700)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Thu, 15 Jun 2023 09:58:56 +0000 (12:58 +0300)
Currently, hdisplay is being divided by 3 for DSC. However, this
calculation only works for cases where BPP = 8.

Update hdisplay calculation to be bytes_per_line / 3, so that it
accounts for cases where BPP != 8.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org>
Signed-off-by: Jessica Zhang <quic_jesszhan@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/539271/
Link: https://lore.kernel.org/r/20230329-rfc-msm-dsc-helper-v14-9-bafc7be95691@quicinc.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
drivers/gpu/drm/msm/dsi/dsi_host.c

index e693022..1a99d75 100644 (file)
@@ -949,7 +949,7 @@ static void dsi_timing_setup(struct msm_dsi_host *msm_host, bool is_bonded_dsi)
                 * pulse width same
                 */
                h_total -= hdisplay;
-               hdisplay /= 3;
+               hdisplay = msm_dsc_get_bytes_per_line(msm_host->dsc) / 3;
                h_total += hdisplay;
                ha_end = ha_start + hdisplay;
        }