• A
    USB: speed up usb_bus_resume() · bfd1e910
    Alan Stern 提交于
    This patch (as1620) speeds up USB root-hub resumes in the common case
    where every enabled port has its suspend feature set (which currently
    will be true for every runtime resume of the root hub).  If all the
    enabled ports are suspended then resuming the root hub won't resume
    any of the downstream devices.  In this case there's no need for a
    Resume Recovery delay, because that delay is meant to give devices a
    chance to get ready for active use.
    
    To keep track of the port suspend features, the patch adds a
    "port_is_suspended" flag to struct usb_device.  This has to be tracked
    separately from the device's state; it's entirely possible for a USB-2
    device to be suspended while the suspend feature on its parent port is
    clear.  The reason is that devices will go into suspend whenever their
    parent hub does.
    Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
    Reviewed-by: NPeter Chen <peter.chen@freescale.com>
    Tested-by: NPeter Chen <peter.chen@freescale.com>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    bfd1e910
usb.h 68.7 KB