Revert "drm: omapdrm: Let the DRM core skip plane commit on inactive CRTCs"
authorJyri Sarha <jsarha@ti.com>
Fri, 27 Jan 2017 10:04:54 +0000 (12:04 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 16 Feb 2017 12:09:55 +0000 (14:09 +0200)
This reverts commit dadf4659d0608e034b6633f30300c2eff2dafb4c.

If planes are not disabled when the they are not on any crtc anymore
they will remain active and may show as "ghosts" when the crtc they
were last on is active again.

Signed-off-by: Jyri Sarha <jsarha@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/gpu/drm/omapdrm/omap_crtc.c
drivers/gpu/drm/omapdrm/omap_drv.c

index dd47dc1..b68c70e 100644 (file)
@@ -410,13 +410,7 @@ static void omap_crtc_atomic_flush(struct drm_crtc *crtc,
                dispc_mgr_set_gamma(omap_crtc->channel, lut, length);
        }
 
-       /*
-        * Only flush the CRTC if it is currently enabled. CRTCs that require a
-        * mode set are disabled prior plane updates and enabled afterwards.
-        * They are thus not active (regardless of what their CRTC core state
-        * reports) and the DRM core could thus call this function even though
-        * the CRTC is currently disabled. Do nothing in that case.
-        */
+       /* Only flush the CRTC if it is currently enabled. */
        if (!omap_crtc->enabled)
                return;
 
index afe8f05..f85c9c8 100644 (file)
@@ -96,8 +96,7 @@ static void omap_atomic_complete(struct omap_atomic_state_commit *commit)
        dispc_runtime_get();
 
        drm_atomic_helper_commit_modeset_disables(dev, old_state);
-       drm_atomic_helper_commit_planes(dev, old_state,
-                                       DRM_PLANE_COMMIT_ACTIVE_ONLY);
+       drm_atomic_helper_commit_planes(dev, old_state, 0);
        drm_atomic_helper_commit_modeset_enables(dev, old_state);
 
        omap_atomic_wait_for_completion(dev, old_state);