[PATCH 00/31] drm/i915: Add support for TBT BW allocation mode

Imre Deak imre.deak at intel.com
Wed Jan 3 00:29:32 UTC 2024


This patchset adds support for the TBT BW allocation mode. It also
includes fixes for existing hotplug handling issues, which become more
visible when the TBT BW allocation mode is enabled, since that uses HPD
IRQs for communicating the TBT CM.

Signed-off-by: Imre Deak <imre.deak at intel.com>

Imre Deak (31):
  drm/i915: Init DRM connector polled field early
  drm/i915: Keep connector polled state disabled after storm
  drm/i915: Move audio deinit after disabling polling
  drm/i915: Disable intel HPD poll after DRM poll init/enable
  drm/i915: Suspend FB during shutdown
  drm/i915: Suspend FB earlier during system suspend
  drm/i915: Disable display access during driver init/shutdown
  drm/i915: Disable hotplug detection works during driver init/shutdown
  drm/i915: Disable hotplug detection handlers during driver
    init/shutdown
  drm/i915: Add digital port lock/unlock hooks
  drm/i915: Filter out glitches during hotplug detection
  drm/i915/dp: Abort AUX on disconnected native DP ports
  drm/dp: Add drm_dp_max_dprx_data_rate()
  drm/dp: Add support for DP tunneling
  drm/i915/dp_mst: Add support to notify MST connectors to retry
    modesets
  drm/i915/dp: Use drm_dp_max_dprx_data_rate()
  drm/i915/dp: Factor out intel_dp_config_required_rate()
  drm/i915/dp: Export intel_dp_max_common_rate/lane_count()
  drm/i915/dp: Factor out intel_dp_update_sink_caps()
  drm/i915/dp: Factor out intel_dp_read_dprx_caps()
  drm/i915/dp: Add intel_dp_max_link_data_rate()
  drm/i915/dp: Add way to get active pipes with syncing commits
  drm/i915/dp: Add support for DP tunnel BW allocation
  drm/i915/dp: Add DP tunnel atomic state and check BW limit
  drm/i915/dp: Account for tunnel BW limit in
    intel_dp_max_link_data_rate()
  drm/i915/dp: Compute DP tunel BW during encoder state computation
  drm/i915/dp: Allocate/free DP tunnel BW in the encoder enable/disable
    hooks
  drm/i915/dp: Handle DP tunnel IRQs
  drm/i915/dp: Call intel_dp_sync_state() for DDI DP encoders
  drm/i915/dp: Suspend/resume DP tunnels
  drm/i915/dp: Enable DP tunnel BW allocation mode

 drivers/gpu/drm/display/Kconfig               |   17 +
 drivers/gpu/drm/display/Makefile              |    2 +
 drivers/gpu/drm/display/drm_dp_helper.c       |   58 +
 drivers/gpu/drm/display/drm_dp_tunnel.c       | 1703 +++++++++++++++++
 drivers/gpu/drm/i915/Kconfig                  |   10 +
 drivers/gpu/drm/i915/Kconfig.debug            |    1 +
 drivers/gpu/drm/i915/Makefile                 |    3 +
 drivers/gpu/drm/i915/display/g4x_dp.c         |   28 +
 drivers/gpu/drm/i915/display/intel_atomic.c   |   10 +
 drivers/gpu/drm/i915/display/intel_crt.c      |    5 +
 drivers/gpu/drm/i915/display/intel_ddi.c      |   14 +-
 drivers/gpu/drm/i915/display/intel_display.c  |   29 +-
 .../gpu/drm/i915/display/intel_display_core.h |   14 +
 .../drm/i915/display/intel_display_driver.c   |   98 +-
 .../drm/i915/display/intel_display_driver.h   |    6 +
 .../drm/i915/display/intel_display_types.h    |   12 +
 drivers/gpu/drm/i915/display/intel_dp.c       |  317 ++-
 drivers/gpu/drm/i915/display/intel_dp.h       |   20 +-
 drivers/gpu/drm/i915/display/intel_dp_aux.c   |   29 +-
 .../drm/i915/display/intel_dp_link_training.c |   32 +-
 .../drm/i915/display/intel_dp_link_training.h |    1 +
 drivers/gpu/drm/i915/display/intel_dp_mst.c   |   23 +-
 .../gpu/drm/i915/display/intel_dp_tunnel.c    |  671 +++++++
 .../gpu/drm/i915/display/intel_dp_tunnel.h    |  131 ++
 drivers/gpu/drm/i915/display/intel_dvo.c      |    5 +
 drivers/gpu/drm/i915/display/intel_hdmi.c     |    8 +
 drivers/gpu/drm/i915/display/intel_hotplug.c  |  171 +-
 drivers/gpu/drm/i915/display/intel_hotplug.h  |    4 +
 drivers/gpu/drm/i915/display/intel_link_bw.c  |    5 +
 drivers/gpu/drm/i915/display/intel_panel.c    |    4 +
 drivers/gpu/drm/i915/display/intel_sdvo.c     |    6 +
 drivers/gpu/drm/i915/display/intel_tc.c       |   28 +-
 drivers/gpu/drm/i915/display/intel_tc.h       |    2 +-
 drivers/gpu/drm/i915/display/intel_tv.c       |    5 +
 drivers/gpu/drm/i915/i915_driver.c            |   22 +-
 include/drm/display/drm_dp.h                  |   60 +
 include/drm/display/drm_dp_helper.h           |    2 +
 include/drm/display/drm_dp_tunnel.h           |  270 +++
 38 files changed, 3645 insertions(+), 181 deletions(-)
 create mode 100644 drivers/gpu/drm/display/drm_dp_tunnel.c
 create mode 100644 drivers/gpu/drm/i915/display/intel_dp_tunnel.c
 create mode 100644 drivers/gpu/drm/i915/display/intel_dp_tunnel.h
 create mode 100644 include/drm/display/drm_dp_tunnel.h

-- 
2.39.2



More information about the Intel-gfx-trybot mailing list