diff options
author | Rob Clark <robdclark@gmail.com> | 2017-10-17 09:39:53 -0400 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2017-10-28 11:01:35 -0400 |
commit | 0033e1b523f6d6a60ff7beaaa923cd7656a72959 (patch) | |
tree | 24cc3b3540a9f0ecd23ab8641d6bc8f2d877ad06 /drivers/gpu/drm | |
parent | cae923e6bf2168d1e332977e1de224ee5da1a32c (diff) |
drm/msm/mdp5: disable vblanks when crtc is off
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c index 6fcb58ab718c..436bf628ef9c 100644 --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | |||
@@ -422,6 +422,9 @@ static void mdp5_crtc_atomic_disable(struct drm_crtc *crtc, | |||
422 | if (WARN_ON(!mdp5_crtc->enabled)) | 422 | if (WARN_ON(!mdp5_crtc->enabled)) |
423 | return; | 423 | return; |
424 | 424 | ||
425 | /* Disable/save vblank irq handling before power is disabled */ | ||
426 | drm_crtc_vblank_off(crtc); | ||
427 | |||
425 | if (mdp5_cstate->cmd_mode) | 428 | if (mdp5_cstate->cmd_mode) |
426 | mdp_irq_unregister(&mdp5_kms->base, &mdp5_crtc->pp_done); | 429 | mdp_irq_unregister(&mdp5_kms->base, &mdp5_crtc->pp_done); |
427 | 430 | ||
@@ -446,6 +449,9 @@ static void mdp5_crtc_atomic_enable(struct drm_crtc *crtc, | |||
446 | 449 | ||
447 | pm_runtime_get_sync(dev); | 450 | pm_runtime_get_sync(dev); |
448 | 451 | ||
452 | /* Restore vblank irq handling after power is enabled */ | ||
453 | drm_crtc_vblank_on(crtc); | ||
454 | |||
449 | mdp5_crtc_mode_set_nofb(crtc); | 455 | mdp5_crtc_mode_set_nofb(crtc); |
450 | 456 | ||
451 | mdp_irq_register(&mdp5_kms->base, &mdp5_crtc->err); | 457 | mdp_irq_register(&mdp5_kms->base, &mdp5_crtc->err); |