• Chris Wilson's avatar
    drm/i915: Fix the flip synchronisation to consider mmioflips · cf5d8a46
    Chris Wilson authored
    Currently we emit semaphore synchronisation as if we were going to flip
    using the target CS engine, but we then change our minds and do the flip
    using the CPU. Consequently we write instructions to the ring but never
    use them - even to the point of filling that ring up entirely and never
    submitting a request.
    
    The wrinkle in the ointment is that we have to tell a white lie to
    pin-to-display for it to skip the synchronisation for mmioflips as we
    will create a task specifically for that slow synchronisation. An oddity
    of note is the discrepancy in requests that we tell to pin-display to
    serialise to and that we then eventually wait upon. This is due to a
    limitation in the i915_gem_object_sync() routine that will be lifted
    later.
    Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    cf5d8a46
intel_display.c 408 KB