drm/nouveau: Don't grab runtime PM refs for HPD IRQs
authorLyude Paul <lyude@redhat.com>
Wed, 3 Jul 2019 22:35:37 +0000 (18:35 -0400)
committerLyude Paul <lyude@redhat.com>
Thu, 24 Oct 2019 18:27:45 +0000 (14:27 -0400)
commit09e530657e1c982d3dbc5e4302bf9207950c3d0a
tree6e75f07709582d2aa8ac009148bf39d768c4cccb
parent79413ed4a1b7c9c19f9caa375a06d86c9c045ffb
drm/nouveau: Don't grab runtime PM refs for HPD IRQs

In order for suspend/resume reprobing to work, we need to be able to
perform sideband communications during suspend/resume, along with
runtime PM suspend/resume. In order to do so, we also need to make sure
that nouveau doesn't bother grabbing a runtime PM reference to do so,
since otherwise we'll start deadlocking runtime PM again.

Note that we weren't able to do this before, because of the DP MST
helpers processing UP requests from topologies in the same context as
drm_dp_mst_hpd_irq() which would have caused us to open ourselves up to
receiving hotplug events and deadlocking with runtime suspend/resume.
Now that those requests are handled asynchronously, this change should
be completely safe.

Cc: Juston Li <juston.li@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Harry Wentland <hwentlan@amd.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Sean Paul <sean@poorly.run>
Signed-off-by: Lyude Paul <lyude@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191022023641.8026-10-lyude@redhat.com
drivers/gpu/drm/nouveau/nouveau_connector.c