• Mathias Nyman's avatar
    Revert "xhci: don't finish a TD if we get a short-transfer event mid TD" · a6835090
    Mathias Nyman authored
    This reverts commit e210c422 ("xhci: don't finish a TD if we get a
    short transfer event mid TD")
    
    Turns out that most host controllers do not follow the xHCI specs and never
    send the second event for the last TRB in the TD if there was a short event
    mid-TD.
    
    Returning the URB directly after the first short-transfer event is far
    better than never returning the URB. (class drivers usually timeout
    after 30sec). For the hosts that do send the second event we will go
    back to treating it as misplaced event and print an error message for it.
    
    The origial patch was sent to stable kernels and needs to be reverted from
    there as well
    
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarMathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    a6835090
xhci-ring.c 128 KB