| From 499973b260751d5bc38f7b0d89f6b8b07373d525 Mon Sep 17 00:00:00 2001 |
| From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
| Date: Sun, 12 Feb 2017 02:45:11 +0200 |
| Subject: [PATCH 250/286] drm: rcar-du: Clear handled event pointer in CRTC |
| state |
| |
| The atomic commit helper requires drivers to clear the event pointer |
| stored in the CRTC state when the event is handled. In preparation to |
| using the helper, fix the driver. |
| |
| Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
| (cherry picked from commit 15b181a309e9c9bff8d0bc57d7da2d5f87c14186) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 6 +++--- |
| 1 file changed, 3 insertions(+), 3 deletions(-) |
| |
| --- a/drivers/gpu/drm/rcar-du/rcar_du_crtc.c |
| +++ b/drivers/gpu/drm/rcar-du/rcar_du_crtc.c |
| @@ -501,16 +501,16 @@ static void rcar_du_crtc_disable(struct |
| static void rcar_du_crtc_atomic_begin(struct drm_crtc *crtc, |
| struct drm_crtc_state *old_crtc_state) |
| { |
| - struct drm_pending_vblank_event *event = crtc->state->event; |
| struct rcar_du_crtc *rcrtc = to_rcar_crtc(crtc); |
| struct drm_device *dev = rcrtc->crtc.dev; |
| unsigned long flags; |
| |
| - if (event) { |
| + if (crtc->state->event) { |
| WARN_ON(drm_crtc_vblank_get(crtc) != 0); |
| |
| spin_lock_irqsave(&dev->event_lock, flags); |
| - rcrtc->event = event; |
| + rcrtc->event = crtc->state->event; |
| + crtc->state->event = NULL; |
| spin_unlock_irqrestore(&dev->event_lock, flags); |
| } |
| |