drm/vc4: Fix get_vblank_counter with proper no-op for Linux 4.4+
authorMario Kleiner <mario.kleiner.de@gmail.com>
Fri, 6 May 2016 17:26:05 +0000 (19:26 +0200)
committerEric Anholt <eric@anholt.net>
Tue, 31 May 2016 22:15:29 +0000 (15:15 -0700)
get_vblank_counter hooked up to drm_vblank_count() which alway was
non-sensical but didn't hurt in the past. Since Linux 4.4 it
triggers a WARN_ON_ONCE in drm_update_vblank_count on first vblank
irq disable, so fix it by hooking to drm_vblank_no_hw_counter().

Tested against Raspian kernel 4.4.8 tree on RPi 2B.

Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Fixes: c8b75bca92cb ("drm/vc4: Add KMS support for Raspberry Pi.")

drivers/gpu/drm/vc4/vc4_drv.c

index 3446ece..ef7de8e 100644 (file)
@@ -91,7 +91,7 @@ static struct drm_driver vc4_drm_driver = {
 
        .enable_vblank = vc4_enable_vblank,
        .disable_vblank = vc4_disable_vblank,
-       .get_vblank_counter = drm_vblank_count,
+       .get_vblank_counter = drm_vblank_no_hw_counter,
 
 #if defined(CONFIG_DEBUG_FS)
        .debugfs_init = vc4_debugfs_init,