drm/nouveau: Suspend and resume clients with client helpers
authorThomas Zimmermann <tzimmermann@suse.de>
Mon, 14 Oct 2024 08:55:23 +0000 (10:55 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Fri, 18 Oct 2024 07:23:03 +0000 (09:23 +0200)
Replace calls to drm_fb_helper_set_suspend_unlocked() with calls
to the client functions drm_client_dev_suspend() and
drm_client_dev_resume(). Any registered in-kernel client will now
receive suspend and resume events.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Karol Herbst <kherbst@redhat.com>
Cc: Lyude Paul <lyude@redhat.com>
Cc: Danilo Krummrich <dakr@redhat.com>
Reviewed-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241014085740.582287-10-tzimmermann@suse.de
drivers/gpu/drm/nouveau/nouveau_display.c

index e2fd561..619a3ef 100644 (file)
@@ -28,8 +28,8 @@
 
 #include <drm/drm_atomic.h>
 #include <drm/drm_atomic_helper.h>
+#include <drm/drm_client_event.h>
 #include <drm/drm_crtc_helper.h>
-#include <drm/drm_fb_helper.h>
 #include <drm/drm_fourcc.h>
 #include <drm/drm_gem_framebuffer_helper.h>
 #include <drm/drm_probe_helper.h>
@@ -804,8 +804,7 @@ nouveau_display_suspend(struct drm_device *dev, bool runtime)
 {
        struct nouveau_display *disp = nouveau_display(dev);
 
-       /* Disable console. */
-       drm_fb_helper_set_suspend_unlocked(dev->fb_helper, true);
+       drm_client_dev_suspend(dev, false);
 
        if (drm_drv_uses_atomic_modeset(dev)) {
                if (!runtime) {
@@ -836,8 +835,7 @@ nouveau_display_resume(struct drm_device *dev, bool runtime)
                }
        }
 
-       /* Enable console. */
-       drm_fb_helper_set_suspend_unlocked(dev->fb_helper, false);
+       drm_client_dev_resume(dev, false);
 }
 
 int