Updating the plane may interrupt ongoing display
updates, so wait for any pending operations.

Signed-off-By: Sebastian Reichel <sre at kernel.org>
---
 drivers/gpu/drm/omapdrm/omap_drv.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c 
b/drivers/gpu/drm/omapdrm/omap_drv.c
index a3ff35f5f6cd..e142a4245766 100644
--- a/drivers/gpu/drm/omapdrm/omap_drv.c
+++ b/drivers/gpu/drm/omapdrm/omap_drv.c
@@ -95,6 +95,10 @@ static void omap_atomic_complete(struct 
omap_atomic_state_commit *commit)
        /* Apply the atomic update. */
        dispc_runtime_get();

+       dev_dbg(dev->dev, "omap_atomic_complete");
+
+       omap_atomic_wait_for_completion(dev, old_state);
+
        drm_atomic_helper_commit_modeset_disables(dev, old_state);
        drm_atomic_helper_commit_planes(dev, old_state, false);
        drm_atomic_helper_commit_modeset_enables(dev, old_state);
-- 
2.7.0

Reply via email to