summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/mxsfb/lcdif_drv.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/mxsfb/lcdif_drv.c')
-rw-r--r--drivers/gpu/drm/mxsfb/lcdif_drv.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/gpu/drm/mxsfb/lcdif_drv.c b/drivers/gpu/drm/mxsfb/lcdif_drv.c
index 6494e8270..ea10bf815 100644
--- a/drivers/gpu/drm/mxsfb/lcdif_drv.c
+++ b/drivers/gpu/drm/mxsfb/lcdif_drv.c
@@ -167,7 +167,11 @@ static int lcdif_load(struct drm_device *drm)
return ret;
/* Modeset init */
- drm_mode_config_init(drm);
+ ret = drmm_mode_config_init(drm);
+ if (ret) {
+ dev_err(drm->dev, "Failed to initialize mode config\n");
+ return ret;
+ }
ret = lcdif_kms_init(lcdif);
if (ret < 0) {
@@ -227,7 +231,6 @@ static void lcdif_unload(struct drm_device *drm)
drm_crtc_vblank_off(&lcdif->crtc);
drm_kms_helper_poll_fini(drm);
- drm_mode_config_cleanup(drm);
pm_runtime_put_sync(drm->dev);
pm_runtime_disable(drm->dev);
@@ -340,9 +343,6 @@ static int __maybe_unused lcdif_suspend(struct device *dev)
if (ret)
return ret;
- if (pm_runtime_suspended(dev))
- return 0;
-
return lcdif_rpm_suspend(dev);
}
@@ -350,8 +350,7 @@ static int __maybe_unused lcdif_resume(struct device *dev)
{
struct drm_device *drm = dev_get_drvdata(dev);
- if (!pm_runtime_suspended(dev))
- lcdif_rpm_resume(dev);
+ lcdif_rpm_resume(dev);
return drm_mode_config_helper_resume(drm);
}