]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/bridge: analogic_dp: drop panel_lock
authorDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Tue, 1 Apr 2025 05:11:36 +0000 (08:11 +0300)
committerDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Tue, 22 Apr 2025 13:49:11 +0000 (16:49 +0300)
The analogix_dp_prepare_panel() function is called from bridge's
atomic_pre_enable() and atomic_post_disable() callbacks, which can not
happen simultaneously. Drop the useless mutex.

Tested-by: Damon Ding <damon.ding@rock-chips.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-4-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
drivers/gpu/drm/bridge/analogix/analogix_dp_core.h

index f62035c50f356f7e75f3e041148e7435efad1fcf..f411dd33e73092a89aeb487970526548e3e058b5 100644 (file)
@@ -974,14 +974,11 @@ static int analogix_dp_prepare_panel(struct analogix_dp_device *dp,
        if (!dp->plat_data->panel)
                return 0;
 
-       mutex_lock(&dp->panel_lock);
-
        if (prepare)
                ret = drm_panel_prepare(dp->plat_data->panel);
        else
                ret = drm_panel_unprepare(dp->plat_data->panel);
 
-       mutex_unlock(&dp->panel_lock);
        return ret;
 }
 
@@ -1547,8 +1544,6 @@ analogix_dp_probe(struct device *dev, struct analogix_dp_plat_data *plat_data)
        dp->dev = &pdev->dev;
        dp->dpms_mode = DRM_MODE_DPMS_OFF;
 
-       mutex_init(&dp->panel_lock);
-
        /*
         * platform dp driver need containor_of the plat_data to get
         * the driver private data, so we need to store the point of
index b679d5b71d276f458d905c936160f107225bc6c5..2b54120ba4a3ef55af518a0629a5c8469f275a0f 100644 (file)
@@ -169,8 +169,6 @@ struct analogix_dp_device {
        bool                    fast_train_enable;
        bool                    psr_supported;
 
-       struct mutex            panel_lock;
-
        struct analogix_dp_plat_data *plat_data;
 };