Commit 02efb359 authored by Daniel Vetter's avatar Daniel Vetter Committed by Rob Clark

drm/msm: Simplify vblank event delivery

The core takes care of handling the send_event vs. close() issues, we
can remove that driver code.

Cc: Rob Clark <robdclark@gmail.com>
Cc: linux-arm-msm@vger.kernel.org
Cc: freedreno@lists.freedesktop.org
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent 94df145c
...@@ -114,15 +114,9 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file) ...@@ -114,15 +114,9 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file)
spin_lock_irqsave(&dev->event_lock, flags); spin_lock_irqsave(&dev->event_lock, flags);
event = mdp4_crtc->event; event = mdp4_crtc->event;
if (event) { if (event) {
/* if regular vblank case (!file) or if cancel-flip from mdp4_crtc->event = NULL;
* preclose on file that requested flip, then send the DBG("%s: send event: %p", mdp4_crtc->name, event);
* event: drm_crtc_send_vblank_event(crtc, event);
*/
if (!file || (event->base.file_priv == file)) {
mdp4_crtc->event = NULL;
DBG("%s: send event: %p", mdp4_crtc->name, event);
drm_crtc_send_vblank_event(crtc, event);
}
} }
spin_unlock_irqrestore(&dev->event_lock, flags); spin_unlock_irqrestore(&dev->event_lock, flags);
} }
......
...@@ -138,15 +138,9 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file) ...@@ -138,15 +138,9 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file)
spin_lock_irqsave(&dev->event_lock, flags); spin_lock_irqsave(&dev->event_lock, flags);
event = mdp5_crtc->event; event = mdp5_crtc->event;
if (event) { if (event) {
/* if regular vblank case (!file) or if cancel-flip from mdp5_crtc->event = NULL;
* preclose on file that requested flip, then send the DBG("%s: send event: %p", crtc->name, event);
* event: drm_crtc_send_vblank_event(crtc, event);
*/
if (!file || (event->base.file_priv == file)) {
mdp5_crtc->event = NULL;
DBG("%s: send event: %p", crtc->name, event);
drm_crtc_send_vblank_event(crtc, event);
}
} }
spin_unlock_irqrestore(&dev->event_lock, flags); spin_unlock_irqrestore(&dev->event_lock, flags);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment