summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/exynos/exynos_drm_fimd.c
diff options
context:
space:
mode:
authorSean Paul <seanpaul@chromium.org>2014-01-30 16:19:07 -0500
committerInki Dae <daeinki@gmail.com>2014-03-24 00:36:29 +0900
commit87244fa604201c7eee643e5e5e1a19e1f7fc5e3a (patch)
tree25aec9ea253bd1b09d14d2b2382c38e204c59a87 /drivers/gpu/drm/exynos/exynos_drm_fimd.c
parentbb7704d6a6861cd17fc31e2fd6896d056b18aa47 (diff)
downloadop-kernel-dev-87244fa604201c7eee643e5e5e1a19e1f7fc5e3a.zip
op-kernel-dev-87244fa604201c7eee643e5e5e1a19e1f7fc5e3a.tar.gz
drm/exynos: Remove apply manager callback
This patch removes the apply() manager callback in favor of putting the relevant commits in the individual drivers. This will mitigate some of the difference between the suspend/resume path and the dpms path Signed-off-by: Sean Paul <seanpaul@chromium.org> Reviewed-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
Diffstat (limited to 'drivers/gpu/drm/exynos/exynos_drm_fimd.c')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_fimd.c22
1 files changed, 5 insertions, 17 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
index 411e90a..810c61f 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
@@ -672,7 +672,6 @@ static void fimd_win_disable(struct exynos_drm_manager *mgr, int zpos)
static struct exynos_drm_manager_ops fimd_manager_ops = {
.initialize = fimd_mgr_initialize,
.dpms = fimd_dpms,
- .apply = fimd_apply,
.commit = fimd_commit,
.enable_vblank = fimd_enable_vblank,
.disable_vblank = fimd_disable_vblank,
@@ -883,6 +882,8 @@ static int fimd_activate(struct exynos_drm_manager *mgr, bool enable)
fimd_enable_vblank(mgr);
fimd_window_resume(dev);
+
+ fimd_apply(mgr);
} else {
fimd_window_suspend(dev);
@@ -1037,23 +1038,10 @@ static int fimd_resume(struct device *dev)
* of pm runtime would still be 1 so in this case, fimd driver
* should be on directly not drawing on pm runtime interface.
*/
- if (!pm_runtime_suspended(dev)) {
- int ret;
+ if (pm_runtime_suspended(dev))
+ return 0;
- ret = fimd_activate(mgr, true);
- if (ret < 0)
- return ret;
-
- /*
- * in case of dpms on(standby), fimd_apply function will
- * be called by encoder's dpms callback to update fimd's
- * registers but in case of sleep wakeup, it's not.
- * so fimd_apply function should be called at here.
- */
- fimd_apply(mgr);
- }
-
- return 0;
+ return fimd_activate(mgr, true);
}
#endif
OpenPOWER on IntegriCloud