All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/14] DP MST Refactors + debugging tools + suspend/resume reprobing
@ 2019-10-22  2:35 Lyude Paul
  2019-10-22  2:35 ` [PATCH v5 01/14] drm/dp_mst: Destroy MSTBs asynchronously Lyude Paul
                   ` (17 more replies)
  0 siblings, 18 replies; 27+ messages in thread
From: Lyude Paul @ 2019-10-22  2:35 UTC (permalink / raw)
  To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
  Cc: Neil Armstrong, David Airlie, Imre Deak, Joonas Lahtinen,
	Liviu Dudau, José Roberto de Souza, Chris Wilson, Huang Rui,
	Laurent Pinchart, Sam Ravnborg, Markus Elfring,
	Ville Syrjälä,
	David (ChunMing) Zhou, Mario Kleiner, Yu Zhao, David Francis,
	Jani Nikula, Jerry (Fangzhi) Zuo, Ben Skeggs, CK Hu,
	Thierry Reding

This is the final portion of the large series for adding MST
suspend/resume reprobing that I've been working on for quite a while
now. In addition, I:

* Refactored and cleaned up any code I ended up digging through in the
  process of understanding how some parts of these helpers worked.
* Added some debugging tools along the way that I ended up needing to
  figure out some issues in my own code

Note that there's still one important part of this process missing
that's not included in this patch series: EDID reprobing, which I
believe Stanislav Lisovskiy from Intel is currently working on. The main
purpose of this series is to fix the issue of the in-memory topology
state (e.g. connectors connected to an MST hub, branch devices, etc.)
going out of sync if a topology connected to a connector is swapped out
with a different topology while the system is resumed, or while the
device housing said connector is in runtime suspend.

As well, the debugging tools that are added in this include:
* A limited debugging utility for dumping the list of topology
  references on an MST port or branch connector whose topology reference
  count has reached 0
<sideband message dumping has been merged :)>

Lyude Paul (14):
  drm/dp_mst: Destroy MSTBs asynchronously
  drm/dp_mst: Remove PDT teardown in drm_dp_destroy_port() and refactor
  drm/dp_mst: Refactor pdt setup/teardown, add more locking
  drm/dp_mst: Handle UP requests asynchronously
  drm/dp_mst: Add probe_lock
  drm/dp_mst: Protect drm_dp_mst_port members with locking
  drm/dp_mst: Don't forget to update port->input in
    drm_dp_mst_handle_conn_stat()
  drm/dp_mst: Lessen indenting in drm_dp_mst_topology_mgr_resume()
  drm/nouveau: Don't grab runtime PM refs for HPD IRQs
  drm/nouveau: Resume hotplug interrupts earlier
  drm/amdgpu: Iterate through DRM connectors correctly
  drm/amdgpu/dm: Resume short HPD IRQs before resuming MST topology
  drm/dp_mst: Add basic topology reprobing when resuming
  drm/dp_mst: Add topology ref history tracking for debugging

 drivers/gpu/drm/Kconfig                       |   14 +
 .../gpu/drm/amd/amdgpu/amdgpu_connectors.c    |   13 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c    |   20 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_display.c   |    5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c  |   40 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c       |    5 +-
 drivers/gpu/drm/amd/amdgpu/dce_v10_0.c        |   34 +-
 drivers/gpu/drm/amd/amdgpu/dce_v11_0.c        |   34 +-
 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c         |   40 +-
 drivers/gpu/drm/amd/amdgpu/dce_v8_0.c         |   34 +-
 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |   41 +-
 .../drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c |   10 +-
 .../display/amdgpu_dm/amdgpu_dm_mst_types.c   |   28 +-
 drivers/gpu/drm/drm_dp_mst_topology.c         | 1185 +++++++++++++----
 drivers/gpu/drm/i915/display/intel_dp.c       |    3 +-
 drivers/gpu/drm/i915/display/intel_dp_mst.c   |   28 +-
 drivers/gpu/drm/nouveau/dispnv50/disp.c       |   38 +-
 drivers/gpu/drm/nouveau/nouveau_connector.c   |   33 +-
 drivers/gpu/drm/nouveau/nouveau_display.c     |   19 +-
 drivers/gpu/drm/radeon/radeon_dp_mst.c        |   24 +-
 include/drm/drm_dp_mst_helper.h               |  160 ++-
 21 files changed, 1329 insertions(+), 479 deletions(-)

-- 
2.21.0

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

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

end of thread, other threads:[~2019-10-22 20:14 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-22  2:35 [PATCH v5 00/14] DP MST Refactors + debugging tools + suspend/resume reprobing Lyude Paul
2019-10-22  2:35 ` [PATCH v5 01/14] drm/dp_mst: Destroy MSTBs asynchronously Lyude Paul
2019-10-22  2:35 ` [PATCH v5 02/14] drm/dp_mst: Remove PDT teardown in drm_dp_destroy_port() and refactor Lyude Paul
2019-10-22  2:35 ` [PATCH v5 03/14] drm/dp_mst: Refactor pdt setup/teardown, add more locking Lyude Paul
2019-10-22  2:35 ` [PATCH v5 04/14] drm/dp_mst: Handle UP requests asynchronously Lyude Paul
2019-10-22  2:36 ` [PATCH v5 05/14] drm/dp_mst: Add probe_lock Lyude Paul
2019-10-22 16:06   ` Sean Paul
2019-10-22  2:36 ` [PATCH v5 06/14] drm/dp_mst: Protect drm_dp_mst_port members with locking Lyude Paul
2019-10-22  2:36   ` Lyude Paul
2019-10-22 20:08   ` Sean Paul
2019-10-22 20:08     ` Sean Paul
2019-10-22  2:36 ` [PATCH v5 07/14] drm/dp_mst: Don't forget to update port->input in drm_dp_mst_handle_conn_stat() Lyude Paul
2019-10-22 20:14   ` Sean Paul
2019-10-22  2:36 ` [PATCH v5 08/14] drm/dp_mst: Lessen indenting in drm_dp_mst_topology_mgr_resume() Lyude Paul
2019-10-22  2:36 ` [PATCH v5 09/14] drm/nouveau: Don't grab runtime PM refs for HPD IRQs Lyude Paul
2019-10-22  2:36 ` [PATCH v5 10/14] drm/nouveau: Resume hotplug interrupts earlier Lyude Paul
2019-10-22  2:36 ` [PATCH v5 11/14] drm/amdgpu: Iterate through DRM connectors correctly Lyude Paul
2019-10-22  2:36   ` Lyude Paul
2019-10-22  2:36 ` [PATCH v5 12/14] drm/amdgpu/dm: Resume short HPD IRQs before resuming MST topology Lyude Paul
2019-10-22  2:36 ` [PATCH v5 13/14] drm/dp_mst: Add basic topology reprobing when resuming Lyude Paul
2019-10-22  2:36   ` Lyude Paul
2019-10-22  2:36 ` [PATCH v5 14/14] drm/dp_mst: Add topology ref history tracking for debugging Lyude Paul
2019-10-22  2:36   ` Lyude Paul
2019-10-22  2:54 ` ✗ Fi.CI.CHECKPATCH: warning for DP MST Refactors + debugging tools + suspend/resume reprobing Patchwork
2019-10-22  3:02 ` ✗ Fi.CI.SPARSE: " Patchwork
2019-10-22  3:19 ` ✓ Fi.CI.BAT: success " Patchwork
2019-10-22 12:46 ` ✓ Fi.CI.IGT: " Patchwork

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.