/drivers/usb/gadget/ |
H A D | inode.c | 2 * inode.c -- user mode filesystem api for usb gadget controllers 32 #include <linux/usb/gadget.h> 48 * - First, dev_config() is called when /dev/gadget/$CHIP is configured 54 * called when each /dev/gadget/ep* file is configured (by writing 81 /* /dev/gadget/$CHIP represents ep0 and the whole device */ 87 /* Only one open() of /dev/gadget/$CHIP; only one file tracks 136 struct usb_gadget *gadget; member in struct:dev_data 178 /* other /dev/gadget/$ENDPOINT files represent endpoints */ 231 /* NOTE: don't use dev_printk calls before binding to the gadget 235 /* too wordy: dev_printk(level , &(d)->gadget 1297 struct usb_gadget *gadget = dev->gadget; local 1379 gadgetfs_setup(struct usb_gadget *gadget, const struct usb_ctrlrequest *ctrl) argument 1665 gadgetfs_unbind(struct usb_gadget *gadget) argument 1689 gadgetfs_bind(struct usb_gadget *gadget) argument 1728 gadgetfs_disconnect(struct usb_gadget *gadget) argument 1746 gadgetfs_suspend(struct usb_gadget *gadget) argument 1786 gadgetfs_probe(struct usb_gadget *gadget) argument [all...] |
H A D | gmidi.c | 34 #include <linux/usb/gadget.h> 143 struct usb_gadget *gadget = cdev->gadget; local 166 gcnum = usb_gadget_controller_number(gadget); 173 __func__, gadget->name);
|
H A D | f_loopback.c | 189 loop->in_ep = usb_ep_autoconfig(cdev->gadget, &fs_loop_source_desc); 193 f->name, cdev->gadget->name); 198 loop->out_ep = usb_ep_autoconfig(cdev->gadget, &fs_loop_sink_desc); 204 if (gadget_is_dualspeed(c->cdev->gadget)) { 213 if (gadget_is_superspeed(c->cdev->gadget)) { 222 (gadget_is_superspeed(c->cdev->gadget) ? "super" : 223 (gadget_is_dualspeed(c->cdev->gadget) ? "dual" : "full")), 303 result = config_ep_by_speed(cdev->gadget, &(loop->function), ep); 313 result = config_ep_by_speed(cdev->gadget, &(loop->function), ep); 424 if (gadget_is_otg(cdev->gadget)) { [all...] |
H A D | f_subset.c | 269 if (config_ep_by_speed(cdev->gadget, f, geth->port.in_ep) || 270 config_ep_by_speed(cdev->gadget, f, geth->port.out_ep)) { 310 ep = usb_ep_autoconfig(cdev->gadget, &fs_subset_in_desc); 316 ep = usb_ep_autoconfig(cdev->gadget, &fs_subset_out_desc); 331 if (gadget_is_dualspeed(c->cdev->gadget)) { 343 if (gadget_is_superspeed(c->cdev->gadget)) { 361 gadget_is_superspeed(c->cdev->gadget) ? "super" : 362 gadget_is_dualspeed(c->cdev->gadget) ? "dual" : "full", 386 if (gadget_is_superspeed(c->cdev->gadget)) 388 if (gadget_is_dualspeed(c->cdev->gadget)) [all...] |
H A D | omap_udc.c | 34 #include <linux/usb/gadget.h> 69 * D+ pullup to allow enumeration. That's too early for the gadget 72 * optional new "UDC not yet running" state to the gadget driver model, 196 if (!udc->driver || udc->gadget.speed == USB_SPEED_UNKNOWN) { 307 dma_unmap_single(ep->udc->gadget.dev.parent, 315 dma_sync_single_for_cpu(ep->udc->gadget.dev.parent, 945 if (!udc->driver || udc->gadget.speed == USB_SPEED_UNKNOWN) 951 ep->udc->gadget.dev.parent, 960 ep->udc->gadget.dev.parent, 1188 static int omap_get_frame(struct usb_gadget *gadget) argument 1194 omap_wakeup(struct usb_gadget *gadget) argument 1224 omap_set_selfpowered(struct usb_gadget *gadget, int is_selfpowered) argument 1303 omap_vbus_session(struct usb_gadget *gadget, int is_active) argument 1342 omap_vbus_draw(struct usb_gadget *gadget, unsigned mA) argument 1352 omap_pullup(struct usb_gadget *gadget, int is_on) argument [all...] |
H A D | zero.c | 16 * can write a hardware-agnostic gadget driver running inside a USB device. 222 struct usb_gadget *g = cdev->gadget; 240 if (cdev->gadget->speed == USB_SPEED_UNKNOWN) 261 struct usb_gadget *gadget = cdev->gadget; local 298 gcnum = usb_gadget_controller_number(gadget); 302 /* gadget zero is so simple (for now, no altsettings) that 310 longname, gadget->name); 319 gadget->name);
|
H A D | f_ecm.c | 413 data[0] = cpu_to_le32(ecm_bitrate(cdev->gadget)); 416 DBG(cdev, "notify speed %d\n", ecm_bitrate(cdev->gadget)); 518 value = usb_ep_queue(cdev->gadget->ep0, req, GFP_ATOMIC); 546 if (config_ep_by_speed(cdev->gadget, f, ecm->notify)) 565 if (config_ep_by_speed(cdev->gadget, f, 567 config_ep_by_speed(cdev->gadget, f, 584 ecm->port.is_zlp_ok = !(gadget_is_musbhdrc(cdev->gadget) 711 ep = usb_ep_autoconfig(cdev->gadget, &fs_ecm_in_desc); 717 ep = usb_ep_autoconfig(cdev->gadget, &fs_ecm_out_desc); 727 ep = usb_ep_autoconfig(cdev->gadget, [all...] |
H A D | fsl_udc_core.c | 36 #include <linux/usb/gadget.h> 188 dma_unmap_single(ep->udc->gadget.dev.parent, 196 dma_sync_single_for_cpu(ep->udc->gadget.dev.parent, 210 /* complete() is from gadget layer, 383 if (udc->gadget.is_otg) { 535 * for example the do_set_interface() in gadget layer, 558 if (!udc->driver || (udc->gadget.speed == USB_SPEED_UNKNOWN)) 568 /* Assume the max packet size from gadget is always correct */ 889 if (!udc->driver || udc->gadget.speed == USB_SPEED_UNKNOWN) 896 req->req.dma = dma_map_single(ep->udc->gadget 1150 fsl_get_frame(struct usb_gadget *gadget) argument 1158 fsl_wakeup(struct usb_gadget *gadget) argument 1184 fsl_vbus_session(struct usb_gadget *gadget, int is_active) argument 1210 fsl_vbus_draw(struct usb_gadget *gadget, unsigned mA) argument 1223 fsl_pullup(struct usb_gadget *gadget, int is_on) argument [all...] |
H A D | f_sourcesink.c | 202 ss->in_ep = usb_ep_autoconfig(cdev->gadget, &fs_source_desc); 206 f->name, cdev->gadget->name); 211 ss->out_ep = usb_ep_autoconfig(cdev->gadget, &fs_sink_desc); 217 if (gadget_is_dualspeed(c->cdev->gadget)) { 226 if (gadget_is_superspeed(c->cdev->gadget)) { 235 (gadget_is_superspeed(c->cdev->gadget) ? "super" : 236 (gadget_is_dualspeed(c->cdev->gadget) ? "dual" : "full")), 264 * OR otherwise when host and gadget agree on how large 395 result = config_ep_by_speed(cdev->gadget, &(ss->function), ep); 414 result = config_ep_by_speed(cdev->gadget, [all...] |
H A D | mass_storage.c | 19 * addition to providing an example of a genuinely useful gadget 116 if (gadget_is_otg(c->cdev->gadget)) { 150 dev_info(&cdev->gadget->dev,
|
H A D | u_ether.h | 2 * u_ether.h -- interface to USB gadget "ethernet link" utilities 73 /* netdev setup/teardown as directed by the gadget driver */ 85 static inline bool can_support_ecm(struct usb_gadget *gadget) argument 87 if (!gadget_supports_altsettings(gadget))
|
H A D | at91_udc.c | 31 #include <linux/usb/gadget.h> 175 seq_printf(s, "vbus %s, pullup %s, %s powered%s, gadget %s\n\n", 214 list_for_each_entry (ep, &udc->gadget.ep_list, ep.ep_list) { 428 * gadget driver IN bytecounts can be wrong in fault cases. That's 432 * So all gadget drivers must accept that potential error. Some 487 if (!udc->driver || udc->gadget.speed == USB_SPEED_UNKNOWN) { 628 if (!udc || !udc->driver || udc->gadget.speed == USB_SPEED_UNKNOWN) { 660 * defer changing CONFG until after the gadget driver 788 static int at91_get_frame(struct usb_gadget *gadget) argument 790 struct at91_udc *udc = to_udc(gadget); 797 at91_wakeup(struct usb_gadget *gadget) argument 942 at91_vbus_session(struct usb_gadget *gadget, int is_active) argument 958 at91_pullup(struct usb_gadget *gadget, int is_on) argument 970 at91_set_selfpowered(struct usb_gadget *gadget, int is_on) argument [all...] |
H A D | dummy_hcd.c | 17 * This exposes a device side "USB gadget" API, driven by requests to a 40 #include <linux/usb/gadget.h> 78 /* gadget side driver data structres */ 82 struct usb_gadget *gadget; member in struct:dummy_ep 187 struct usb_gadget gadget; member in struct:dummy 219 return dum->gadget.dev.parent; 224 return container_of(ep->gadget, struct dummy, gadget); 227 static inline struct dummy_hcd *gadget_to_dummy_hcd(struct usb_gadget *gadget) argument 229 struct dummy *dum = container_of(gadget, struc [all...] |
H A D | mv_udc_core.c | 29 #include <linux/usb/gadget.h> 245 dma_unmap_single(ep->udc->gadget.dev.parent, 252 dma_sync_single_for_cpu(ep->udc->gadget.dev.parent, 266 * complete() is from gadget layer, 471 if (!udc->driver || udc->gadget.speed == USB_SPEED_UNKNOWN) 728 if (!udc->driver || udc->gadget.speed == USB_SPEED_UNKNOWN) 735 req->req.dma = dma_map_single(ep->udc->gadget.dev.parent, 742 dma_sync_single_for_device(ep->udc->gadget.dev.parent, 1144 static int mv_udc_get_frame(struct usb_gadget *gadget) argument 1149 if (!gadget) 1160 mv_udc_wakeup(struct usb_gadget *gadget) argument 1179 mv_udc_vbus_session(struct usb_gadget *gadget, int is_active) argument 1212 mv_udc_pullup(struct usb_gadget *gadget, int is_on) argument [all...] |
H A D | pch_udc.c | 17 #include <linux/usb/gadget.h> 324 * @gadget: gadget driver data 325 * @driver: reference to gadget driver bound 336 * @connected: gadget driver associated 352 struct usb_gadget gadget; member in struct:pch_udc_dev 622 dev->driver->disconnect(&dev->gadget); 1108 * @gadget: Reference to the gadget driver 1112 * -EINVAL: If the gadget passe 1114 pch_udc_pcd_get_frame(struct usb_gadget *gadget) argument 1132 pch_udc_pcd_wakeup(struct usb_gadget *gadget) argument 1156 pch_udc_pcd_selfpowered(struct usb_gadget *gadget, int value) argument 1180 pch_udc_pcd_pullup(struct usb_gadget *gadget, int is_on) argument 1212 pch_udc_pcd_vbus_session(struct usb_gadget *gadget, int is_active) argument 1234 pch_udc_pcd_vbus_draw(struct usb_gadget *gadget, unsigned int mA) argument [all...] |
H A D | pxa25x_udc.c | 48 #include <linux/usb/gadget.h> 70 * Such controller drivers work with a gadget driver. The gadget driver 74 * usb hardware so that the gadget drivers will be more portable. 125 * used by gadget driver; and the inner talker-to-hardware core. 209 * for a single interface (with only the default altsetting) and for gadget 247 if (!dev->driver || dev->gadget.speed == USB_SPEED_UNKNOWN) { 295 /* for the pxa25x, these can just wrap kmalloc/kfree. gadget drivers 654 || dev->gadget.speed == USB_SPEED_UNKNOWN)) { 855 if (ep->dev->gadget [all...] |
H A D | s3c2410_udc.c | 2 * linux/drivers/usb/gadget/s3c2410_udc.c 35 #include <linux/usb/gadget.h> 731 /* deliver the request to the gadget driver */ 732 ret = dev->driver->setup(&dev->gadget, crq); 938 dev->gadget.speed = USB_SPEED_UNKNOWN; 945 dev->gadget.speed = USB_SPEED_FULL; 964 if (dev->gadget.speed != USB_SPEED_UNKNOWN 967 dev->driver->resume(&dev->gadget); 978 if (dev->gadget.speed != USB_SPEED_UNKNOWN 981 dev->driver->suspend(&dev->gadget); 1040 to_s3c2410_udc(struct usb_gadget *gadget) argument 1454 s3c2410_udc_set_selfpowered(struct usb_gadget *gadget, int value) argument 1495 s3c2410_udc_vbus_session(struct usb_gadget *gadget, int is_active) argument 1506 s3c2410_udc_pullup(struct usb_gadget *gadget, int is_on) argument [all...] |
H A D | fsl_qe_udc.c | 2 * driver/usb/gadget/fsl_qe_udc.c 39 #include <linux/usb/gadget.h> 56 /*ep name is important in gadget, it should obey the convention of ep_match()*/ 101 dma_unmap_single(udc->gadget.dev.parent, 109 dma_sync_single_for_cpu(udc->gadget.dev.parent, 124 /* this complete() should a func implemented by gadget layer, 453 ep->rxbuf_d = dma_map_single(udc_controller->gadget.dev.parent, 459 dma_sync_single_for_device(udc_controller->gadget.dev.parent, 554 switch (udc->gadget.speed) { 575 switch (udc->gadget 1881 qe_get_frame(struct usb_gadget *gadget) argument 1899 qe_wakeup(struct usb_gadget *gadget) argument 1906 qe_vbus_session(struct usb_gadget *gadget, int is_active) argument 1918 qe_vbus_draw(struct usb_gadget *gadget, unsigned mA) argument 1926 qe_pullup(struct usb_gadget *gadget, int is_on) argument [all...] |
H A D | net2280.c | 11 * This driver should work well with most "gadget" drivers, including 12 * the File Storage, Serial, and Ethernet/RNDIS gadget drivers 56 #include <linux/usb/gadget.h> 89 * Some gadget drivers work better with the dma support here than others. 154 if (!dev->driver || dev->gadget.speed == USB_SPEED_UNKNOWN) 193 && dev->gadget.speed == USB_SPEED_HIGH 199 if ((dev->gadget.speed == USB_SPEED_HIGH 201 || (dev->gadget.speed == USB_SPEED_FULL 529 && ep->dev->gadget.speed == USB_SPEED_FULL) { 558 && ep->dev->gadget [all...] |
H A D | f_eem.c | 203 if (config_ep_by_speed(cdev->gadget, f, 205 config_ep_by_speed(cdev->gadget, f, 263 ep = usb_ep_autoconfig(cdev->gadget, &eem_fs_in_desc); 269 ep = usb_ep_autoconfig(cdev->gadget, &eem_fs_out_desc); 286 if (gadget_is_dualspeed(c->cdev->gadget)) { 298 if (gadget_is_superspeed(c->cdev->gadget)) { 311 gadget_is_superspeed(c->cdev->gadget) ? "super" : 312 gadget_is_dualspeed(c->cdev->gadget) ? "dual" : "full", 340 if (gadget_is_superspeed(c->cdev->gadget)) 342 if (gadget_is_dualspeed(c->cdev->gadget)) [all...] |
H A D | f_acm.c | 367 cdev->gadget->ep0->driver_data = acm; 411 value = usb_ep_queue(cdev->gadget->ep0, req, GFP_ATOMIC); 434 if (config_ep_by_speed(cdev->gadget, f, acm->notify)) 447 if (config_ep_by_speed(cdev->gadget, f, 449 config_ep_by_speed(cdev->gadget, f, 634 ep = usb_ep_autoconfig(cdev->gadget, &acm_fs_in_desc); 640 ep = usb_ep_autoconfig(cdev->gadget, &acm_fs_out_desc); 646 ep = usb_ep_autoconfig(cdev->gadget, &acm_fs_notify_desc); 671 if (gadget_is_dualspeed(c->cdev->gadget)) { 682 if (gadget_is_superspeed(c->cdev->gadget)) { [all...] |
H A D | imx_udc.c | 2 * driver/usb/gadget/imx_udc.c 36 #include <linux/usb/gadget.h> 59 imx_usb->gadget.speed = USB_SPEED_FULL; 70 imx_usb->gadget.speed = USB_SPEED_UNKNOWN; 323 struct imx_udc_struct, gadget); 648 i = imx_usb->driver->setup(&imx_usb->gadget, &u.r); 664 * USB gadget callback functions 698 if (!imx_usb->driver || imx_usb->gadget.speed == USB_SPEED_UNKNOWN) { 785 host. This assume all gadget drivers reply set 791 "<%s> gadget repl [all...] |
H A D | m66592-udc.c | 2 * M66592 UDC (USB gadget) 21 #include <linux/usb/gadget.h> 25 MODULE_DESCRIPTION("M66592 USB gadget driver"); 96 m66592->gadget.speed = USB_SPEED_UNKNOWN; 98 m66592->driver->disconnect(&m66592->gadget); 489 /* if complete is true, gadget driver complete function is not call */ 723 if (ep->m66592->gadget.speed == USB_SPEED_UNKNOWN) 999 m66592_queue(m66592->gadget.ep0, m66592->ep0_req, GFP_KERNEL); 1126 m66592->gadget.speed = USB_SPEED_HIGH; 1129 m66592->gadget 1554 m66592_pullup(struct usb_gadget *gadget, int is_on) argument [all...] |
/drivers/usb/dwc3/ |
H A D | gadget.c | 2 * gadget.c - DesignWare USB3 DRD Controller Gadget Framework Link 51 #include <linux/usb/gadget.h> 54 #include "gadget.h" 241 usb_gadget_unmap_request(&dwc->gadget, &req->request, 926 usb_gadget_unmap_request(&dwc->gadget, &req->request, 963 ret = usb_gadget_map_request(&dwc->gadget, &req->request, 976 * If we get XferNotReady before gadget driver 1315 dev_vdbg(dwc->dev, "gadget %s data soft-%s\n", 1348 dwc->gadget.name, 1355 dwc->gadget [all...] |
/drivers/usb/otg/ |
H A D | ab8500-usb.c | 184 if (ab->phy.otg->gadget) { 187 v = ab->phy.otg->gadget; 268 if (!ab->phy.otg->gadget) 285 USB_EVENT_ENUMERATED, ab->phy.otg->gadget); 300 struct usb_gadget *gadget) 314 if (!gadget) { 316 otg->gadget = NULL; 319 otg->gadget = gadget; 299 ab8500_usb_set_peripheral(struct usb_otg *otg, struct usb_gadget *gadget) argument
|