summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/msm
diff options
context:
space:
mode:
authorSean Paul <seanpaul@chromium.org>2018-11-16 13:42:23 -0500
committerRob Clark <robdclark@gmail.com>2018-12-11 13:10:12 -0500
commitb01c2399226c294fe9b22d26ce0ebf1707acb8d9 (patch)
tree5d37eb1fd830b09d9694e0fd5b7ddb9b2b14ce6e /drivers/gpu/drm/msm
parent18a63b3c6f0b6247f93f5eb05353b0486512017e (diff)
downloadlinux-b01c2399226c294fe9b22d26ce0ebf1707acb8d9.tar.bz2
drm/msm: dpu: Don't drop locks in crtc_vblank_enable
Now that runtime resume is handled in encoder, we don't need to worry about crtc_lock recursion when calling pm_runtime_(get|put). So drop the lock drops in _dpu_crtc_vblank_enable_no_lock(). Changes in v2: - None Reviewed-by: Jeykumar Sankaran <jsanka@codeaurora.org> Signed-off-by: Sean Paul <seanpaul@chromium.org> Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm')
-rw-r--r--drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
index 44bd3b853b2c..6da2492e6511 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
@@ -781,10 +781,7 @@ static void _dpu_crtc_vblank_enable_no_lock(
struct drm_encoder *enc;
if (enable) {
- /* drop lock since power crtc cb may try to re-acquire lock */
- mutex_unlock(&dpu_crtc->crtc_lock);
pm_runtime_get_sync(dev->dev);
- mutex_lock(&dpu_crtc->crtc_lock);
list_for_each_entry(enc, &dev->mode_config.encoder_list, head) {
if (enc->crtc != crtc)
@@ -809,10 +806,7 @@ static void _dpu_crtc_vblank_enable_no_lock(
dpu_encoder_register_vblank_callback(enc, NULL, NULL);
}
- /* drop lock since power crtc cb may try to re-acquire lock */
- mutex_unlock(&dpu_crtc->crtc_lock);
pm_runtime_put_sync(dev->dev);
- mutex_lock(&dpu_crtc->crtc_lock);
}
}