]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/msm/dsi: add DSI version >= comparison helper
authorAlexander Koskovich <akoskovich@pm.me>
Tue, 24 Mar 2026 11:48:38 +0000 (11:48 +0000)
committerDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Wed, 25 Mar 2026 12:06:10 +0000 (14:06 +0200)
Add a helper for checking if the DSI hardware version is greater
than or equal to a given version, for use in a future change.

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Alexander Koskovich <akoskovich@pm.me>
Patchwork: https://patchwork.freedesktop.org/patch/713719/
Link: https://lore.kernel.org/r/20260324-dsi-rgb101010-support-v5-4-ff6afc904115@pm.me
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
drivers/gpu/drm/msm/dsi/dsi_host.c

index 1c0841a1c101334ce2b097408668fb448f9dd821..b5a0b282b033b27f8ea0494bfb31d201b7b163bc 100644 (file)
@@ -783,13 +783,21 @@ static void dsi_ctrl_disable(struct msm_dsi_host *msm_host)
        dsi_write(msm_host, REG_DSI_CTRL, 0);
 }
 
+static bool msm_dsi_host_version_geq(struct msm_dsi_host *msm_host,
+                                   u32 major, u32 minor)
+{
+       return msm_host->cfg_hnd->major > major ||
+              (msm_host->cfg_hnd->major == major &&
+              msm_host->cfg_hnd->minor >= minor);
+}
+
 bool msm_dsi_host_is_wide_bus_enabled(struct mipi_dsi_host *host)
 {
        struct msm_dsi_host *msm_host = to_msm_dsi_host(host);
 
        return msm_host->dsc &&
-               (msm_host->cfg_hnd->major == MSM_DSI_VER_MAJOR_6G &&
-                msm_host->cfg_hnd->minor >= MSM_DSI_6G_VER_MINOR_V2_5_0);
+               msm_dsi_host_version_geq(msm_host, MSM_DSI_VER_MAJOR_6G,
+                                       MSM_DSI_6G_VER_MINOR_V2_5_0);
 }
 
 static void dsi_ctrl_enable(struct msm_dsi_host *msm_host,