Hi JoonYoung,

On 11/14/2014 11:36 AM, Joonyoung Shim wrote:
> The drm_handle_vblank should be called whenever be vsync, te interrupt
> means vsync on i80 interface.

That's right.

>
> Signed-off-by: Joonyoung Shim <jy0922.shim at samsung.com>
> ---
> Based on lastest exynos-drm-next branch and patch of Youngjun Cho
> ("drm/exynos: fimd: move handle vblank position in TE handler").
>
>   drivers/gpu/drm/exynos/exynos_drm_fimd.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c 
> b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
> index 033b18b..5cc57f7 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
> @@ -984,7 +984,7 @@ static void fimd_te_handler(struct exynos_drm_manager 
> *mgr)
>               wake_up(&ctx->wait_vsync_queue);
>       }
>
> -     if (!atomic_read(&ctx->triggering))
> +     if (test_bit(0, &ctx->irq_flags))
>               drm_handle_vblank(ctx->drm_dev, ctx->pipe);

But after triggering, "fimd_irq_handler()" is called by "lcd_sys" 
interrupt and that calls "drm_handle_vblank()".

So I think "fimd_te_handler()" calls "drm_handle_vblank()" only 
non-triggering condition.

Thank you.
Best regards YJ

>   }
>
>

Reply via email to