drm/msm/dsi: do not enable PHYs when called for the slave DSI interface
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Wed, 9 Jun 2021 21:12:11 +0000 (00:12 +0300)
committerRob Clark <robdclark@chromium.org>
Wed, 23 Jun 2021 14:33:55 +0000 (07:33 -0700)
Move the call to dsi_mgr_phy_enable after checking whether the DSI
interface is slave, so that PHY enablement happens together with the
host enablement.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210609211211.2561090-1-dmitry.baryshkov@linaro.org
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/dsi/dsi_manager.c

index 4df5def..4ebfedc 100644 (file)
@@ -373,14 +373,14 @@ static void dsi_mgr_bridge_pre_enable(struct drm_bridge *bridge)
        if (!msm_dsi_device_connected(msm_dsi))
                return;
 
-       ret = dsi_mgr_phy_enable(id, phy_shared_timings);
-       if (ret)
-               goto phy_en_fail;
-
        /* Do nothing with the host if it is slave-DSI in case of dual DSI */
        if (is_dual_dsi && !IS_MASTER_DSI_LINK(id))
                return;
 
+       ret = dsi_mgr_phy_enable(id, phy_shared_timings);
+       if (ret)
+               goto phy_en_fail;
+
        ret = msm_dsi_host_power_on(host, &phy_shared_timings[id], is_dual_dsi);
        if (ret) {
                pr_err("%s: power on host %d failed, %d\n", __func__, id, ret);