diff options
author | Thomas Zimmermann <tzimmermann@suse.de> | 2019-12-10 11:48:59 +0300 |
---|---|---|
committer | Thomas Zimmermann <tzimmermann@suse.de> | 2019-12-11 19:02:16 +0300 |
commit | ae08b88aea6b8094c8163b753b626329542146ee (patch) | |
tree | e3daccfadf716af371cab4443bd6805c0ee04a97 /drivers/gpu/drm/udl | |
parent | 9fda81e00e060e3ab9a56d77552d2d5e296f1007 (diff) | |
download | linux-ae08b88aea6b8094c8163b753b626329542146ee.tar.xz |
drm/udl: Switch to atomic suspend/resume helpers
We can use the generic suspend/resume helpers for atomic modesetting.
Switch udl over.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191210084905.5570-4-tzimmermann@suse.de
Diffstat (limited to 'drivers/gpu/drm/udl')
-rw-r--r-- | drivers/gpu/drm/udl/udl_drv.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/udl/udl_drv.h | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/udl/udl_modeset.c | 14 |
3 files changed, 2 insertions, 20 deletions
diff --git a/drivers/gpu/drm/udl/udl_drv.c b/drivers/gpu/drm/udl/udl_drv.c index aeb96920757c..b3fa6bf41acc 100644 --- a/drivers/gpu/drm/udl/udl_drv.c +++ b/drivers/gpu/drm/udl/udl_drv.c @@ -21,17 +21,14 @@ static int udl_usb_suspend(struct usb_interface *interface, { struct drm_device *dev = usb_get_intfdata(interface); - drm_kms_helper_poll_disable(dev); - return 0; + return drm_mode_config_helper_suspend(dev); } static int udl_usb_resume(struct usb_interface *interface) { struct drm_device *dev = usb_get_intfdata(interface); - drm_kms_helper_poll_enable(dev); - udl_modeset_restore(dev); - return 0; + return drm_mode_config_helper_resume(dev); } DEFINE_DRM_GEM_FOPS(udl_driver_fops); diff --git a/drivers/gpu/drm/udl/udl_drv.h b/drivers/gpu/drm/udl/udl_drv.h index c7f32c41f649..e98d70487eab 100644 --- a/drivers/gpu/drm/udl/udl_drv.h +++ b/drivers/gpu/drm/udl/udl_drv.h @@ -72,7 +72,6 @@ struct udl_device { /* modeset */ int udl_modeset_init(struct drm_device *dev); -void udl_modeset_restore(struct drm_device *dev); void udl_modeset_cleanup(struct drm_device *dev); struct drm_connector *udl_connector_init(struct drm_device *dev); diff --git a/drivers/gpu/drm/udl/udl_modeset.c b/drivers/gpu/drm/udl/udl_modeset.c index 36b7844e8cf4..cde6b7ff9599 100644 --- a/drivers/gpu/drm/udl/udl_modeset.c +++ b/drivers/gpu/drm/udl/udl_modeset.c @@ -438,20 +438,6 @@ err_drm_mode_config_cleanup: return ret; } -void udl_modeset_restore(struct drm_device *dev) -{ - struct udl_device *udl = dev->dev_private; - struct drm_crtc *crtc = &udl->display_pipe.crtc; - struct drm_plane *primary = &udl->display_pipe.plane; - struct drm_framebuffer *fb = primary->fb; - - if (!fb) - return; - - udl_crtc_dpms(crtc, DRM_MODE_DPMS_ON); - udl_handle_damage(fb, 0, 0, fb->width, fb->height); -} - void udl_modeset_cleanup(struct drm_device *dev) { drm_mode_config_cleanup(dev); |