USB_GADGET_VBUS_CONN(9) Kernel Mode Gadget API USB_GADGET_VBUS_CONN(9)NAME
usb_gadget_vbus_connect - Notify controller that VBUS is powered
SYNOPSIS
int usb_gadget_vbus_connect(struct usb_gadget * gadget);
ARGUMENTS
gadget
The device which now has VBUS power.
CONTEXT
can sleep
DESCRIPTION
This call is used by a driver for an external transceiver (or GPIO) that detects a VBUS power session starting. Common responses include
resuming the controller, activating the D+ (or D-) pullup to let the host detect that a USB device is attached, and starting to draw power
(8mA or possibly more, especially after SET_CONFIGURATION).
Returns zero on success, else negative errno.
AUTHOR
David Brownell <dbrownell@users.sourceforge.net>
Author.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 USB_GADGET_VBUS_CONN(9)
Check Out this Related Man Page
STRUCT USB_GADGET(9) Kernel Mode Gadget API STRUCT USB_GADGET(9)NAME
struct_usb_gadget - represents a usb slave device
SYNOPSIS
struct usb_gadget {
const struct usb_gadget_ops * ops;
struct usb_ep * ep0;
struct list_head ep_list;
enum usb_device_speed speed;
unsigned is_dualspeed:1;
unsigned is_otg:1;
unsigned is_a_peripheral:1;
unsigned b_hnp_enable:1;
unsigned a_hnp_support:1;
unsigned a_alt_hnp_support:1;
const char * name;
struct device dev;
};
MEMBERS
ops
Function pointers used to access hardware-specific operations.
ep0
Endpoint zero, used when reading or writing responses to driver setup requests
ep_list
List of other endpoints supported by the device.
speed
Speed of current connection to USB host.
is_dualspeed
True if the controller supports both high and full speed operation. If it does, the gadget driver must also support both.
is_otg
True if the USB device port uses a Mini-AB jack, so that the gadget driver must provide a USB OTG descriptor.
is_a_peripheral
False unless is_otg, the "A" end of a USB cable is in the Mini-AB jack, and HNP has been used to switch roles so that the "A" device
currently acts as A-Peripheral, not A-Host.
b_hnp_enable
OTG device feature flag, indicating that the A-Host enabled HNP support.
a_hnp_support
OTG device feature flag, indicating that the A-Host supports HNP at this port.
a_alt_hnp_support
OTG device feature flag, indicating that the A-Host only supports HNP on a different root port.
name
Identifies the controller hardware type. Used in diagnostics and sometimes configuration.
dev
Driver model state for this abstract device.
DESCRIPTION
Gadgets have a mostly-portable "gadget driver" implementing device functions, handling all usb configurations and interfaces. Gadget
drivers talk to hardware-specific code indirectly, through ops vectors. That insulates the gadget driver from hardware details, and
packages the hardware endpoints through generic i/o queues. The "usb_gadget" and "usb_ep" interfaces provide that insulation from the
hardware.
Except for the driver data, all fields in this structure are read-only to the gadget driver. That driver data is part of the "driver model"
infrastructure in 2.6 (and later) kernels, and for earlier systems is grouped in a similar structure that's not known to the rest of the
kernel.
Values of the three OTG device feature flags are updated before the setup call corresponding to USB_REQ_SET_CONFIGURATION, and before
driver suspend calls. They are valid only when is_otg, and when the device is acting as a B-Peripheral (so is_a_peripheral is false).
AUTHOR
David Brownell <dbrownell@users.sourceforge.net>
Author.
COPYRIGHT Kernel Hackers Manual 2.6. July 2010 STRUCT USB_GADGET(9)