71 lines
2.8 KiB
Diff
71 lines
2.8 KiB
Diff
From 3a501b2c3c0507c8f560183ac79617fe975b8594 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Filip=20Matijevi=C4=87?= <filip.matijevic.pz@gmail.com>
|
|
Date: Thu, 2 Nov 2017 18:46:21 +0100
|
|
Subject: [PATCH 05/11] Revert "drm/omap: work-around for omap3 display enable"
|
|
|
|
This reverts commit fc5cc9678e130196012c17b37e555d53d3d3476b.
|
|
---
|
|
drivers/gpu/drm/omapdrm/omap_drv.c | 47 +++++++++++-------------------
|
|
1 file changed, 17 insertions(+), 30 deletions(-)
|
|
|
|
diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c
|
|
index 3632854c2b91..54bc31679b27 100644
|
|
--- a/drivers/gpu/drm/omapdrm/omap_drv.c
|
|
+++ b/drivers/gpu/drm/omapdrm/omap_drv.c
|
|
@@ -74,36 +74,23 @@ static void omap_atomic_commit_tail(struct drm_atomic_state *old_state)
|
|
/* Apply the atomic update. */
|
|
drm_atomic_helper_commit_modeset_disables(dev, old_state);
|
|
|
|
- if (priv->omaprev != 0x3430) {
|
|
- /* With the current dss dispc implementation we have to enable
|
|
- * the new modeset before we can commit planes. The dispc ovl
|
|
- * configuration relies on the video mode configuration been
|
|
- * written into the HW when the ovl configuration is
|
|
- * calculated.
|
|
- *
|
|
- * This approach is not ideal because after a mode change the
|
|
- * plane update is executed only after the first vblank
|
|
- * interrupt. The dispc implementation should be fixed so that
|
|
- * it is able use uncommitted drm state information.
|
|
- */
|
|
- drm_atomic_helper_commit_modeset_enables(dev, old_state);
|
|
- omap_atomic_wait_for_completion(dev, old_state);
|
|
-
|
|
- drm_atomic_helper_commit_planes(dev, old_state, 0);
|
|
-
|
|
- drm_atomic_helper_commit_hw_done(old_state);
|
|
- } else {
|
|
- /*
|
|
- * OMAP3 DSS seems to have issues with the work-around above,
|
|
- * resulting in endless sync losts if a crtc is enabled without
|
|
- * a plane. For now, skip the WA for OMAP3.
|
|
- */
|
|
- drm_atomic_helper_commit_planes(dev, old_state, 0);
|
|
-
|
|
- drm_atomic_helper_commit_modeset_enables(dev, old_state);
|
|
-
|
|
- drm_atomic_helper_commit_hw_done(old_state);
|
|
- }
|
|
+ /* With the current dss dispc implementation we have to enable
|
|
+ * the new modeset before we can commit planes. The dispc ovl
|
|
+ * configuration relies on the video mode configuration been
|
|
+ * written into the HW when the ovl configuration is
|
|
+ * calculated.
|
|
+ *
|
|
+ * This approach is not ideal because after a mode change the
|
|
+ * plane update is executed only after the first vblank
|
|
+ * interrupt. The dispc implementation should be fixed so that
|
|
+ * it is able use uncommitted drm state information.
|
|
+ */
|
|
+ drm_atomic_helper_commit_modeset_enables(dev, old_state);
|
|
+ omap_atomic_wait_for_completion(dev, old_state);
|
|
+
|
|
+ drm_atomic_helper_commit_planes(dev, old_state, 0);
|
|
+
|
|
+ drm_atomic_helper_commit_hw_done(old_state);
|
|
|
|
/*
|
|
* Wait for completion of the page flips to ensure that old buffers
|
|
--
|
|
2.17.0
|
|
|