From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> Here's some prep work I cooked up while thinking how to handle the bigjoiner stuff. I coverted the .crtc_disable() side of things to follow the new approach of iterating the joined pipes at a lower level. Looks pretty reasonable to me in the end. The enable side is somewhat more messy so I left that as an excercise for the reader. TODO: need CI to actually check that things work Ville Syrjälä (8): drm/i915: Rename the crtc/crtc_states in the top level DDI hooks/etc drm/i915: Introduce intel_crtc_joined_pipe_mask() drm/i915: Extract intel_ddi_post_disable_hdmi_or_sst() drm/i915: Utilize intel_crtc_joined_pipe_mask() more drm/i915: Precompute disable_pipes bitmask in intel_commit_modeset_disables() drm/i915: Disable planes more atomically during modesets drm/i915: Simplify intel_old_crtc_state_disables() calling convention drm/i915: Handle joined pipes inside hsw_crtc_disable() drivers/gpu/drm/i915/display/intel_ddi.c | 357 ++++++++++--------- drivers/gpu/drm/i915/display/intel_display.c | 192 +++++----- drivers/gpu/drm/i915/display/intel_display.h | 1 + drivers/gpu/drm/i915/display/intel_dp_mst.c | 91 +++-- 4 files changed, 336 insertions(+), 305 deletions(-) -- 2.43.0