drm/omap: 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: Tomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: Noralf Trønnes <noralf@tronnes.org> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/20171205182504.41923-9-noralf@tronnes.org
This commit is contained in:
parent
d0f54f51f6
commit
ef62d30878
@ -46,14 +46,6 @@
|
||||
* devices
|
||||
*/
|
||||
|
||||
static void omap_fb_output_poll_changed(struct drm_device *dev)
|
||||
{
|
||||
struct omap_drm_private *priv = dev->dev_private;
|
||||
DBG("dev=%p", dev);
|
||||
if (priv->fbdev)
|
||||
drm_fb_helper_hotplug_event(priv->fbdev);
|
||||
}
|
||||
|
||||
static void omap_atomic_wait_for_completion(struct drm_device *dev,
|
||||
struct drm_atomic_state *old_state)
|
||||
{
|
||||
@ -132,7 +124,7 @@ static const struct drm_mode_config_helper_funcs omap_mode_config_helper_funcs =
|
||||
|
||||
static const struct drm_mode_config_funcs omap_mode_config_funcs = {
|
||||
.fb_create = omap_framebuffer_create,
|
||||
.output_poll_changed = omap_fb_output_poll_changed,
|
||||
.output_poll_changed = drm_fb_helper_output_poll_changed,
|
||||
.atomic_check = drm_atomic_helper_check,
|
||||
.atomic_commit = drm_atomic_helper_commit,
|
||||
};
|
||||
@ -467,28 +459,6 @@ static int dev_open(struct drm_device *dev, struct drm_file *file)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* lastclose - clean up after all DRM clients have exited
|
||||
* @dev: DRM device
|
||||
*
|
||||
* Take care of cleaning up after all DRM clients have exited. In the
|
||||
* mode setting case, we want to restore the kernel's initial mode (just
|
||||
* in case the last client left us in a bad state).
|
||||
*/
|
||||
static void dev_lastclose(struct drm_device *dev)
|
||||
{
|
||||
struct omap_drm_private *priv = dev->dev_private;
|
||||
int ret;
|
||||
|
||||
DBG("lastclose: dev=%p", dev);
|
||||
|
||||
if (priv->fbdev) {
|
||||
ret = drm_fb_helper_restore_fbdev_mode_unlocked(priv->fbdev);
|
||||
if (ret)
|
||||
DBG("failed to restore crtc mode");
|
||||
}
|
||||
}
|
||||
|
||||
static const struct vm_operations_struct omap_gem_vm_ops = {
|
||||
.fault = omap_gem_fault,
|
||||
.open = drm_gem_vm_open,
|
||||
@ -511,7 +481,7 @@ static struct drm_driver omap_drm_driver = {
|
||||
.driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_PRIME |
|
||||
DRIVER_ATOMIC | DRIVER_RENDER,
|
||||
.open = dev_open,
|
||||
.lastclose = dev_lastclose,
|
||||
.lastclose = drm_fb_helper_lastclose,
|
||||
#ifdef CONFIG_DEBUG_FS
|
||||
.debugfs_init = omap_debugfs_init,
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user