aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/usb/gadget.h
diff options
context:
space:
mode:
authorRuslan Bilovol <ruslan.bilovol@gmail.com>2015-11-23 09:56:35 +0100
committerFelipe Balbi <balbi@ti.com>2015-12-16 10:07:26 -0600
commit2284b29d3d9dd16490909962574d7f3fef83fd97 (patch)
tree715e9d269eebd1a9f4be625d875609640f8ffed5 /include/linux/usb/gadget.h
parentusb: phy: phy-am335x: bypass first VBUS sensing for host-only mode (diff)
downloadwireguard-linux-2284b29d3d9dd16490909962574d7f3fef83fd97.tar.xz
wireguard-linux-2284b29d3d9dd16490909962574d7f3fef83fd97.zip
usb: gadget: bind UDC by name passed via usb_gadget_driver structure
Introduce new 'udc_name' member to usb_gadget_driver structure. The 'udc_name' is a name of UDC that usb_gadget_driver should be bound to. If udc_name is NULL, it will be bound to any available UDC. Tested-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Ruslan Bilovol <ruslan.bilovol@gmail.com> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Tested-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'include/linux/usb/gadget.h')
-rw-r--r--include/linux/usb/gadget.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/usb/gadget.h b/include/linux/usb/gadget.h
index 3d583a10b926..63963c21866d 100644
--- a/include/linux/usb/gadget.h
+++ b/include/linux/usb/gadget.h
@@ -1012,6 +1012,8 @@ static inline int usb_gadget_activate(struct usb_gadget *gadget)
* @reset: Invoked on USB bus reset. It is mandatory for all gadget drivers
* and should be called in_interrupt.
* @driver: Driver model state for this driver.
+ * @udc_name: A name of UDC this driver should be bound to. If udc_name is NULL,
+ * this driver will be bound to any available UDC.
*
* Devices are disabled till a gadget driver successfully bind()s, which
* means the driver will handle setup() requests needed to enumerate (and
@@ -1072,6 +1074,8 @@ struct usb_gadget_driver {
/* FIXME support safe rmmod */
struct device_driver driver;
+
+ char *udc_name;
};