Browse Source

drm/exynos/decon5433: signal frame done interrupt at front porch

DECON in case of video mode generates interrupt by default at start
of vertical back porch. As this interrupt is used to generate VBLANK
events more optimal point is start of vertical front porch.

Signed-off-by: Inki Dae <inki.dae@samsung.com>
Andrzej Hajda 8 years ago
parent
commit
f3cce673e1

+ 1 - 1
drivers/gpu/drm/exynos/exynos5433_drm_decon.c

@@ -105,7 +105,7 @@ static int decon_enable_vblank(struct exynos_drm_crtc *crtc)
 		if (ctx->out_type & IFTYPE_I80)
 		if (ctx->out_type & IFTYPE_I80)
 			val |= VIDINTCON0_FRAMEDONE;
 			val |= VIDINTCON0_FRAMEDONE;
 		else
 		else
-			val |= VIDINTCON0_INTFRMEN;
+			val |= VIDINTCON0_INTFRMEN | VIDINTCON0_FRAMESEL_FP;
 
 
 		writel(val, ctx->addr + DECON_VIDINTCON0);
 		writel(val, ctx->addr + DECON_VIDINTCON0);
 	}
 	}

+ 4 - 0
include/video/exynos5433_decon.h

@@ -127,6 +127,10 @@
 
 
 /* VIDINTCON0 */
 /* VIDINTCON0 */
 #define VIDINTCON0_FRAMEDONE		(1 << 17)
 #define VIDINTCON0_FRAMEDONE		(1 << 17)
+#define VIDINTCON0_FRAMESEL_BP		(0 << 15)
+#define VIDINTCON0_FRAMESEL_VS		(1 << 15)
+#define VIDINTCON0_FRAMESEL_AC		(2 << 15)
+#define VIDINTCON0_FRAMESEL_FP		(3 << 15)
 #define VIDINTCON0_INTFRMEN		(1 << 12)
 #define VIDINTCON0_INTFRMEN		(1 << 12)
 #define VIDINTCON0_INTEN		(1 << 0)
 #define VIDINTCON0_INTEN		(1 << 0)