Home
last modified time | relevance | path

Searched refs:gadget (Results 1 – 25 of 266) sorted by relevance

1234567891011

/Linux-v5.4/drivers/usb/gadget/udc/
Dcore.c38 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/
Dconfigfs-usb-gadget1 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 …]
Dconfigfs-usb-gadget-uvc1 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 …]
Dsysfs-devices-platform-_UDC_-gadget1 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/
Dgadget.h433 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/
Depautoconf.c64 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 …]
Dcomposite.c352 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/
Ddbgp.c27 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 …]
Dether.c214 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 …]
Dcdc2.c93 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()
Dprinter.c116 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()
Dncm.c99 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()
Dinode.c139 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 …]
Dmulti.c138 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/
Dbdc_udc.c86 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/
Ddev.c66 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/
Dphy-gpio-vbus-usb.c104 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 …]
Dphy-tahvo.c80 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/
Dgadget_configfs.rst2 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 …]
Dgadget_serial.rst27 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 …]
Dgadget_multi.rst8 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/
Dudc.c706 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/
Disp1760-udc.c33 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/
Dmod_gadget.c40 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/
Df_obex.c198 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 …]

1234567891011