According to BSpec 49190, when enabling crtcs, we first setup slave and then master crtc, however for disabling it should go vice versa, i.e first master, then slave, however current code does disabling in a same way as enabling. Fix this, by skipping non-master crtcs, instead of non-slaves. Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@xxxxxxxxx> --- drivers/gpu/drm/i915/display/intel_display.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index 0490c6412ab5..68958ba0ef49 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -6662,7 +6662,7 @@ static void intel_commit_modeset_disables(struct intel_atomic_state *state) */ if (!is_trans_port_sync_slave(old_crtc_state) && !intel_dp_mst_is_slave_trans(old_crtc_state) && - !intel_crtc_is_bigjoiner_slave(old_crtc_state)) + !intel_crtc_is_bigjoiner_master(old_crtc_state)) continue; intel_old_crtc_state_disables(state, old_crtc_state, -- 2.37.3