]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/msm/dsi: fix bits_per_pclk
authorPengyu Luo <mitltlatltl@gmail.com>
Sat, 7 Mar 2026 11:12:48 +0000 (19:12 +0800)
committerDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Wed, 25 Mar 2026 06:06:14 +0000 (08:06 +0200)
mipi_dsi_pixel_format_to_bpp return dst bpp not src bpp, dst bpp may
not be the uncompressed data size. use src bpc * 3 to get src bpp,
this aligns with pclk rate calculation.

Fixes: ac47870fd795 ("drm/msm/dsi: fix hdisplay calculation when programming dsi registers")
Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
Patchwork: https://patchwork.freedesktop.org/patch/709916/
Link: https://lore.kernel.org/r/20260307111250.105772-1-mitltlatltl@gmail.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
drivers/gpu/drm/msm/dsi/dsi_host.c

index 6cb634590e7a7d296bd8f9c6fe856f0a3c84c8e2..3efcc3f6c381c4e66add2dff5edfcb656945614c 100644 (file)
@@ -1048,7 +1048,7 @@ static void dsi_timing_setup(struct msm_dsi_host *msm_host, bool is_bonded_dsi)
                 */
                h_total -= hdisplay;
                if (wide_bus_enabled)
-                       bits_per_pclk = mipi_dsi_pixel_format_to_bpp(msm_host->format);
+                       bits_per_pclk = dsc->bits_per_component * 3;
                else
                        bits_per_pclk = 24;