aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/exynos/exynos_drm_encoder.c
diff options
context:
space:
mode:
authorJoonyoung Shim <jy0922.shim@samsung.com>2012-06-27 01:27:07 -0400
committerInki Dae <inki.dae@samsung.com>2012-07-26 22:13:54 -0400
commitbebab8ff31c6a39aae3dd29f57cd0e20021c1d09 (patch)
treeca47fc751bdea8e600a032ec9b13779834fbb3a8 /drivers/gpu/drm/exynos/exynos_drm_encoder.c
parent00ae67cf26fad3889e71e3bdbec012b1f938dc0e (diff)
drm/exynos: fix dpms operation for mode set
When we do mode set, the dpms mode should be ON. Don't control dpms in crtc commit function. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
Diffstat (limited to 'drivers/gpu/drm/exynos/exynos_drm_encoder.c')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_encoder.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.c b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
index c25bd4812594..2304d083fb89 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_encoder.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
@@ -138,6 +138,8 @@ static void exynos_drm_encoder_mode_set(struct drm_encoder *encoder,
138 138
139 DRM_DEBUG_KMS("%s\n", __FILE__); 139 DRM_DEBUG_KMS("%s\n", __FILE__);
140 140
141 exynos_drm_encoder_dpms(encoder, DRM_MODE_DPMS_ON);
142
141 list_for_each_entry(connector, &dev->mode_config.connector_list, head) { 143 list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
142 if (connector->encoder == encoder) 144 if (connector->encoder == encoder)
143 if (manager_ops && manager_ops->mode_set) 145 if (manager_ops && manager_ops->mode_set)
@@ -323,18 +325,6 @@ void exynos_drm_disable_vblank(struct drm_encoder *encoder, void *data)
323 manager_ops->disable_vblank(manager->dev); 325 manager_ops->disable_vblank(manager->dev);
324} 326}
325 327
326void exynos_drm_encoder_dpms_from_crtc(struct drm_encoder *encoder, void *data)
327{
328 struct exynos_drm_encoder *exynos_encoder = to_exynos_encoder(encoder);
329 int mode = *(int *)data;
330
331 DRM_DEBUG_KMS("%s\n", __FILE__);
332
333 exynos_drm_encoder_dpms(encoder, mode);
334
335 exynos_encoder->dpms = mode;
336}
337
338void exynos_drm_encoder_crtc_dpms(struct drm_encoder *encoder, void *data) 328void exynos_drm_encoder_crtc_dpms(struct drm_encoder *encoder, void *data)
339{ 329{
340 struct drm_device *dev = encoder->dev; 330 struct drm_device *dev = encoder->dev;