diff options
author | Joonyoung Shim <jy0922.shim@samsung.com> | 2012-06-27 01:27:07 -0400 |
---|---|---|
committer | Inki Dae <inki.dae@samsung.com> | 2012-07-26 22:13:54 -0400 |
commit | bebab8ff31c6a39aae3dd29f57cd0e20021c1d09 (patch) | |
tree | ca47fc751bdea8e600a032ec9b13779834fbb3a8 /drivers/gpu/drm/exynos/exynos_drm_encoder.c | |
parent | 00ae67cf26fad3889e71e3bdbec012b1f938dc0e (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.c | 14 |
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 | ||
326 | void 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 | |||
338 | void exynos_drm_encoder_crtc_dpms(struct drm_encoder *encoder, void *data) | 328 | void 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; |