/Linux-v5.4/drivers/usb/gadget/udc/ |
D | core.c | 38 struct usb_gadget *gadget; member 466 int usb_gadget_frame_number(struct usb_gadget *gadget) in usb_gadget_frame_number() argument 470 ret = gadget->ops->get_frame(gadget); in usb_gadget_frame_number() 472 trace_usb_gadget_frame_number(gadget, ret); in usb_gadget_frame_number() 491 int usb_gadget_wakeup(struct usb_gadget *gadget) in usb_gadget_wakeup() argument 495 if (!gadget->ops->wakeup) { in usb_gadget_wakeup() 500 ret = gadget->ops->wakeup(gadget); in usb_gadget_wakeup() 503 trace_usb_gadget_wakeup(gadget, ret); in usb_gadget_wakeup() 518 int usb_gadget_set_selfpowered(struct usb_gadget *gadget) in usb_gadget_set_selfpowered() argument 522 if (!gadget->ops->set_selfpowered) { in usb_gadget_set_selfpowered() [all …]
|
/Linux-v5.4/Documentation/ABI/testing/ |
D | configfs-usb-gadget | 1 What: /config/usb-gadget 8 What: /config/usb-gadget/gadget 13 The attributes of a gadget: 15 UDC - bind a gadget to UDC/unbind a gadget; 17 to bind a gadget, empty string "" to unbind. 28 What: /config/usb-gadget/gadget/configs 32 This group contains a USB gadget's configurations 34 What: /config/usb-gadget/gadget/configs/config 43 What: /config/usb-gadget/gadget/configs/config/strings 50 What: /config/usb-gadget/gadget/configs/config/strings/language [all …]
|
D | configfs-usb-gadget-uvc | 1 What: /config/usb-gadget/gadget/functions/uvc.name 10 What: /config/usb-gadget/gadget/functions/uvc.name/control 19 What: /config/usb-gadget/gadget/functions/uvc.name/control/class 24 What: /config/usb-gadget/gadget/functions/uvc.name/control/class/ss 29 What: /config/usb-gadget/gadget/functions/uvc.name/control/class/fs 34 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal 39 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal/output 44 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal/output/default 58 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera 63 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera/default [all …]
|
D | sysfs-devices-platform-_UDC_-gadget | 1 What: /sys/devices/platform/_UDC_/gadget/suspended 5 Show the suspend state of an USB composite gadget. 11 What: /sys/devices/platform/_UDC_/gadget/gadget-lunX/nofua 16 the SCSI WRITE(10,12) commands when a gadget in USB Mass
|
/Linux-v5.4/include/linux/usb/ |
D | gadget.h | 433 static inline void set_gadget_data(struct usb_gadget *gadget, void *data) in set_gadget_data() argument 434 { dev_set_drvdata(&gadget->dev, data); } in set_gadget_data() 435 static inline void *get_gadget_data(struct usb_gadget *gadget) in get_gadget_data() argument 436 { return dev_get_drvdata(&gadget->dev); } in get_gadget_data() 443 #define gadget_for_each_ep(tmp, gadget) \ argument 444 list_for_each_entry(tmp, &(gadget)->ep_list, ep_list) 561 int usb_gadget_frame_number(struct usb_gadget *gadget); 562 int usb_gadget_wakeup(struct usb_gadget *gadget); 563 int usb_gadget_set_selfpowered(struct usb_gadget *gadget); 564 int usb_gadget_clear_selfpowered(struct usb_gadget *gadget); [all …]
|
/Linux-v5.4/drivers/usb/gadget/ |
D | epautoconf.c | 64 struct usb_gadget *gadget, in usb_ep_autoconfig_ss() argument 71 if (gadget->ops->match_ep) { in usb_ep_autoconfig_ss() 72 ep = gadget->ops->match_ep(gadget, desc, ep_comp); in usb_ep_autoconfig_ss() 78 list_for_each_entry (ep, &gadget->ep_list, ep_list) { in usb_ep_autoconfig_ss() 79 if (usb_gadget_ep_match_desc(gadget, ep, desc, ep_comp)) in usb_ep_autoconfig_ss() 100 if (++gadget->in_epnum > 15) in usb_ep_autoconfig_ss() 102 desc->bEndpointAddress = USB_DIR_IN | gadget->in_epnum; in usb_ep_autoconfig_ss() 104 if (++gadget->out_epnum > 15) in usb_ep_autoconfig_ss() 106 desc->bEndpointAddress |= gadget->out_epnum; in usb_ep_autoconfig_ss() 150 struct usb_gadget *gadget, in usb_ep_autoconfig() argument [all …]
|
D | composite.c | 352 status = usb_gadget_deactivate(cdev->gadget); in usb_function_deactivate() 384 status = usb_gadget_activate(cdev->gadget); in usb_function_activate() 501 struct usb_gadget *gadget = cdev->gadget; in config_desc() local 507 if (gadget->speed >= USB_SPEED_SUPER) in config_desc() 508 speed = gadget->speed; in config_desc() 509 else if (gadget_is_dualspeed(gadget)) { in config_desc() 511 if (gadget->speed == USB_SPEED_HIGH) in config_desc() 564 struct usb_gadget *gadget = cdev->gadget; in count_configs() local 571 if (gadget_is_dualspeed(gadget)) { in count_configs() 572 if (gadget->speed == USB_SPEED_HIGH) in count_configs() [all …]
|
/Linux-v5.4/drivers/usb/gadget/legacy/ |
D | dbgp.c | 27 struct usb_gadget *gadget; member 124 dev_dbg(&dbgp.gadget->dev, in dbgp_complete() 162 dev_dbg(&dbgp.gadget->dev, in dbgp_enable_ep_req() 204 dev_dbg(&dbgp.gadget->dev, "enable ep: failure (%d:%d)\n", stp, err); in dbgp_enable_ep() 209 static void dbgp_disconnect(struct usb_gadget *gadget) in dbgp_disconnect() argument 218 static void dbgp_unbind(struct usb_gadget *gadget) in dbgp_unbind() argument 226 usb_ep_free_request(gadget->ep0, dbgp.req); in dbgp_unbind() 235 static int dbgp_configure_endpoints(struct usb_gadget *gadget) in dbgp_configure_endpoints() argument 239 usb_ep_autoconfig_reset(gadget); in dbgp_configure_endpoints() 241 dbgp.i_ep = usb_ep_autoconfig(gadget, &i_desc); in dbgp_configure_endpoints() [all …]
|
D | ether.c | 214 if (gadget_is_otg(c->cdev->gadget)) { in rndis_do_config() 256 if (gadget_is_otg(c->cdev->gadget)) { in eth_do_config() 271 } else if (can_support_ecm(c->cdev->gadget)) { in eth_do_config() 306 struct usb_gadget *gadget = cdev->gadget; in eth_bind() local 327 } else if (can_support_ecm(gadget)) { in eth_bind() 367 gether_set_gadget(net, cdev->gadget); in eth_bind() 374 else if (can_support_ecm(gadget)) in eth_bind() 402 if (gadget_is_otg(gadget) && !otg_desc[0]) { in eth_bind() 405 usb_desc = usb_otg_descriptor_alloc(gadget); in eth_bind() 408 usb_otg_descriptor_init(gadget, usb_desc); in eth_bind() [all …]
|
D | cdc2.c | 93 if (gadget_is_otg(c->cdev->gadget)) { in cdc_do_config() 140 struct usb_gadget *gadget = cdev->gadget; in cdc_bind() local 144 if (!can_support_ecm(cdev->gadget)) { in cdc_bind() 145 dev_err(&gadget->dev, "controller '%s' not usable\n", in cdc_bind() 146 gadget->name); in cdc_bind() 178 if (gadget_is_otg(gadget) && !otg_desc[0]) { in cdc_bind() 181 usb_desc = usb_otg_descriptor_alloc(gadget); in cdc_bind() 184 usb_otg_descriptor_init(gadget, usb_desc); in cdc_bind() 195 dev_info(&gadget->dev, "%s, version: " DRIVER_VERSION "\n", in cdc_bind()
|
D | printer.c | 116 struct usb_gadget *gadget = c->cdev->gadget; in printer_do_config() local 119 usb_ep_autoconfig_reset(gadget); in printer_do_config() 121 usb_gadget_set_selfpowered(gadget); in printer_do_config() 123 if (gadget_is_otg(gadget)) { in printer_do_config() 174 if (gadget_is_otg(cdev->gadget) && !otg_desc[0]) { in printer_bind() 177 usb_desc = usb_otg_descriptor_alloc(cdev->gadget); in printer_bind() 182 usb_otg_descriptor_init(cdev->gadget, usb_desc); in printer_bind()
|
D | ncm.c | 99 if (gadget_is_otg(c->cdev->gadget)) { in ncm_do_config() 129 struct usb_gadget *gadget = cdev->gadget; in gncm_bind() local 155 if (gadget_is_otg(gadget) && !otg_desc[0]) { in gncm_bind() 158 usb_desc = usb_otg_descriptor_alloc(gadget); in gncm_bind() 161 usb_otg_descriptor_init(gadget, usb_desc); in gncm_bind() 172 dev_info(&gadget->dev, "%s\n", DRIVER_DESC); in gncm_bind()
|
D | inode.c | 139 struct usb_gadget *gadget; member 778 switch (data->dev->gadget->speed) { in ep_config() 931 (void) usb_ep_set_halt (dev->gadget->ep0); in ep0_read() 936 struct usb_ep *ep = dev->gadget->ep0; in ep0_read() 952 if (gadget_is_dualspeed(dev->gadget) in ep0_read() 953 && (dev->gadget->speed in ep0_read() 958 usb_gadget_vbus_draw(dev->gadget, 2 * power); in ep0_read() 994 clean_req (dev->gadget->ep0, dev->req); in ep0_read() 1134 retval = setup_req (dev->gadget->ep0, dev->req, len); in ep0_write() 1145 dev->gadget->ep0, dev->req, in ep0_write() [all …]
|
D | multi.c | 138 if (gadget_is_otg(c->cdev->gadget)) { in rndis_do_config() 220 if (gadget_is_otg(c->cdev->gadget)) { in cdc_do_config() 296 struct usb_gadget *gadget = cdev->gadget; in multi_bind() local 307 if (!can_support_ecm(cdev->gadget)) { in multi_bind() 308 dev_err(&gadget->dev, "controller '%s' not usable\n", in multi_bind() 309 gadget->name); in multi_bind() 350 gether_set_gadget(ecm_opts->net, cdev->gadget); in multi_bind() 398 if (gadget_is_otg(gadget) && !otg_desc[0]) { in multi_bind() 401 usb_desc = usb_otg_descriptor_alloc(gadget); in multi_bind() 404 usb_otg_descriptor_init(gadget, usb_desc); in multi_bind() [all …]
|
/Linux-v5.4/drivers/usb/gadget/udc/bdc/ |
D | bdc_udc.c | 86 bdc->gadget.ep0->maxpacket = EP0_MAX_PKT_SIZE; in bdc_uspc_connected() 87 bdc->gadget.speed = USB_SPEED_SUPER; in bdc_uspc_connected() 98 bdc->gadget.ep0->maxpacket = 64; in bdc_uspc_connected() 99 bdc->gadget.speed = USB_SPEED_HIGH; in bdc_uspc_connected() 104 bdc->gadget.ep0->maxpacket = 64; in bdc_uspc_connected() 105 bdc->gadget.speed = USB_SPEED_FULL; in bdc_uspc_connected() 110 bdc->gadget.ep0->maxpacket = 8; in bdc_uspc_connected() 111 bdc->gadget.speed = USB_SPEED_LOW; in bdc_uspc_connected() 125 usb_gadget_set_state(&bdc->gadget, USB_STATE_DEFAULT); in bdc_uspc_connected() 145 bdc->gadget_driver->disconnect(&bdc->gadget); in bdc_uspc_disconnected() [all …]
|
/Linux-v5.4/drivers/usb/gadget/udc/aspeed-vhub/ |
D | dev.c | 66 if (d->gadget.speed == USB_SPEED_HIGH) in ast_vhub_dev_enable() 110 d->gadget.speed = USB_SPEED_UNKNOWN; in ast_vhub_dev_disable() 168 st0 = d->gadget.is_selfpowered << USB_DEVICE_SELF_POWERED; in ast_vhub_dev_status() 233 if (d->gadget.speed == USB_SPEED_UNKNOWN) { in ast_vhub_std_dev_request() 234 d->gadget.speed = ep->vhub->speed; in ast_vhub_std_dev_request() 235 if (d->gadget.speed > d->driver->max_speed) in ast_vhub_std_dev_request() 236 d->gadget.speed = d->driver->max_speed; in ast_vhub_std_dev_request() 238 d->gadget.speed); in ast_vhub_std_dev_request() 271 static int ast_vhub_udc_wakeup(struct usb_gadget* gadget) in ast_vhub_udc_wakeup() argument 273 struct ast_vhub_dev *d = to_ast_dev(gadget); in ast_vhub_udc_wakeup() [all …]
|
/Linux-v5.4/drivers/usb/phy/ |
D | phy-gpio-vbus-usb.c | 104 if (!gpio_vbus->phy.otg->gadget) in gpio_vbus_work() 123 usb_gadget_vbus_connect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 133 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 142 usb_gadget_vbus_disconnect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 148 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 163 otg->gadget ? otg->gadget->name : "none"); in gpio_vbus_irq() 165 if (otg->gadget) in gpio_vbus_irq() 175 struct usb_gadget *gadget) in gpio_vbus_set_peripheral() argument 187 if (!gadget) { in gpio_vbus_set_peripheral() 189 otg->gadget->name); in gpio_vbus_set_peripheral() [all …]
|
D | phy-tahvo.c | 80 if (tu->phy.otg->gadget) in check_vbus_state() 81 usb_gadget_vbus_connect(tu->phy.otg->gadget); in check_vbus_state() 99 if (tu->phy.otg->gadget) in check_vbus_state() 100 usb_gadget_vbus_disconnect(tu->phy.otg->gadget); in check_vbus_state() 156 if (tu->phy.otg->gadget) in tahvo_usb_stop_peripheral() 157 usb_gadget_vbus_disconnect(tu->phy.otg->gadget); in tahvo_usb_stop_peripheral() 166 if (tu->phy.otg->gadget) in tahvo_usb_power_off() 167 usb_gadget_vbus_disconnect(tu->phy.otg->gadget); in tahvo_usb_power_off() 222 struct usb_gadget *gadget) in tahvo_usb_set_peripheral() argument 227 dev_dbg(&tu->pt_dev->dev, "%s %p\n", __func__, gadget); in tahvo_usb_set_peripheral() [all …]
|
/Linux-v5.4/Documentation/usb/ |
D | gadget_configfs.rst | 2 Linux USB gadget configured through configfs 18 A gadget is seen by its host as a set of configurations, each of which contains 19 a number of interfaces which, from the gadget's perspective, are known as 24 Creating a gadget means deciding what configurations there will be 31 It also describes how configfs integration into gadget is designed. 62 For each gadget to be created its corresponding directory must be created:: 64 $ mkdir $CONFIGFS_HOME/usb_gadget/<gadget name> 76 Each gadget needs to have its vendor id <VID> and product id <PID> specified:: 81 A gadget also needs its serial number, manufacturer and product strings. 96 Each gadget will consist of a number of configurations, their corresponding [all …]
|
D | gadget_serial.rst | 27 This document and the gadget serial driver itself are 36 Versions of the gadget serial driver are available for the 38 version 2.3 or later of the gadget serial driver in a 2.6 45 gadget and usb drivers as modules. 56 The gadget serial driver is a Linux USB gadget driver, a USB device 61 The gadget serial driver talks over USB to either a CDC ACM driver 84 On the device-side Linux system, the gadget serial driver looks 87 On the host-side system, the gadget serial device looks like a 98 With the gadget serial driver and the host side ACM or generic 100 the host and the gadget side systems as if they were connected by a [all …]
|
D | gadget_multi.rst | 8 The Multifunction Composite Gadget (or g_multi) is a composite gadget 10 a... multifunction gadget. 17 and RNDIS can be turned off. If they are both enabled the gadget will 26 To make use of the gadget one needs to make it work on host side -- 27 without that there's no hope of achieving anything with the gadget. 33 Since the gadget uses standard composite framework and appears as such 45 For the gadget to work under Windows two conditions have to be met: 47 Detecting as composite gadget 50 First of all, Windows need to detect the gadget as an USB composite 51 gadget which on its own have some conditions[4]. If they are met, [all …]
|
/Linux-v5.4/drivers/usb/chipidea/ |
D | udc.c | 706 static int _gadget_stop_activity(struct usb_gadget *gadget) in _gadget_stop_activity() argument 709 struct ci_hdrc *ci = container_of(gadget, struct ci_hdrc, gadget); in _gadget_stop_activity() 713 gadget_for_each_ep(ep, gadget) { in _gadget_stop_activity() 720 gadget_for_each_ep(ep, gadget) { in _gadget_stop_activity() 730 ci->gadget.speed = USB_SPEED_UNKNOWN; in _gadget_stop_activity() 754 if (ci->gadget.speed != USB_SPEED_UNKNOWN) in isr_reset_handler() 755 usb_gadget_udc_reset(&ci->gadget, ci->driver); in isr_reset_handler() 757 retval = _gadget_stop_activity(&ci->gadget); in isr_reset_handler() 885 ci->gadget.is_selfpowered; in isr_get_status_response() 928 usb_gadget_set_state(&ci->gadget, USB_STATE_ADDRESS); in isr_setup_status_complete() [all …]
|
/Linux-v5.4/drivers/usb/isp1760/ |
D | isp1760-udc.c | 33 static inline struct isp1760_udc *gadget_to_udc(struct usb_gadget *gadget) in gadget_to_udc() argument 35 return container_of(gadget, struct isp1760_udc, gadget); in gadget_to_udc() 501 if (udc->gadget.state != USB_STATE_DEFAULT && in isp1760_udc_set_address() 502 udc->gadget.state != USB_STATE_ADDRESS) { in isp1760_udc_set_address() 504 udc->gadget.state); in isp1760_udc_set_address() 508 usb_gadget_set_state(&udc->gadget, addr ? USB_STATE_ADDRESS : in isp1760_udc_set_address() 618 if (udc->gadget.state != USB_STATE_ADDRESS && in isp1760_ep0_setup_standard() 619 udc->gadget.state != USB_STATE_CONFIGURED) in isp1760_ep0_setup_standard() 622 stall = udc->driver->setup(&udc->gadget, req) < 0; in isp1760_ep0_setup_standard() 626 usb_gadget_set_state(&udc->gadget, req->wValue ? in isp1760_ep0_setup_standard() [all …]
|
/Linux-v5.4/drivers/usb/renesas_usbhs/ |
D | mod_gadget.c | 40 struct usb_gadget gadget; member 88 container_of(g, struct usbhsg_gpriv, gadget) 107 #define usbhsg_is_not_connected(gp) ((gp)->gadget.speed == USB_SPEED_UNKNOWN) 461 gpriv->gadget.speed = usbhs_bus_get_speed(priv); in usbhsg_irq_dev_state() 465 gpriv->gadget.speed); in usbhsg_irq_dev_state() 537 ret = gpriv->driver->setup(&gpriv->gadget, &ctrl); in usbhsg_irq_ctrl_stage() 900 gpriv->gadget.speed = USB_SPEED_UNKNOWN; in usbhsg_try_stop() 941 static int usbhsg_gadget_start(struct usb_gadget *gadget, in usbhsg_gadget_start() argument 944 struct usbhsg_gpriv *gpriv = usbhsg_gadget_to_gpriv(gadget); in usbhsg_gadget_start() 957 &gpriv->gadget); in usbhsg_gadget_start() [all …]
|
/Linux-v5.4/drivers/usb/gadget/function/ |
D | f_obex.c | 198 dev_dbg(&cdev->gadget->dev, in obex_set_alt() 206 dev_dbg(&cdev->gadget->dev, in obex_set_alt() 212 dev_dbg(&cdev->gadget->dev, in obex_set_alt() 214 if (config_ep_by_speed(cdev->gadget, f, in obex_set_alt() 216 config_ep_by_speed(cdev->gadget, f, in obex_set_alt() 225 dev_dbg(&cdev->gadget->dev, in obex_set_alt() 253 dev_dbg(&cdev->gadget->dev, "obex ttyGS%d disable\n", obex->port_num); in obex_disable() 267 dev_dbg(&cdev->gadget->dev, in obex_connect() 280 dev_dbg(&cdev->gadget->dev, in obex_disconnect() 295 if (!gadget_is_altset_supported(c->cdev->gadget)) in can_support_obex() [all …]
|