This is v2 of the first part of [1] refactoring the DP link recovery
logic in patches 1-26 of [1]. For the rationale please refer to the link
recovery parts in the cover letter of [1].

This v2 version has the following changes:

- Address the review comments from Jani:
  - Remove unneeded kernel-doc documentation.
  - Explicitly compare against and set recovery state enum values.
  - Expand the high-level documentation adding recovery flowcharts.

- Simplify resetting the recovery state as suggested by Ville after the
  sink/link capabilities change without an HPD pulse (i.e. without any
  signaling or via an RX_CAP_CHANGED signal), effectively rebasing patches
  1-26 in [1] on top of [2], which also resulted in dropping patches 1-3
  and 6 from [1]-

Cc: Jani Nikula <[email protected]>
Cc: Ville Syrjälä <[email protected]>

[1] https://lore.kernel.org/all/[email protected]
[2] https://lore.kernel.org/all/[email protected]

Imre Deak (22):
  drm/i915/dp_link_training: Introduce link training state struct
  drm/i915/dp_link_training: Factor out link training state reset helper
  drm/i915/dp_link_training: Flush commits in debugfs entries
  drm/i915/dp_link_training: Move link training helpers to link training
    code
  drm/i915/dp_link_training: Use link_training as base pointer in
    debugfs
  drm/i915/dp_link_training: Add helpers to access force retrain state
  drm/i915/dp_link_training: Move link recovery/debug state to
    link_training
  drm/i915/dp_link_training: Prevent repeated autoretrain attempts
  drm/i915/dp_link_training: Clamp sequential link training failure
    counter
  drm/i915/dp_link_training: Check for pending autoretrain explicitly
  drm/i915/dp_link_training: Add helper to query pending autoretrain
  drm/i915/dp_link_training: Add helper to query allowed autoretrain
  drm/i915/dp_link_training: Add helper to mark link training failure
  drm/i915/dp_link_training: Add helper to reset link recovery state
  drm/i915/dp_link_training: Track link recovery state with an enum
  drm/i915/dp_link_training: Add no-fallback link recovery state
  drm/i915/display: Factor out a helper to modeset a pipe with atomic
    state
  drm/i915/display: Simplify
    intel_modeset_commit_pipes_for_atomic_state()
  drm/i915/dp_link_training: Allocate atomic state for autoretrain
    modeset
  drm/i915/dp_link_training: Disallow autoretrains after failed modeset
  drm/i915/dp_link_training: Fix kernel-doc of
    intel_dp_init_lttpr_and_dprx_caps()
  drm/i915/dp_link_training: Document DP link recovery logic

 .../gpu/intel-display/dp-link-training.rst    |   8 +
 Documentation/gpu/intel-display/index.rst     |   1 +
 drivers/gpu/drm/i915/display/g4x_dp.c         |  10 +-
 drivers/gpu/drm/i915/display/intel_ddi.c      |  19 +-
 drivers/gpu/drm/i915/display/intel_display.c  |  42 +-
 drivers/gpu/drm/i915/display/intel_display.h  |   3 +
 .../drm/i915/display/intel_display_types.h    |   7 +-
 drivers/gpu/drm/i915/display/intel_dp.c       | 218 +----
 drivers/gpu/drm/i915/display/intel_dp.h       |   7 +-
 .../drm/i915/display/intel_dp_link_training.c | 891 +++++++++++++++++-
 .../drm/i915/display/intel_dp_link_training.h |  15 +
 11 files changed, 967 insertions(+), 254 deletions(-)
 create mode 100644 Documentation/gpu/intel-display/dp-link-training.rst

-- 
2.49.1

Reply via email to