drm/exynos: fimd: move shadow unprotection position
authorYoungJun Cho <yj44.cho@samsung.com>
Mon, 17 Nov 2014 13:00:09 +0000 (22:00 +0900)
committerInki Dae <inki.dae@samsung.com>
Mon, 24 Nov 2014 09:02:53 +0000 (18:02 +0900)
The C#_EN_F in SHADOWCON register is updated per frame.
So it should be protected by fimd_shadow_protect_win().

Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
drivers/gpu/drm/exynos/exynos_drm_fimd.c

index ec2d1702b93b18f9e53a391df3a62cedfbde5643..77ba961e1ddd6af26773b199c3ce2662731bf1f0 100644 (file)
@@ -751,15 +751,15 @@ static void fimd_win_commit(struct exynos_drm_manager *mgr, int zpos)
        val |= WINCONx_ENWIN;
        writel(val, ctx->regs + WINCON(win));
 
-       /* Enable DMA channel and unprotect windows */
-       fimd_shadow_protect_win(ctx, win, false);
-
        if (ctx->driver_data->has_shadowcon) {
                val = readl(ctx->regs + SHADOWCON);
                val |= SHADOWCON_CHx_ENABLE(win);
                writel(val, ctx->regs + SHADOWCON);
        }
 
+       /* Enable DMA channel and unprotect windows */
+       fimd_shadow_protect_win(ctx, win, false);
+
        win_data->enabled = true;
 
        if (ctx->i80_if)