diff options
author | Inki Dae <inki.dae@samsung.com> | 2012-11-14 06:41:35 -0500 |
---|---|---|
committer | Inki Dae <inki.dae@samsung.com> | 2012-11-22 03:55:17 -0500 |
commit | ffe9955a741a2742cc517245b2219b61cc6dde28 (patch) | |
tree | e4ee58e77f4905bee12a040072902418909b3bcb | |
parent | a39b49812fe0c3f62fd3f7f6ec8c10d8f7035992 (diff) |
drm/exynos: fix overlay updating issue
Chagelog v2:
Move encoder's dpms updating into exynos_drm_encoder_commit
function because when crtc's dpms is updated, encoder's dpms
is updated also. This would induce the issue that encoder
isn't disabled after crtc is disabled.
Changelog v1:
This patch fixes a issue that overlay data aren't applied
to real hardware when dpms off goes to on after setcrtc
was requested like below,
dpms off -> setcrtc -> dpms off -> dpms on
For this, it makes encoder's dpms to be updated when
setcrtc is requested.
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_encoder.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.c b/drivers/gpu/drm/exynos/exynos_drm_encoder.c index 241ad1eeec64..607231a71b2d 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_encoder.c +++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.c | |||
@@ -226,6 +226,12 @@ static void exynos_drm_encoder_commit(struct drm_encoder *encoder) | |||
226 | * already updated or not by exynos_drm_encoder_dpms function. | 226 | * already updated or not by exynos_drm_encoder_dpms function. |
227 | */ | 227 | */ |
228 | exynos_encoder->updated = true; | 228 | exynos_encoder->updated = true; |
229 | |||
230 | /* | ||
231 | * In case of setcrtc, there is no way to update encoder's dpms | ||
232 | * so update it here. | ||
233 | */ | ||
234 | exynos_encoder->dpms = DRM_MODE_DPMS_ON; | ||
229 | } | 235 | } |
230 | 236 | ||
231 | static void exynos_drm_encoder_disable(struct drm_encoder *encoder) | 237 | static void exynos_drm_encoder_disable(struct drm_encoder *encoder) |