Browse Source

drm/hisilicon: Fix ADE vblank on/off handling

Vblank turn on should be called in crtc's enable callback.
And turn off called in crtc's disable callback.

Thanks to Daniel Vetter, this bug is reported by him.

Reported-by: Daniel Vetter <daniel.vetter@intel.com>
Signed-off-by: Xinliang Liu <xinliang.liu@linaro.org>
Xinliang Liu 9 năm trước cách đây
mục cha
commit
85d8747d2a
1 tập tin đã thay đổi với 2 bổ sung0 xóa
  1. 2 0
      drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c

+ 2 - 0
drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c

@@ -487,6 +487,7 @@ static void ade_crtc_enable(struct drm_crtc *crtc)
 	ade_set_medianoc_qos(acrtc);
 	ade_display_enable(acrtc);
 	ade_dump_regs(ctx->base);
+	drm_crtc_vblank_on(crtc);
 	acrtc->enable = true;
 }
 
@@ -498,6 +499,7 @@ static void ade_crtc_disable(struct drm_crtc *crtc)
 	if (!acrtc->enable)
 		return;
 
+	drm_crtc_vblank_off(crtc);
 	ade_power_down(ctx);
 	acrtc->enable = false;
 }