• David Brownell's avatar
    [PATCH] USB: usb host side updates, mostly for suspend · 48f79939
    David Brownell authored
    This adds some of the infrastructure needed to support some more
    USB capabilities:
    
     -  CONFIG_USB_SUSPEND, so Linux can put individual devices
        into the USB "suspend" state.  They can (sometimes) use
        "remote wakeup" to resume the host; or they can each be
        resumed by the host.
    
          + New usbcore device selective suspend/resume APIs
    	* Define them, as stubs for now
    	* Call them on the paths sysfs uses (renamed functions)
          + HCD support
    	* Define root hub suspend calls; delegate them to HCDs.
    	* OHCI and EHCI can suspend/resume root hubs that way.
    	* Not called yet, until suspend/resume calls exist
    
     -  CONFIG_USB_OTG, which depends on the selective suspend APIs
        to allow devices to switch roles (host to peripheral, etc).
        This patch just adds a few key flags in usb_bus, needed by
        usbcore (during enumeration) and by HCD and OTG controllers
        on OTG-capable boards.
    
     -  Related bugfix:  power budgeting is supposed to place a
        100mA per port (non-OTG) for bus-powered devices.
    
    This patch changes no behavior; later patches will do that,
    and they'll be smaller because of this.
    Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: default avatarGreg Kroah-Hartman <greg@kroah.com>
    48f79939
hub.c 56.3 KB