All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/21] drm/i915/dp_mst: Enable link training fallback
@ 2024-05-20 18:57 Imre Deak
  2024-05-20 18:57 ` [PATCH v2 01/21] drm/i915/dp_mst: Align TUs to avoid splitting symbols across MTPs Imre Deak
                   ` (25 more replies)
  0 siblings, 26 replies; 62+ messages in thread
From: Imre Deak @ 2024-05-20 18:57 UTC (permalink / raw)
  To: intel-gfx; +Cc: Jani Nikula, Ville Syrjälä

This is v2 of [1], addressing the feedback comments from Jani and Ville:

- Use a more generic 'link' substruct instead of 'link_train'. (Patch 2)
- Add the debugfs entries from intel_dp_link_training.c . (Patch 17-21)
- Add the link state check work to intel_digital_port instead of
  intel_dp, to allow using it later for HDMI. (Patch 7)
- Keep using the atomic state to look up MST connectors, avoiding the
  access to any object's current state. (Patch 9)
- Add a separate debugfs entry to get the max link rate/lane count.
  (Patch 18)

[1] https://lore.kernel.org/all/20240514191418.2863344-1-imre.deak@intel.com

Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>

Imre Deak (21):
  drm/i915/dp_mst: Align TUs to avoid splitting symbols across MTPs
  drm/i915/dp: Move link train params to a substruct in intel_dp
  drm/i915/dp: Move link train fallback to intel_dp_link_training.c
  drm/i915/dp: Sanitize intel_dp_get_link_train_fallback_values()
  drm/i915: Factor out function to modeset commit a set of pipes
  drm/i915/dp: Use a commit modeset for link retraining MST links
  drm/i915/dp: Recheck link state after modeset
  drm/i915/dp: Reduce link params only after retrying with unchanged
    params
  drm/i915/dp: Pass atomic state to link training function
  drm/i915/dp: Send a link training modeset-retry uevent to all MST
    connectors
  drm/i915/dp: Use check link state work in the hotplug handler
  drm/i915/dp: Use check link state work in the detect handler
  drm/i915/dp: Use check link state work in the HPD IRQ handler
  drm/i915/dp: Disable link retraining after the last fallback step
  drm/i915/dp_mst: Reset intel_dp->link_trained during disabling
  drm/i915/dp_mst: Enable link training fallback for MST
  drm/i915/dp: Add debugfs entries to set a target link rate/lane count
  drm/i915/dp: Add debugfs entries to get the max link rate/lane count
  drm/i915/dp: Add debugfs entry to force link training failure
  drm/i915/dp: Add debugfs entry to force link retrain
  drm/i915/dp: Add debugfs entry for link training info

 drivers/gpu/drm/i915/display/g4x_dp.c         |  29 +-
 drivers/gpu/drm/i915/display/intel_ddi.c      |  64 +-
 drivers/gpu/drm/i915/display/intel_ddi.h      |   4 +
 drivers/gpu/drm/i915/display/intel_display.c  |  34 ++
 drivers/gpu/drm/i915/display/intel_display.h  |   3 +
 .../drm/i915/display/intel_display_debugfs.c  |   2 +
 .../drm/i915/display/intel_display_types.h    |  26 +-
 drivers/gpu/drm/i915/display/intel_dp.c       | 241 ++++----
 drivers/gpu/drm/i915/display/intel_dp.h       |   8 +-
 .../drm/i915/display/intel_dp_link_training.c | 545 +++++++++++++++++-
 .../drm/i915/display/intel_dp_link_training.h |   8 +-
 drivers/gpu/drm/i915/display/intel_dp_mst.c   |  30 +-
 12 files changed, 805 insertions(+), 189 deletions(-)

-- 
2.43.3


^ permalink raw reply	[flat|nested] 62+ messages in thread
* [PATCH] drm/i915/display: Fixed the main link lost in MST
@ 2024-04-30  7:31 gareth.yu
  2024-05-30  5:24 ` [PATCH v2 12/21] drm/i915/dp: Use check link state work in the detect handler gareth.yu
  0 siblings, 1 reply; 62+ messages in thread
From: gareth.yu @ 2024-04-30  7:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: gareth.yu, Tejas Upadhyay, Matt Roper, Ville Syrjälä

From: Gareth Yu <gareth.yu@intel.com>

Re-train the main link for the main link lost in MST. The previous
version doesn't cover MST mode.

v5: Move link status check to the location which covers MST mode
v6: Correct Tejas' email address in cc

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10902
Cc: Tejas Upadhyay <tejas.upadhyay@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Gareth Yu <gareth.yu@intel.com>
---
 drivers/gpu/drm/i915/display/intel_dp.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index e05e25cd4a94..8043740b4233 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -5891,16 +5891,6 @@ intel_dp_detect(struct drm_connector *connector,
 
 	intel_dp_print_rates(intel_dp);
 
-	if (intel_dp->is_mst) {
-		/*
-		 * If we are in MST mode then this connector
-		 * won't appear connected or have anything
-		 * with EDID on it
-		 */
-		status = connector_status_disconnected;
-		goto out;
-	}
-
 	/*
 	 * Some external monitors do not signal loss of link synchronization
 	 * with an IRQ_HPD, so force a link status check.
@@ -5911,6 +5901,16 @@ intel_dp_detect(struct drm_connector *connector,
 			return ret;
 	}
 
+	if (intel_dp->is_mst) {
+		/*
+		 * If we are in MST mode then this connector
+		 * won't appear connected or have anything
+		 * with EDID on it
+		 */
+		status = connector_status_disconnected;
+		goto out;
+	}
+
 	/*
 	 * Clearing NACK and defer counts to get their exact values
 	 * while reading EDID which are required by Compliance tests
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 62+ messages in thread

end of thread, other threads:[~2024-06-10 16:13 UTC | newest]

Thread overview: 62+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-20 18:57 [PATCH v2 00/21] drm/i915/dp_mst: Enable link training fallback Imre Deak
2024-05-20 18:57 ` [PATCH v2 01/21] drm/i915/dp_mst: Align TUs to avoid splitting symbols across MTPs Imre Deak
2024-05-22 18:22   ` Ville Syrjälä
2024-05-20 18:58 ` [PATCH v2 02/21] drm/i915/dp: Move link train params to a substruct in intel_dp Imre Deak
2024-05-20 18:58 ` [PATCH v2 03/21] drm/i915/dp: Move link train fallback to intel_dp_link_training.c Imre Deak
2024-05-22 18:23   ` Ville Syrjälä
2024-06-10 16:13     ` Manasi Navare
2024-05-20 18:58 ` [PATCH v2 04/21] drm/i915/dp: Sanitize intel_dp_get_link_train_fallback_values() Imre Deak
2024-05-22 18:23   ` Ville Syrjälä
2024-05-22 18:45     ` Imre Deak
2024-05-23 15:48     ` Jani Nikula
2024-05-20 18:58 ` [PATCH v2 05/21] drm/i915: Factor out function to modeset commit a set of pipes Imre Deak
2024-05-22 18:23   ` Ville Syrjälä
2024-05-20 18:58 ` [PATCH v2 06/21] drm/i915/dp: Use a commit modeset for link retraining MST links Imre Deak
2024-05-23 12:58   ` Ville Syrjälä
2024-05-23 13:26     ` Imre Deak
2024-05-20 18:58 ` [PATCH v2 07/21] drm/i915/dp: Recheck link state after modeset Imre Deak
2024-05-22 13:38   ` Imre Deak
2024-05-23 13:23     ` Ville Syrjälä
2024-05-23 13:27       ` Ville Syrjälä
2024-05-23 13:30   ` Ville Syrjälä
2024-05-23 13:46     ` Imre Deak
2024-05-23 13:58       ` Ville Syrjälä
2024-05-23 14:12         ` Imre Deak
2024-05-20 18:58 ` [PATCH v2 08/21] drm/i915/dp: Reduce link params only after retrying with unchanged params Imre Deak
2024-05-20 18:58 ` [PATCH v2 09/21] drm/i915/dp: Pass atomic state to link training function Imre Deak
2024-05-23 14:41   ` Ville Syrjälä
2024-05-23 14:47     ` Imre Deak
2024-05-23 14:54       ` Ville Syrjälä
2024-05-23 14:58         ` Imre Deak
2024-05-23 15:05         ` Ville Syrjälä
2024-05-20 18:58 ` [PATCH v2 10/21] drm/i915/dp: Send a link training modeset-retry uevent to all MST connectors Imre Deak
2024-05-20 18:58 ` [PATCH v2 11/21] drm/i915/dp: Use check link state work in the hotplug handler Imre Deak
2024-05-20 18:58 ` [PATCH v2 12/21] drm/i915/dp: Use check link state work in the detect handler Imre Deak
2024-05-23 15:08   ` Ville Syrjälä
2024-05-23 15:29     ` Imre Deak
2024-05-23 15:43       ` Ville Syrjälä
2024-05-23 15:54         ` Imre Deak
2024-05-27  5:14   ` gareth.yu
2024-05-27 11:30     ` Imre Deak
2024-05-28  5:33       ` Yu, Gareth
2024-05-20 18:58 ` [PATCH v2 13/21] drm/i915/dp: Use check link state work in the HPD IRQ handler Imre Deak
2024-05-20 18:58 ` [PATCH v2 14/21] drm/i915/dp: Disable link retraining after the last fallback step Imre Deak
2024-05-23 15:28   ` Ville Syrjälä
2024-05-23 16:36     ` Imre Deak
2024-05-20 18:58 ` [PATCH v2 15/21] drm/i915/dp_mst: Reset intel_dp->link_trained during disabling Imre Deak
2024-05-20 18:58 ` [PATCH v2 16/21] drm/i915/dp_mst: Enable link training fallback for MST Imre Deak
2024-05-20 18:58 ` [PATCH v2 17/21] drm/i915/dp: Add debugfs entries to set a target link rate/lane count Imre Deak
2024-05-23 15:25   ` Ville Syrjälä
2024-05-23 16:15     ` Imre Deak
2024-05-20 18:58 ` [PATCH v2 18/21] drm/i915/dp: Add debugfs entries to get the max " Imre Deak
2024-05-20 18:58 ` [PATCH v2 19/21] drm/i915/dp: Add debugfs entry to force link training failure Imre Deak
2024-05-23 15:29   ` Ville Syrjälä
2024-05-23 16:32     ` Imre Deak
2024-05-20 18:58 ` [PATCH v2 20/21] drm/i915/dp: Add debugfs entry to force link retrain Imre Deak
2024-05-20 18:58 ` [PATCH v2 21/21] drm/i915/dp: Add debugfs entry for link training info Imre Deak
2024-05-20 19:30 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/dp_mst: Enable link training fallback (rev3) Patchwork
2024-05-20 19:30 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-05-20 19:41 ` ✓ Fi.CI.BAT: success " Patchwork
2024-05-21  5:58 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-05-22  4:20 ` ✓ Fi.CI.IGT: success " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
2024-04-30  7:31 [PATCH] drm/i915/display: Fixed the main link lost in MST gareth.yu
2024-05-30  5:24 ` [PATCH v2 12/21] drm/i915/dp: Use check link state work in the detect handler gareth.yu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.