• David Brownell's avatar
    [PATCH] USB: usb gadget API updates · 8ae7288e
    David Brownell authored
    Gadget API updates, including new features:
    
        -	Adds several new optional calls that can be made to the
    	USB peripheral controller:
    
    	    * VBUS session reporting, for use mostly by external
    	      transcievers (such as isp1301).  Detection of VBUS
    	      power is the first step in enumeration, and usually
    	      corresponds to a device being plugged into a hub.
    
    	    * "Soft Connect" feature, wherein the D+ pullup is under
    	      gadget driver control.  This is a second step during
    	      enumeration, which lets the hub see the new device.
    	      (Based on a patch by Alex Sanks <alex@netchip.com>.)
    
    	    * Control over VBUS current draw.  So for example this is
    	      what a gadget driver uses during SET_CONFIGURATION to
    	      say "it's OK to draw 300 mA from VBUS to recharge".
    
        -	Basic interfaces to support device-side USB OTG.  Feature
    	flags and descriptors are in <linux/usb_ch9.h> already.
    
    	    * Reports whether the device has a Mini-AB port, so
    	      that OTG support (desriptors etc) is required.
    
    	    * Reports OTG device feature flags for HNP.  (The OTG
    	      spec requires user interfaces to report this stuff.)
    	      Say if this is a B-Peripheral or an A-Peripheral.
    
    	    * Says that usb_gadget_wakeup() is how to access SRP,
    	      and usb_gadget_disconnect() is how to access HNP.
    
        -	Minor updates/cleanups to comments (Linux 2.5-->2.6 etc)
    
    Currently there's no support for SRP-only OTG devices.
    Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: default avatarGreg Kroah-Hartman <greg@kroah.com>
    8ae7288e
usb_gadget.h 33.8 KB