• Daniel Vetter's avatar
    drm/nouveau: Fix pre-nv50 pageflip events (v4) · bbc8764f
    Daniel Vetter authored
    Apparently pre-nv50 pageflip events happen before the actual vblank
    period. Therefore that functionality got semi-disabled in
    
    commit af4870e4
    Author: Mario Kleiner <mario.kleiner.de@gmail.com>
    Date:   Tue May 13 00:42:08 2014 +0200
    
        drm/nouveau/kms/nv04-nv40: fix pageflip events via special case.
    
    Unfortunately that hack got uprooted in
    
    commit cc1ef118
    Author: Thierry Reding <treding@nvidia.com>
    Date:   Wed Aug 12 17:00:31 2015 +0200
    
        drm/irq: Make pipe unsigned and name consistent
    
    Triggering a warning when trying to sample the vblank timestamp for a
    non-existing pipe. There's a few ways to fix this:
    
    - Open-code the old behaviour, which just enshrines this slight
      breakage of the userspace ABI.
    
    - Revert Mario's commit and again inflict broken timestamps, again not
      pretty.
    
    - Fix this for real by delaying the pageflip TS until the next vblank
      interrupt, thereby making it accurate...
    bbc8764f
drm_irq.c 55 KB