drm/amd/display: Fix system hang while resume with TBT monitor
authorjsg <jsg@openbsd.org>
Fri, 11 Oct 2024 02:56:45 +0000 (02:56 +0000)
committerjsg <jsg@openbsd.org>
Fri, 11 Oct 2024 02:56:45 +0000 (02:56 +0000)
From Tom Chung
68d603f467a75618eeae5bfe8af32cda47097010 in linux-6.6.y/6.6.55
52d4e3fb3d340447dcdac0e14ff21a764f326907 in mainline linux

sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index 0c871c9..70e743b 100644 (file)
@@ -714,6 +714,12 @@ static void dmub_hpd_callback(struct amdgpu_device *adev,
                return;
        }
 
+       /* Skip DMUB HPD IRQ in suspend/resume. We will probe them later. */
+       if (notify->type == DMUB_NOTIFICATION_HPD && adev->in_suspend) {
+               DRM_INFO("Skip DMUB HPD IRQ callback in suspend/resume\n");
+               return;
+       }
+
        link_index = notify->link_index;
        link = adev->dm.dc->links[link_index];
        dev = adev->dm.ddev;