• A
    USB: disable reset-resume when USB_QUIRK_RESET is set · 1d10255c
    Alan Stern 提交于
    The USB_QUIRK_RESET flag indicates that a USB device changes its
    identity in some way when it is reset.  It may lose its firmware, its
    descriptors may change, or it may switch back to a default mode of
    operation.
    
    If a device does this, the kernel needs to avoid resetting it.  Resets
    are likely to fail, or worse, succeed while changing the device's
    state in a way the system can't detect.
    
    This means we should disable the reset-resume mechanism whenever this
    quirk flag is present.  An attempted reset-resume will fail, the
    device will be logically disconnected, and later on the hub driver
    will rediscover and re-enumerate the device.  This will cause the
    appropriate udev events to be generated, so that userspace will have a
    chance to switch the device into its normal operating mode, if
    necessary.
    Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
    CC: Oliver Neukum <oliver@neukum.org>
    Reviewed-by: NHans de Goede <hdegoede@redhat.com>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    1d10255c
hub.c 157.6 KB