• Dave Airlie's avatar
    drm/i915: rework digital port IRQ handling (v2) · 13cf5504
    Dave Airlie authored
    The digital ports from Ironlake and up have the ability to distinguish
    between long and short HPD pulses. Displayport 1.1 only uses the short
    form to request link retraining usually, so we haven't really needed
    support for it until now.
    
    However with DP 1.2 MST we need to handle the short irqs on their
    own outside the modesetting locking the long hpd's involve. This
    patch adds the framework to distinguish between short/long to the
    current code base, to lay the basis for future DP 1.2 MST work.
    
    This should mean we get better bisectability in case of regression
    due to the new irq handling.
    
    v2: add GM45 support (untested, due to lack of hw)
    Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    Reviewed-by: default avatarTodd Previte <tprevite@gmail.com>
    [danvet: Fix conflicts in i915_irq.c with Oscar Mateo's irq handling
    race fixes and a trivial one in intel_drv.h with the psr code.]
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    13cf5504
i915_irq.c 130 KB