diff options
author | Andrzej Hajda <a.hajda@samsung.com> | 2015-07-09 02:25:41 -0400 |
---|---|---|
committer | Inki Dae <inki.dae@samsung.com> | 2015-08-11 04:21:35 -0400 |
commit | 2c5f70ef58171943c0d9a89590b2bf9ee437ec48 (patch) | |
tree | f6a3ecc6d7192cb7da8ec5e8a4a5cc4bdfe1d3ea | |
parent | 4f98f9446f0ec9bc7d1e9274a74e58b04ae48ead (diff) |
drm/exynos/mixer: always update INT_EN cache
INT_EN cache field was updated only by mixer_enable_vblank.
The patch adds update also by mixer_disable_vblank function.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Reviewed-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_mixer.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c index 923aa75143bf..4706b56902b4 100644 --- a/drivers/gpu/drm/exynos/exynos_mixer.c +++ b/drivers/gpu/drm/exynos/exynos_mixer.c | |||
@@ -917,6 +917,11 @@ static void mixer_disable_vblank(struct exynos_drm_crtc *crtc) | |||
917 | struct mixer_context *mixer_ctx = crtc->ctx; | 917 | struct mixer_context *mixer_ctx = crtc->ctx; |
918 | struct mixer_resources *res = &mixer_ctx->mixer_res; | 918 | struct mixer_resources *res = &mixer_ctx->mixer_res; |
919 | 919 | ||
920 | if (!mixer_ctx->powered) { | ||
921 | mixer_ctx->int_en &= MXR_INT_EN_VSYNC; | ||
922 | return; | ||
923 | } | ||
924 | |||
920 | /* disable vsync interrupt */ | 925 | /* disable vsync interrupt */ |
921 | mixer_reg_writemask(res, MXR_INT_STATUS, ~0, MXR_INT_CLEAR_VSYNC); | 926 | mixer_reg_writemask(res, MXR_INT_STATUS, ~0, MXR_INT_CLEAR_VSYNC); |
922 | mixer_reg_writemask(res, MXR_INT_EN, 0, MXR_INT_EN_VSYNC); | 927 | mixer_reg_writemask(res, MXR_INT_EN, 0, MXR_INT_EN_VSYNC); |