summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorInki Dae <inki.dae@samsung.com>2014-10-15 16:08:41 +0900
committerInki Dae <inki.dae@samsung.com>2014-10-15 20:18:42 +0900
commit26afb9395cd2a38c9155fd238b5872efe4e70071 (patch)
tree4195af9ace564f0f516d303f9ddef063d77a4ff7
parentaff2130fe214aed63dbc336c709fc967f46080af (diff)
downloadlinux-3.10-26afb9395cd2a38c9155fd238b5872efe4e70071.tar.gz
linux-3.10-26afb9395cd2a38c9155fd238b5872efe4e70071.tar.bz2
linux-3.10-26afb9395cd2a38c9155fd238b5872efe4e70071.zip
drm/exynos: correct connector->dpms field before resuming
During system suspend after connector switch off its dpms field is set to connector previous dpms state. To properly resume dpms field should be set to its actual state (off) before resuming to previous dpms state. Change-Id: I80acefcd408279c3c1cf3b0e89133dc6899a6914 Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_drv.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c
index d988d6542d5..9f29ae893e7 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
@@ -181,8 +181,12 @@ static int exynos_drm_resume(struct drm_device *dev)
drm_modeset_lock_all(dev);
list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
- if (connector->funcs->dpms)
- connector->funcs->dpms(connector, connector->dpms);
+ if (connector->funcs->dpms) {
+ int dpms = connector->dpms;
+
+ connector->dpms = DRM_MODE_DPMS_OFF;
+ connector->funcs->dpms(connector, dpms);
+ }
}
drm_helper_resume_force_mode(dev);