• David Brownell's avatar
    USB: gadget: fix rndis regression · 090b9011
    David Brownell authored
    Restore some code that was wrongly dropped from the RNDIS
    driver, and caused interop problems observed with OpenMoko.
    
    The issue is with hardware which needs help conforming to part
    of the USB 2.0 spec (section 8.5.3.2); some can automagically
    send a ZLP in response to an unexpected IN, but not all chips
    will do that.  We don't need to check the packet length ourselves
    the way earlier code did, since the UDC must already check it.
    But we do need to tell the UDC when it must force a short packet
    termination of the data stage.
    
    (Based on a patch from Aric D. Blumer <aric at sdgsystems.com>)
    Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
    Cc: stable <stable@kernel.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    090b9011
f_rndis.c 23.9 KB