[PULL] topic/mst-suspend-resume-reprobe-2019-10-29-2

Daniel Vetter daniel.vetter at ffwll.ch
Wed Oct 30 09:21:33 UTC 2019


On Tue, Oct 29, 2019 at 11:06 PM Lyude Paul <lyude at redhat.com> wrote:
>
> topic/mst-suspend-resume-reprobe-2019-10-29-2:
> UAPI Changes:
>
> Cross-subsystem Changes:
>
> Core Changes:
> * Handle UP requests asynchronously in the DP MST helpers, fixing
>   hotplug notifications and allowing us to implement suspend/resume
>   reprobing
> * Add basic suspend/resume reprobing to the DP MST helpers
> * Improve locking for link address reprobing and connection status
>   request handling in the DP MST helpers
> * Miscellaneous refactoring in the DP MST helpers
> * Add a Kconfig option to the DP MST helpers to enable tracking of
>   gets/puts for topology references for debugging purposes
>
> Driver Changes:
> * nouveau: Resume hotplug interrupts earlier, so that sideband
>   messages may be transmitted during resume and thus allow
>   suspend/resume reprobing for DP MST to work
> * nouveau: Avoid grabbing runtime PM references when handling short DP
>   pulses, so that handling sideband messages in resume codepaths with the
>   DP MST helpers doesn't deadlock us
> * i915, nouveau, amdgpu, radeon: Use detect_ctx for probing MST
>   connectors, so that we can grab the topology manager's atomic lock
>
> Note: there's some amdgpu patches that I didn't realize were pushed
> upstream already when creating this topic branch. When they fail to
> apply, you can just ignore and skip them.
> The following changes since commit 2e79e22e092acd55da0b2db066e4826d7d152c41:

Out of curiosity, why did you go with a topic branch here? Usually we
only do those if there's a serious cross-tree coordination problem,
that can't be solved with some acks for merging the patches through
the unusual tree. Plus then some notes in the pull requests why and
who should pull this in. These one here doesn't seem like this is
necessary, and the standard approach of stuffing it all into
drm-misc-next should be good enough. Also rule of thumb maintainers do
the topic branch stuff with merges and prep and everything.

I'm also confused with your "when they fail to apply", topic branches
are only ever merged, not applied individually.
-Daniel

>
>   Merge v5.4-rc4 into drm-next (2019-10-23 12:10:05 +0200)
>
> are available in the Git repository at:
>
>   git://anongit.freedesktop.org/drm/drm-misc tags/topic/mst-suspend-resume-reprobe-2019-10-29-2
>
> for you to fetch changes up to 12a280c7286857119cf0d88c487f695e3a1c0912:
>
>   drm/dp_mst: Add topology ref history tracking for debugging (2019-10-24 14:36:13 -0400)
>
> ----------------------------------------------------------------
> UAPI Changes:
>
> Cross-subsystem Changes:
>
> Core Changes:
> * Handle UP requests asynchronously in the DP MST helpers, fixing
>   hotplug notifications and allowing us to implement suspend/resume
>   reprobing
> * Add basic suspend/resume reprobing to the DP MST helpers
> * Improve locking for link address reprobing and connection status
>   request handling in the DP MST helpers
> * Miscellaneous refactoring in the DP MST helpers
> * Add a Kconfig option to the DP MST helpers to enable tracking of
>   gets/puts for topology references for debugging purposes
>
> Driver Changes:
> * nouveau: Resume hotplug interrupts earlier, so that sideband
>   messages may be transmitted during resume and thus allow
>   suspend/resume reprobing for DP MST to work
> * nouveau: Avoid grabbing runtime PM references when handling short DP
>   pulses, so that handling sideband messages in resume codepaths with the
>   DP MST helpers doesn't deadlock us
> * i915, nouveau, amdgpu, radeon: Use detect_ctx for probing MST
>   connectors, so that we can grab the topology manager's atomic lock
>
> Note: there's some amdgpu patches that I didn't realize were pushed
> upstream already when creating this topic branch. When they fail to
> apply, you can just ignore and skip them.
>
> ----------------------------------------------------------------
> 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 +
>  drivers/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 +-
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c  |   41 +-
>  .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c  |   10 +-
>  .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c    |   28 +-
>  drivers/gpu/drm/drm_dp_mst_topology.c              | 1176 +++++++++++++++-----
>  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, 1322 insertions(+), 477 deletions(-)
>


-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the dri-devel mailing list