/kernel/linux/linux-5.10/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 …]
|
/kernel/linux/linux-5.10/Documentation/ABI/testing/ |
D | configfs-usb-gadget | 1 What: /config/usb-gadget 8 What: /config/usb-gadget/gadget 13 The attributes of a gadget: 16 UDC bind a gadget to UDC/unbind a gadget; 18 to bind a gadget, empty string "" to unbind. 34 What: /config/usb-gadget/gadget/configs 38 This group contains a USB gadget's configurations 40 What: /config/usb-gadget/gadget/configs/config 51 What: /config/usb-gadget/gadget/configs/config/strings 58 What: /config/usb-gadget/gadget/configs/config/strings/language [all …]
|
D | configfs-usb-gadget-uvc | 1 What: /config/usb-gadget/gadget/functions/uvc.name 12 What: /config/usb-gadget/gadget/functions/uvc.name/control 24 What: /config/usb-gadget/gadget/functions/uvc.name/control/class 29 What: /config/usb-gadget/gadget/functions/uvc.name/control/class/ss 34 What: /config/usb-gadget/gadget/functions/uvc.name/control/class/fs 39 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal 44 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal/output 49 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal/output/default 66 What: /config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera 71 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. 12 What: /sys/devices/platform/_UDC_/gadget/gadget-lunX/nofua 17 the SCSI WRITE(10,12) commands when a gadget in USB Mass
|
/kernel/linux/linux-5.10/include/linux/usb/ |
D | gadget.h | 440 static inline void set_gadget_data(struct usb_gadget *gadget, void *data) in set_gadget_data() argument 441 { dev_set_drvdata(&gadget->dev, data); } in set_gadget_data() 442 static inline void *get_gadget_data(struct usb_gadget *gadget) in get_gadget_data() argument 443 { return dev_get_drvdata(&gadget->dev); } in get_gadget_data() 448 static inline struct usb_gadget *usb_get_gadget(struct usb_gadget *gadget) in usb_get_gadget() argument 450 get_device(&gadget->dev); in usb_get_gadget() 451 return gadget; in usb_get_gadget() 453 static inline void usb_put_gadget(struct usb_gadget *gadget) in usb_put_gadget() argument 455 put_device(&gadget->dev); in usb_put_gadget() 458 struct usb_gadget *gadget, void (*release)(struct device *dev)); [all …]
|
/kernel/linux/linux-5.10/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 | 397 status = usb_gadget_deactivate(cdev->gadget); in usb_function_deactivate() 432 status = usb_gadget_activate(cdev->gadget); in usb_function_activate() 553 struct usb_gadget *gadget = cdev->gadget; in config_desc() local 559 if (gadget->speed >= USB_SPEED_SUPER) in config_desc() 560 speed = gadget->speed; in config_desc() 561 else if (gadget_is_dualspeed(gadget)) { in config_desc() 563 if (gadget->speed == USB_SPEED_HIGH) in config_desc() 616 struct usb_gadget *gadget = cdev->gadget; in count_configs() local 623 if (gadget_is_dualspeed(gadget)) { in count_configs() 624 if (gadget->speed == USB_SPEED_HIGH) in count_configs() [all …]
|
/kernel/linux/linux-5.10/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 …]
|
/kernel/linux/linux-5.10/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 | raw_gadget.c | 165 struct usb_gadget *gadget; member 202 usb_ep_dequeue(dev->gadget->ep0, dev->req); in dev_free() 203 usb_ep_free_request(dev->gadget->ep0, dev->req); in dev_free() 266 static int gadget_bind(struct usb_gadget *gadget, in gadget_bind() argument 275 if (strcmp(gadget->name, dev->udc_name) != 0) in gadget_bind() 278 set_gadget_data(gadget, dev); in gadget_bind() 279 req = usb_ep_alloc_request(gadget->ep0, GFP_KERNEL); in gadget_bind() 281 dev_err(&gadget->dev, "usb_ep_alloc_request failed\n"); in gadget_bind() 282 set_gadget_data(gadget, NULL); in gadget_bind() 290 dev->gadget = gadget; in gadget_bind() [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() 410 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() 186 usb_otg_descriptor_init(gadget, usb_desc); in cdc_bind() 197 dev_info(&gadget->dev, "%s, version: " DRIVER_VERSION "\n", in cdc_bind()
|
D | printer.c | 115 struct usb_gadget *gadget = c->cdev->gadget; in printer_do_config() local 118 usb_ep_autoconfig_reset(gadget); in printer_do_config() 120 usb_gadget_set_selfpowered(gadget); in printer_do_config() 122 if (gadget_is_otg(gadget)) { in printer_do_config() 173 if (gadget_is_otg(cdev->gadget) && !otg_desc[0]) { in printer_bind() 176 usb_desc = usb_otg_descriptor_alloc(cdev->gadget); in printer_bind() 181 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() 163 usb_otg_descriptor_init(gadget, usb_desc); in gncm_bind() 174 dev_info(&gadget->dev, "%s\n", DRIVER_DESC); in gncm_bind()
|
D | inode.c | 141 struct usb_gadget *gadget; member 781 switch (data->dev->gadget->speed) { in ep_config() 934 (void) usb_ep_set_halt (dev->gadget->ep0); in ep0_read() 939 struct usb_ep *ep = dev->gadget->ep0; in ep0_read() 955 if (gadget_is_dualspeed(dev->gadget) in ep0_read() 956 && (dev->gadget->speed in ep0_read() 961 usb_gadget_vbus_draw(dev->gadget, 2 * power); in ep0_read() 997 clean_req (dev->gadget->ep0, dev->req); in ep0_read() 1137 retval = setup_req (dev->gadget->ep0, dev->req, len); in ep0_write() 1148 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 …]
|
/kernel/linux/linux-5.10/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 …]
|
/kernel/linux/linux-5.10/drivers/usb/phy/ |
D | phy-gpio-vbus-usb.c | 98 if (!gpio_vbus->phy.otg->gadget) in gpio_vbus_work() 116 usb_gadget_vbus_connect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 126 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 135 usb_gadget_vbus_disconnect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 141 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 155 otg->gadget ? otg->gadget->name : "none"); in gpio_vbus_irq() 157 if (otg->gadget) in gpio_vbus_irq() 167 struct usb_gadget *gadget) in gpio_vbus_set_peripheral() argument 175 if (!gadget) { in gpio_vbus_set_peripheral() 177 otg->gadget->name); in gpio_vbus_set_peripheral() [all …]
|
/kernel/linux/linux-5.10/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 …]
|
/kernel/linux/linux-5.10/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 …]
|
/kernel/linux/linux-5.10/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) 462 gpriv->gadget.speed = usbhs_bus_get_speed(priv); in usbhsg_irq_dev_state() 464 dev_dbg(dev, "state = %x : speed : %d\n", state, gpriv->gadget.speed); in usbhsg_irq_dev_state() 466 if (gpriv->gadget.speed != USB_SPEED_UNKNOWN && in usbhsg_irq_dev_state() 469 gpriv->driver->suspend(&gpriv->gadget); in usbhsg_irq_dev_state() 470 usb_gadget_set_state(&gpriv->gadget, USB_STATE_SUSPENDED); in usbhsg_irq_dev_state() 543 ret = gpriv->driver->setup(&gpriv->gadget, &ctrl); in usbhsg_irq_ctrl_stage() 906 gpriv->gadget.speed = USB_SPEED_UNKNOWN; in usbhsg_try_stop() [all …]
|
/kernel/linux/linux-5.10/drivers/usb/chipidea/ |
D | udc.c | 819 static int _gadget_stop_activity(struct usb_gadget *gadget) in _gadget_stop_activity() argument 822 struct ci_hdrc *ci = container_of(gadget, struct ci_hdrc, gadget); in _gadget_stop_activity() 826 gadget_for_each_ep(ep, gadget) { in _gadget_stop_activity() 833 gadget_for_each_ep(ep, gadget) { in _gadget_stop_activity() 843 ci->gadget.speed = USB_SPEED_UNKNOWN; in _gadget_stop_activity() 867 if (ci->gadget.speed != USB_SPEED_UNKNOWN) in isr_reset_handler() 868 usb_gadget_udc_reset(&ci->gadget, ci->driver); in isr_reset_handler() 870 retval = _gadget_stop_activity(&ci->gadget); in isr_reset_handler() 998 ci->gadget.is_selfpowered; in isr_get_status_response() 1041 usb_gadget_set_state(&ci->gadget, USB_STATE_ADDRESS); in isr_setup_status_complete() [all …]
|
/kernel/linux/linux-5.10/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 …]
|