drm/i915: Disable port sync when bigjoiner is used
authorjsg <jsg@openbsd.org>
Thu, 18 Apr 2024 01:02:15 +0000 (01:02 +0000)
committerjsg <jsg@openbsd.org>
Thu, 18 Apr 2024 01:02:15 +0000 (01:02 +0000)
From Ville Syrjala
2708354ffb70c0a6ec8dd6944077ca7e50a2688b in linux-6.6.y/6.6.28
0653d501409eeb9f1deb7e4c12e4d0d2c9f1cba1 in mainline linux

sys/dev/pci/drm/i915/display/intel_ddi.c

index 93a2366..871ddf9 100644 (file)
@@ -4111,7 +4111,12 @@ static bool m_n_equal(const struct intel_link_m_n *m_n_1,
 static bool crtcs_port_sync_compatible(const struct intel_crtc_state *crtc_state1,
                                       const struct intel_crtc_state *crtc_state2)
 {
+       /*
+        * FIXME the modeset sequence is currently wrong and
+        * can't deal with bigjoiner + port sync at the same time.
+        */
        return crtc_state1->hw.active && crtc_state2->hw.active &&
+               !crtc_state1->bigjoiner_pipes && !crtc_state2->bigjoiner_pipes &&
                crtc_state1->output_types == crtc_state2->output_types &&
                crtc_state1->output_format == crtc_state2->output_format &&
                crtc_state1->lane_count == crtc_state2->lane_count &&