mbox series

[00/22] drm/i915: Bigjoiner modeset sequence redesign and MST support

Message ID 20240329011254.24160-1-ville.syrjala@linux.intel.com (mailing list archive)
Headers show
Series drm/i915: Bigjoiner modeset sequence redesign and MST support | expand

Message

Ville Syrjälä March 29, 2024, 1:12 a.m. UTC
From: Ville Syrjälä <ville.syrjala@linux.intel.com>

I started to look at the MST+bignoier stuff floating around
and then decided that there's just too much noise in the way,
and so did a quick pass over the whole thing to clean and
fix things up ahead of time.

I then applied the stuff from Stan and Vidya on top of what
I had and fixed it up enough to do a quick smoke test on my
ADL. It survived a 2x2 MST configuration with uncompressed
joiner enabled on both outputs. I don't have any DSC capable
hardware around so couldn't test bigjoiner.

Anyways, here's the whole pile for people to ruminate
over during Easter.

Also pushed it here:
https://github.com/vsyrjala/linux.git bigjoiner_mst_etc

Stanislav Lisovskiy (1):
  drm/i915: Handle joined pipes inside hsw_crtc_enable()

Vidya Srinivas (1):
  drm/i915: Allow bigjoiner for MST

Ville Syrjälä (20):
  drm/i915: Disable port sync when bigjoiner is used
  drm/i915: Fix intel_modeset_pipe_config_late() for bigjoiner
  drm/i915: Disable live M/N updates when using bigjoiner
  drm/i915/vrr: Disable VRR when using bigjoiner
  drm/i915: Remove DRM_MODE_FLAG_DBLSCAN checks from .mode_valid() hooks
  drm/i915: Shuffle DP .mode_valid() checks
  drm/i915: Clean up glk_pipe_scaler_clock_gating_wa()
  drm/i915: Extract glk_need_scaler_clock_gating_wa()
  drm/i915: s/intel_dp_can_bigjoiner()/intel_dp_can_bigjoiner()/
  drm/i915: Extract intel_dp_joiner_needs_dsc()
  drm/i915/mst: Check intel_dp_joiner_needs_dsc()
  drm/i915: Pass connector to intel_dp_need_bigjoiner()
  drm/i915/mst: Limit MST+DSC to TGL+
  drm/i915/mst: Reject FEC+MST on ICL
  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: Handle joined pipes inside hsw_crtc_disable()
  drm/i915/mst: Add bigjoiner handling to MST modeset sequence
  drm/i915: Use debugfs_create_bool() for "i915_bigjoiner_force_enable"

 drivers/gpu/drm/i915/display/intel_crt.c      |   3 -
 drivers/gpu/drm/i915/display/intel_ddi.c      |  79 +++--
 drivers/gpu/drm/i915/display/intel_display.c  | 330 ++++++++++--------
 drivers/gpu/drm/i915/display/intel_display.h  |   7 +
 .../drm/i915/display/intel_display_debugfs.c  |  44 +--
 .../drm/i915/display/intel_display_device.h   |   1 +
 drivers/gpu/drm/i915/display/intel_dp.c       |  55 +--
 drivers/gpu/drm/i915/display/intel_dp.h       |   4 +-
 drivers/gpu/drm/i915/display/intel_dp_mst.c   | 102 +++---
 drivers/gpu/drm/i915/display/intel_dsi.c      |   3 -
 drivers/gpu/drm/i915/display/intel_dvo.c      |   3 -
 drivers/gpu/drm/i915/display/intel_lvds.c     |   3 -
 drivers/gpu/drm/i915/display/intel_sdvo.c     |   3 -
 drivers/gpu/drm/i915/display/intel_tv.c       |   3 -
 drivers/gpu/drm/i915/display/intel_vrr.c      |   7 +
 15 files changed, 347 insertions(+), 300 deletions(-)