drm/exynos: fix warning of vblank reference count
Prevented re-enabling the vblank interrupt by drm_vblank_off and
drm_vblank_get from mixer_wait_for_vblank returns error after
drm_vblank_off. We get below warnings without this error handling
because vblank reference count is mismatched by above sequence.
setting mode 1920x1080-60Hz@XR24 on connectors 16, crtc 13
[ 19.900793] ------------[ cut here ]------------
[ 19.903959] WARNING: CPU: 0 PID: 0 at drivers/gpu/drm/drm_irq.c:1072 exynos_drm_crtc_finish_pageflip+0xac/0xdc()
[ 19.914076] Modules linked in:
[ 19.917116] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.19.0-rc4-00040-g3d729789-dirty #46
[ 19.925342] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 19.931437] [<
c0014430>] (unwind_backtrace) from [<
c001158c>] (show_stack+0x10/0x14)
[ 19.939131] [<
c001158c>] (show_stack) from [<
c04cdd50>] (dump_stack+0x84/0xc4)
[ 19.946329] [<
c04cdd50>] (dump_stack) from [<
c00226f4>] (warn_slowpath_common+0x80/0xb0)
[ 19.954382] [<
c00226f4>] (warn_slowpath_common) from [<
c00227c0>] (warn_slowpath_null+0x1c/0x24)
[ 19.963132] [<
c00227c0>] (warn_slowpath_null) from [<
c02c20cc>] (exynos_drm_crtc_finish_pageflip+0xac/0xdc)
[ 19.972841] [<
c02c20cc>] (exynos_drm_crtc_finish_pageflip) from [<
c02cb7ec>] (mixer_irq_handler+0xdc/0x104)
[ 19.982546] [<
c02cb7ec>] (mixer_irq_handler) from [<
c005c904>] (handle_irq_event_percpu+0x78/0x134)
[ 19.991555] [<
c005c904>] (handle_irq_event_percpu) from [<
c005c9fc>] (handle_irq_event+0x3c/0x5c)
[ 20.000395] [<
c005c9fc>] (handle_irq_event) from [<
c005f384>] (handle_fasteoi_irq+0xe0/0x1ac)
[ 20.008885] [<
c005f384>] (handle_fasteoi_irq) from [<
c005bf88>] (generic_handle_irq+0x2c/0x3c)
[ 20.017463] [<
c005bf88>] (generic_handle_irq) from [<
c005c254>] (__handle_domain_irq+0x7c/0xec)
[ 20.026128] [<
c005c254>] (__handle_domain_irq) from [<
c0008698>] (gic_handle_irq+0x30/0x68)
[ 20.034449] [<
c0008698>] (gic_handle_irq) from [<
c00120c0>] (__irq_svc+0x40/0x74)
[ 20.041893] Exception stack(0xc06fff68 to 0xc06fffb0)
[ 20.046923] ff60:
00000000 00000000 000052f6 c001b460 c06fe000 c07064e8
[ 20.055070] ff80:
c04d743c c07392a2 c0739440 c06da340 ef7fca80 00000000 01000000 c06fffb0
[ 20.063212] ffa0:
c000f24c c000f250 60000013 ffffffff
[ 20.068245] [<
c00120c0>] (__irq_svc) from [<
c000f250>] (arch_cpu_idle+0x38/0x3c)
[ 20.075611] [<
c000f250>] (arch_cpu_idle) from [<
c0050948>] (cpu_startup_entry+0x108/0x16c)
[ 20.083846] [<
c0050948>] (cpu_startup_entry) from [<
c06aec5c>] (start_kernel+0x3a0/0x3ac)
[ 20.091980] ---[ end trace
2c76ee0500489d1b ]---
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>