• Mika Westerberg's avatar
    thunderbolt: Allocate credits according to router preferences · 6ed541c5
    Mika Westerberg authored
    The USB4 Connection Manager guide provides detailed information how the
    USB4 router buffer (credit) allocation information should be used by the
    connection manager when it allocates buffers for different paths. This
    patch implements it for Linux. For USB 3.x and DisplayPort we use
    directly the router preferences. The rest of the buffer space is then
    used for PCIe and DMA (peer-to-peer, XDomain) traffic. DMA tunnels
    require at least one buffer and PCIe six, so if there is not enough
    buffers we fail the tunnel creation.
    
    For the legacy Thunderbolt 1-3 devices we use the existing hard-coded
    scheme except for DMA where we use the values suggested by the USB4 spec
    chapter 13.
    Co-developed-by: default avatarGil Fine <gil.fine@intel.com>
    Signed-off-by: default avatarGil Fine <gil.fine@intel.com>
    Signed-off-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
    6ed541c5
tunnel.h 4.15 KB