Add a drm_mode_set_crtcinfo() call in our CRTC's mode_fixup callback
to ensure that any adjustments to the mode made by connectors etc are
properly accounted for by the CRTC.

Signed-off-by: Russell King <rmk+ker...@armlinux.org.uk>
---
 drivers/gpu/drm/armada/armada_crtc.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/armada/armada_crtc.c 
b/drivers/gpu/drm/armada/armada_crtc.c
index e81e57823b66..d802a6bc2d9f 100644
--- a/drivers/gpu/drm/armada/armada_crtc.c
+++ b/drivers/gpu/drm/armada/armada_crtc.c
@@ -180,6 +180,13 @@ static bool armada_drm_crtc_mode_fixup(struct drm_crtc 
*crtc,
            adj->flags & DRM_MODE_FLAG_INTERLACE)
                return false;
 
+       /*
+        * Set CRTC modesetting parameters for the adjusted mode.  This is
+        * applied after the connectors, bridges, and encoders have fixed up
+        * this mode, as described above drm_atomic_helper_check_modeset().
+        */
+       drm_mode_set_crtcinfo(adj, CRTC_INTERLACE_HALVE_V);
+
        /* Check whether the display mode is possible */
        ret = dcrtc->variant->compute_clock(dcrtc, adj, NULL);
        if (ret)
-- 
2.7.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to