• James P Michels III's avatar
    usb-core bInterval quirk · cca4d731
    James P Michels III authored
    commit cd83ce9e upstream.
    
    This patch adds a usb quirk to support devices with interupt endpoints
    and bInterval values expressed as microframes. The quirk causes the
    parse endpoint function to modify the reported bInterval to a standards
    conforming value.
    
    There is currently code in the endpoint parser that checks for
    bIntervals that are outside of the valid range (1-16 for USB 2+ high
    speed and super speed interupt endpoints). In this case, the code assumes
    the bInterval is being reported in 1ms frames. As well, the correction
    is only applied if the original bInterval value is out of the 1-16 range.
    
    With this quirk applied to the device, the bInterval will be
    accurately adjusted from microframes to an exponent.
    Signed-off-by: default avatarJames P Michels III <james.p.michels@gmail.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
    cca4d731
quirks.c 7.93 KB