Commit cdc13f68 authored by Noralf Trønnes's avatar Noralf Trønnes

drm/gma500: Use drm_fb_helper_lastclose() and _poll_changed()

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: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
Signed-off-by: default avatarNoralf Trønnes <noralf@tronnes.org>
Acked-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20171205182504.41923-6-noralf@tronnes.org
parent d2936153
...@@ -576,13 +576,6 @@ static void psb_fbdev_fini(struct drm_device *dev) ...@@ -576,13 +576,6 @@ static void psb_fbdev_fini(struct drm_device *dev)
dev_priv->fbdev = NULL; dev_priv->fbdev = NULL;
} }
static void psbfb_output_poll_changed(struct drm_device *dev)
{
struct drm_psb_private *dev_priv = dev->dev_private;
struct psb_fbdev *fbdev = (struct psb_fbdev *)dev_priv->fbdev;
drm_fb_helper_hotplug_event(&fbdev->psb_fb_helper);
}
/** /**
* psb_user_framebuffer_create_handle - add hamdle to a framebuffer * psb_user_framebuffer_create_handle - add hamdle to a framebuffer
* @fb: framebuffer * @fb: framebuffer
...@@ -623,7 +616,7 @@ static void psb_user_framebuffer_destroy(struct drm_framebuffer *fb) ...@@ -623,7 +616,7 @@ static void psb_user_framebuffer_destroy(struct drm_framebuffer *fb)
static const struct drm_mode_config_funcs psb_mode_funcs = { static const struct drm_mode_config_funcs psb_mode_funcs = {
.fb_create = psb_user_framebuffer_create, .fb_create = psb_user_framebuffer_create,
.output_poll_changed = psbfb_output_poll_changed, .output_poll_changed = drm_fb_helper_output_poll_changed,
}; };
static void psb_setup_outputs(struct drm_device *dev) static void psb_setup_outputs(struct drm_device *dev)
......
...@@ -107,19 +107,6 @@ MODULE_DEVICE_TABLE(pci, pciidlist); ...@@ -107,19 +107,6 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
static const struct drm_ioctl_desc psb_ioctls[] = { static const struct drm_ioctl_desc psb_ioctls[] = {
}; };
static void psb_driver_lastclose(struct drm_device *dev)
{
int ret;
struct drm_psb_private *dev_priv = dev->dev_private;
struct psb_fbdev *fbdev = dev_priv->fbdev;
ret = drm_fb_helper_restore_fbdev_mode_unlocked(&fbdev->psb_fb_helper);
if (ret)
DRM_DEBUG("failed to restore crtc mode\n");
return;
}
static int psb_do_init(struct drm_device *dev) static int psb_do_init(struct drm_device *dev)
{ {
struct drm_psb_private *dev_priv = dev->dev_private; struct drm_psb_private *dev_priv = dev->dev_private;
...@@ -479,7 +466,7 @@ static struct drm_driver driver = { ...@@ -479,7 +466,7 @@ static struct drm_driver driver = {
DRIVER_MODESET | DRIVER_GEM, DRIVER_MODESET | DRIVER_GEM,
.load = psb_driver_load, .load = psb_driver_load,
.unload = psb_driver_unload, .unload = psb_driver_unload,
.lastclose = psb_driver_lastclose, .lastclose = drm_fb_helper_lastclose,
.num_ioctls = ARRAY_SIZE(psb_ioctls), .num_ioctls = ARRAY_SIZE(psb_ioctls),
.irq_preinstall = psb_irq_preinstall, .irq_preinstall = psb_irq_preinstall,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment