[PATCH v2 00/17] drm/i915: drm/i915/dp_mst: Fix MST payload removal during output disabling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is v2 of [1], addressing the review comments from Ville. It also
adds HW state verification for MST encoders and a workaround for a
payload allocation problem in a DELL monitor's MST hub I noticed during
testing.

Tested on HSW, ICL, ADLP.

[1] https://lore.kernel.org/intel-gfx/20230125114852.748337-1-imre.deak@xxxxxxxxx/

Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
Cc: Lyude Paul <lyude@xxxxxxxxxx> 

Imre Deak (17):
  drm/i915/dp_mst: Add the MST topology state for modesetted CRTCs
  drm/display/dp_mst: Handle old/new payload states in
    drm_dp_remove_payload()
  drm/display/dp_mst: Add drm_atomic_get_old_mst_topology_state()
  drm/i915/dp_mst: Fix payload removal during output disabling
  drm/display/dp_mst: Fix the payload VCPI check in
    drm_dp_mst_dump_topology()
  drm/display/dp_mst: Sanitize payload iteration in
    drm_dp_mst_dump_topology()
  drm/i915: Factor out helpers for modesetting CRTCs and connectors
  drm/i915/dp_mst: Move getting the MST topology state earlier to
    connector check
  drm/display/dp_mst: Add a helper to verify the MST payload state
  drm/i915/dp_mst: Verify the MST state of modesetted outputs
  drm/display/dp_mst: Add helpers to query for payload allocation errors
  drm/display/dp_mst: Add helpers to query payload allocation properties
  drm/display/dp_mst: Export the DP_PAYLOAD_TABLE_SIZE definition
  drm/display/dp_mst: Factor out a helper to reset the payload table
  drm/dp: Add a quirk for a DELL P2715Q MST payload allocation problem
  drm/i915/dp_mst: Add workaround for a DELL P2715Q payload allocation
    problem
  drm/i915/dp_mst: Verify the HW state of MST encoders

 .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c |   2 +-
 drivers/gpu/drm/display/drm_dp_helper.c       |   2 +
 drivers/gpu/drm/display/drm_dp_mst_topology.c | 354 ++++++++++++++++--
 drivers/gpu/drm/i915/display/intel_atomic.c   | 140 +++++++
 drivers/gpu/drm/i915/display/intel_atomic.h   |   8 +
 drivers/gpu/drm/i915/display/intel_cdclk.c    |   2 +-
 drivers/gpu/drm/i915/display/intel_ddi.c      |  91 ++++-
 drivers/gpu/drm/i915/display/intel_display.c  |  59 +--
 drivers/gpu/drm/i915/display/intel_display.h  |   2 -
 .../drm/i915/display/intel_display_types.h    |  19 +
 drivers/gpu/drm/i915/display/intel_dp.c       |  43 +--
 drivers/gpu/drm/i915/display/intel_dp.h       |   1 +
 drivers/gpu/drm/i915/display/intel_dp_mst.c   | 270 +++++++++++--
 drivers/gpu/drm/i915/display/intel_dp_mst.h   |   9 +
 .../drm/i915/display/intel_modeset_verify.c   |   2 +
 drivers/gpu/drm/i915/display/skl_watermark.c  |   2 +-
 drivers/gpu/drm/i915/i915_reg.h               |   6 +-
 drivers/gpu/drm/nouveau/dispnv50/disp.c       |   2 +-
 include/drm/display/drm_dp.h                  |   5 +
 include/drm/display/drm_dp_helper.h           |   8 +
 include/drm/display/drm_dp_mst_helper.h       |  34 +-
 21 files changed, 878 insertions(+), 183 deletions(-)

-- 
2.37.1




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux