xserver: Branch 'master'

Adam Jackson ajax at kemper.freedesktop.org
Wed Sep 13 18:41:28 UTC 2017


 hw/xfree86/drivers/modesetting/driver.c |    5 +++++
 1 file changed, 5 insertions(+)

New commits:
commit fbd80b2c8ebe9fd41229dc5438524d107c071ff1
Author: Dawid Kurek <dawid.kurek at displaylink.com>
Date:   Thu Jul 6 14:51:11 2017 +0200

    modesetting: Blacklist EVDI devices from PRIME sync
    
    UDL (usb) devices are blacklisted because of they weird behaviour when
    it comes to vblank events. As EVDI uses very similar model of handling
    vblanks it should be treated similarly.
    
    When doing a page flip, EVDI does not wait for real vblank, but
    simulates it by adding constant delay. It also does not support
    DRM_IOCTL_WAIT_VBLANK.
    
    In contrast to UDL, EVDI uses platform devices, thus instead of 'usb' in
    path they all have 'platform'.
    
    It is possible to blacklist by 'platform', so without explicitly saying
    'evdi', but it might be misleading when it comes to real reason for it.
    
    Signed-off-by: Dawid Kurek <dawid.kurek at displaylink.com>

diff --git a/hw/xfree86/drivers/modesetting/driver.c b/hw/xfree86/drivers/modesetting/driver.c
index 32619edab..9afb344c8 100644
--- a/hw/xfree86/drivers/modesetting/driver.c
+++ b/hw/xfree86/drivers/modesetting/driver.c
@@ -1197,6 +1197,11 @@ msEnableSharedPixmapFlipping(RRCrtcPtr crtc, PixmapPtr front, PixmapPtr back)
          * vblank events */
         if (syspath && strstr(syspath, "usb"))
             return FALSE;
+
+        /* EVDI uses USB transport but is platform device, not usb.
+         * Blacklist it explicitly */
+        if (syspath && strstr(syspath, "evdi"))
+            return FALSE;
     }
 #endif
 


More information about the xorg-commit mailing list