summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/omapdrm
diff options
context:
space:
mode:
authorArchit Taneja <archit@ti.com>2014-04-11 09:23:34 +0200
committerTomi Valkeinen <tomi.valkeinen@ti.com>2014-04-15 12:35:28 +0200
commitbc905aced30e48a39af7c452bf46228d7c6188b9 (patch)
tree46b7509e1966d998b1898c52ee8f921801140e40 /drivers/gpu/drm/omapdrm
parentdrm/omap: Fix crash when using LCD3 overlay manager (diff)
downloadlinux-bc905aced30e48a39af7c452bf46228d7c6188b9.tar.xz
linux-bc905aced30e48a39af7c452bf46228d7c6188b9.zip
drm/omap: Use old_fb to synchronize between successive page flips
omap_crtc->old_fb is used to check whether the previous page flip has completed or not. However, it's never initialized to anything, so it's always NULL. This results in the check to always succeed, and the page_flip to proceed. Initialize old_fb to the fb that we intend to flip to through page_flip, and therefore prevent a future page flip to proceed if the last one didn't complete. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/gpu/drm/omapdrm')
-rw-r--r--drivers/gpu/drm/omapdrm/omap_crtc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c b/drivers/gpu/drm/omapdrm/omap_crtc.c
index 46f8e1e40e88..00798247190b 100644
--- a/drivers/gpu/drm/omapdrm/omap_crtc.c
+++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
@@ -360,7 +360,7 @@ static int omap_crtc_page_flip_locked(struct drm_crtc *crtc,
}
omap_crtc->event = event;
- primary->fb = fb;
+ omap_crtc->old_fb = primary->fb = fb;
/*
* Hold a reference temporarily until the crtc is updated