History

drm/exynos: enable vblank after DPMS on

Before DPMS off driver disables vblank. It should be balanced by vblank enable after DPMS on. The patch fixes issue with page_flip ioctl not being able to acquire vblank counter introduced by patch: drm: Always reject drm_vblank_get() after drm_vblank_off()

Andrzej Hajda committed 12 years ago

Commit d6948b21 parent 3cb68301 file · +4 −1Browse files

Unified · Split

drivers/gpu/drm/exynos/exynos_drm_crtc.c+4−1
@@ -71,13 +71,16 @@ static void exynos_drm_crtc_dpms(struct drm_crtc *crtc, int mode) · 70 unmodified lines
71 !atomic_read(&exynos_crtc->pending_flip),71 !atomic_read(&exynos_crtc->pending_flip),
72 HZ/20))72 HZ/20))
73 atomic_set(&exynos_crtc->pending_flip, 0);73 atomic_set(&exynos_crtc->pending_flip, 0);
74 drm_vblank_off(crtc->dev, exynos_crtc->pipe);74 drm_crtc_vblank_off(crtc);
75 }75 }
76 76
77 if (manager->ops->dpms)77 if (manager->ops->dpms)
78 manager->ops->dpms(manager, mode);78 manager->ops->dpms(manager, mode);
79 79
80 exynos_crtc->dpms = mode;80 exynos_crtc->dpms = mode;
81
82 if (mode == DRM_MODE_DPMS_ON)
83 drm_crtc_vblank_on(crtc);
81}84}
82 85
83static void exynos_drm_crtc_prepare(struct drm_crtc *crtc)86static void exynos_drm_crtc_prepare(struct drm_crtc *crtc)