Den 07.12.2017 01.50, skrev Inki Dae:

2017년 12월 06일 03:24에 Noralf Trønnes 이(가) 쓴 글:
This driver can use drm_fb_helper_lastclose() as its .lastclose callback.
It can also use drm_fb_helper_output_poll_changed() as its
.output_poll_changed callback.

Cc: Inki Dae <inki....@samsung.com>
Cc: Joonyoung Shim <jy0922.s...@samsung.com>
Cc: Seung-Woo Kim <sw0312....@samsung.com>
Cc: Kyungmin Park <kyungmin.p...@samsung.com>
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
Acked-by: Daniel Vetter <daniel.vet...@ffwll.ch>
Seems you missed my ACK,
http://www.spinics.net/lists/intel-gfx/msg146188.html

Thanks for reminding me.

Noralf.

Thanks,
Inki Dae

---
  drivers/gpu/drm/exynos/exynos_drm_drv.c   |  8 ++------
  drivers/gpu/drm/exynos/exynos_drm_fb.c    |  2 +-
  drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 18 ------------------
  drivers/gpu/drm/exynos/exynos_drm_fbdev.h |  2 --
  4 files changed, 3 insertions(+), 27 deletions(-)

diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c 
b/drivers/gpu/drm/exynos/exynos_drm_drv.c
index 82b72425a42f..2f2bd6e37e62 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
@@ -16,6 +16,7 @@
  #include <drm/drm_atomic.h>
  #include <drm/drm_atomic_helper.h>
  #include <drm/drm_crtc_helper.h>
+#include <drm/drm_fb_helper.h>
#include <linux/component.h> @@ -89,11 +90,6 @@ static void exynos_drm_postclose(struct drm_device *dev, struct drm_file *file)
        file->driver_priv = NULL;
  }
-static void exynos_drm_lastclose(struct drm_device *dev)
-{
-       exynos_drm_fbdev_restore_mode(dev);
-}
-
  static const struct vm_operations_struct exynos_drm_gem_vm_ops = {
        .fault = exynos_drm_gem_fault,
        .open = drm_gem_vm_open,
@@ -140,7 +136,7 @@ static struct drm_driver exynos_drm_driver = {
        .driver_features        = DRIVER_MODESET | DRIVER_GEM | DRIVER_PRIME
                                  | DRIVER_ATOMIC | DRIVER_RENDER,
        .open                   = exynos_drm_open,
-       .lastclose              = exynos_drm_lastclose,
+       .lastclose              = drm_fb_helper_lastclose,
        .postclose              = exynos_drm_postclose,
        .gem_free_object_unlocked = exynos_drm_gem_free_object,
        .gem_vm_ops             = &exynos_drm_gem_vm_ops,
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fb.c 
b/drivers/gpu/drm/exynos/exynos_drm_fb.c
index 8208df56a88f..0faaf829f5bf 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fb.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_fb.c
@@ -205,7 +205,7 @@ static struct drm_mode_config_helper_funcs 
exynos_drm_mode_config_helpers = {
static const struct drm_mode_config_funcs exynos_drm_mode_config_funcs = {
        .fb_create = exynos_user_fb_create,
-       .output_poll_changed = exynos_drm_output_poll_changed,
+       .output_poll_changed = drm_fb_helper_output_poll_changed,
        .atomic_check = exynos_atomic_check,
        .atomic_commit = drm_atomic_helper_commit,
  };
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c 
b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c
index dfb66ecf417b..132dd52d0ac7 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c
@@ -270,24 +270,6 @@ void exynos_drm_fbdev_fini(struct drm_device *dev)
        private->fb_helper = NULL;
  }
-void exynos_drm_fbdev_restore_mode(struct drm_device *dev)
-{
-       struct exynos_drm_private *private = dev->dev_private;
-
-       if (!private || !private->fb_helper)
-               return;
-
-       drm_fb_helper_restore_fbdev_mode_unlocked(private->fb_helper);
-}
-
-void exynos_drm_output_poll_changed(struct drm_device *dev)
-{
-       struct exynos_drm_private *private = dev->dev_private;
-       struct drm_fb_helper *fb_helper = private->fb_helper;
-
-       drm_fb_helper_hotplug_event(fb_helper);
-}
-
  void exynos_drm_fbdev_suspend(struct drm_device *dev)
  {
        struct exynos_drm_private *private = dev->dev_private;
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fbdev.h 
b/drivers/gpu/drm/exynos/exynos_drm_fbdev.h
index 645d1bb7f665..b33847223a85 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fbdev.h
+++ b/drivers/gpu/drm/exynos/exynos_drm_fbdev.h
@@ -19,8 +19,6 @@
int exynos_drm_fbdev_init(struct drm_device *dev);
  void exynos_drm_fbdev_fini(struct drm_device *dev);
-void exynos_drm_fbdev_restore_mode(struct drm_device *dev);
-void exynos_drm_output_poll_changed(struct drm_device *dev);
  void exynos_drm_fbdev_suspend(struct drm_device *drm);
  void exynos_drm_fbdev_resume(struct drm_device *drm);

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to