From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> An attempt at making the bigjoiner state tracking both smaller and more flexible for future needs. All we really need is a bitmask of pipes. I also managed to fix a bunch of issues with the state copy ... I think. It's a bit hard to know for sure since I don't have a DSC capably displauy so I'm just forcing the driver to spew out DSC but obviously I can't actually see anything on the screen. The next thing that needs fixing is the actual modset sequence since it's still kinda terrible. Also not flexible enough for those future needs. I'm thinking we need suck all the logic into the encoder hooks, and let those iterate over the pipes at approprite times. But that's for another time. Pushed the lot here if someone wants to consume it easier: git://github.com/vsyrjala/linux.git bigjoiner_pipe_bitmask Ville Syrjälä (10): drm/i915: Flag crtc scaling_filter changes as modeset drm/i915: Fix bigjoiner state copy fails drm/i915: Remove weird code from intel_atomic_check_bigjoiner() drm/i915: Clean up the bigjoiner state copy logic drm/i915: Nuke some dead code drm/i915: Introduce intel_crtc_is_bigjoiner_{slave,master}() drm/i915: Convert for_each_intel_crtc_mask() to take a pipe mask instead drm/i915: Use for_each_intel_crtc_in_pipe_mask() more drm/i915: Return both master and slave pipes from enabled_bigjoiner_pipes() drm/i915: Change bigjoiner state tracking to use the pipe bitmask drivers/gpu/drm/i915/display/intel_atomic.c | 11 - drivers/gpu/drm/i915/display/intel_atomic.h | 2 - .../gpu/drm/i915/display/intel_atomic_plane.c | 9 +- drivers/gpu/drm/i915/display/intel_ddi.c | 14 +- drivers/gpu/drm/i915/display/intel_display.c | 522 ++++++++++++------ drivers/gpu/drm/i915/display/intel_display.h | 8 +- .../drm/i915/display/intel_display_debugfs.c | 7 +- .../drm/i915/display/intel_display_types.h | 7 +- drivers/gpu/drm/i915/display/intel_dp.c | 34 +- .../drm/i915/display/intel_plane_initial.c | 7 - drivers/gpu/drm/i915/display/intel_vdsc.c | 47 +- drivers/gpu/drm/i915/display/intel_vdsc.h | 1 - 12 files changed, 385 insertions(+), 284 deletions(-) -- 2.34.1