• David Brownell's avatar
    [PATCH] USB: usb enumeration clears full speed ep0 state · c1ac1e59
    David Brownell authored
    This resolves a bug that was recently reported to me by someone
    enumerating a USB 1.1 modem through a high speed hub.  I'm a bit
    surprised we never saw it before; I think cache/dma timings must
    usually be strongly in our favor.
    
    The problem was that the HC was still using the old ep0 maxpacket
    value, so when it received an 18 byte device descriptor it would
    report a packet overrun and enumeration would fail.  The fix is
    straightforward:  invalidate the HC's old endpoint state when we
    change the full speed maxpacket size.  (And eventually, we can
    remove EHCI and OHCI code coping with usbcore not doing this.)
    c1ac1e59
usb.c 43.4 KB