Lines Matching full:gadget

21 #include <linux/usb/gadget.h>
987 * @gadget: gadget
991 static int _gadget_stop_activity(struct usb_gadget *gadget) in _gadget_stop_activity() argument
994 struct ci_hdrc *ci = container_of(gadget, struct ci_hdrc, gadget); in _gadget_stop_activity()
998 gadget_for_each_ep(ep, gadget) { in _gadget_stop_activity()
1005 gadget_for_each_ep(ep, gadget) { in _gadget_stop_activity()
1015 ci->gadget.speed = USB_SPEED_UNKNOWN; in _gadget_stop_activity()
1040 if (ci->gadget.speed != USB_SPEED_UNKNOWN) in isr_reset_handler()
1041 usb_gadget_udc_reset(&ci->gadget, ci->driver); in isr_reset_handler()
1043 retval = _gadget_stop_activity(&ci->gadget); in isr_reset_handler()
1182 ci->gadget.is_selfpowered; in isr_get_status_response()
1228 usb_gadget_set_state(&ci->gadget, USB_STATE_ADDRESS); in isr_setup_status_complete()
1302 dev_warn(&ci->gadget.dev, in otg_a_alt_hnp_support()
1435 ci->gadget.b_hnp_enable = 1; in isr_setup_packet_handler()
1446 ci->gadget.a_hnp_support = 1; in isr_setup_packet_handler()
1464 err = ci->driver->setup(&ci->gadget, &req); in isr_setup_packet_handler()
1606 if (hwep->ci->gadget.speed == USB_SPEED_UNKNOWN) { in ep_disable()
1699 if (hwep->ci->gadget.speed == USB_SPEED_UNKNOWN) { in ep_queue()
1726 if (hwep->ci->gadget.speed != USB_SPEED_UNKNOWN) in ep_dequeue()
1738 usb_gadget_unmap_request(&hwep->ci->gadget, req, hwep->dir); in ep_dequeue()
1801 if (hwep->ci->gadget.speed == USB_SPEED_UNKNOWN) { in ep_fifo_flush()
1828 * GADGET block
1833 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); in ci_udc_get_frame()
1844 * ci_hdrc_gadget_connect: caller makes sure gadget driver is binded
1848 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); in ci_hdrc_gadget_connect()
1865 ci->driver->disconnect(&ci->gadget); in ci_hdrc_gadget_connect()
1870 _gadget_stop_activity(&ci->gadget); in ci_hdrc_gadget_connect()
1878 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); in ci_udc_vbus_session()
1909 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); in ci_udc_wakeup()
1914 if (ci->gadget.speed == USB_SPEED_UNKNOWN) { in ci_udc_wakeup()
1934 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); in ci_udc_vbus_draw()
1943 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); in ci_udc_selfpowered()
1959 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); in ci_udc_pullup()
1983 static int ci_udc_start(struct usb_gadget *gadget,
1985 static int ci_udc_stop(struct usb_gadget *gadget);
1988 static struct usb_ep *ci_udc_match_ep(struct usb_gadget *gadget, in ci_udc_match_ep() argument
1992 struct ci_hdrc *ci = container_of(gadget, struct ci_hdrc, gadget); in ci_udc_match_ep()
1996 list_for_each_entry_reverse(ep, &ci->gadget.ep_list, ep_list) { in ci_udc_match_ep()
2057 * by gadget layer in init_eps()
2069 * don't add to gadget's ep_list in init_eps()
2081 list_add_tail(&hwep->ep.ep_list, &ci->gadget.ep_list); in init_eps()
2101 * ci_udc_start: register a gadget driver
2102 * @gadget: our gadget
2107 static int ci_udc_start(struct usb_gadget *gadget, in ci_udc_start() argument
2110 struct ci_hdrc *ci = container_of(gadget, struct ci_hdrc, gadget); in ci_udc_start()
2135 ci_hdrc_gadget_connect(gadget, 1); in ci_udc_start()
2137 usb_udc_vbus_handler(&ci->gadget, false); in ci_udc_start()
2159 * ci_udc_stop: unregister a gadget driver
2161 static int ci_udc_stop(struct usb_gadget *gadget) in ci_udc_stop() argument
2163 struct ci_hdrc *ci = container_of(gadget, struct ci_hdrc, gadget); in ci_udc_stop()
2175 _gadget_stop_activity(&ci->gadget); in ci_udc_stop()
2220 ci->gadget.speed = hw_port_is_high_speed(ci) ? in udc_irq()
2228 ci->driver->resume(&ci->gadget); in udc_irq()
2232 usb_gadget_set_state(&ci->gadget, in udc_irq()
2242 ci->resume_state = ci->gadget.state; in udc_irq()
2243 if (ci->gadget.speed != USB_SPEED_UNKNOWN && in udc_irq()
2246 ci->driver->suspend(&ci->gadget); in udc_irq()
2249 usb_gadget_set_state(&ci->gadget, in udc_irq()
2262 * udc_start: initialize gadget role
2271 ci->gadget.ops = &usb_gadget_ops; in udc_start()
2272 ci->gadget.speed = USB_SPEED_UNKNOWN; in udc_start()
2273 ci->gadget.max_speed = USB_SPEED_HIGH; in udc_start()
2274 ci->gadget.name = ci->platdata->name; in udc_start()
2275 ci->gadget.otg_caps = otg_caps; in udc_start()
2276 ci->gadget.sg_supported = 1; in udc_start()
2277 ci->gadget.irq = ci->irq; in udc_start()
2280 ci->gadget.quirk_avoids_skb_reserve = 1; in udc_start()
2284 ci->gadget.is_otg = 1; in udc_start()
2286 INIT_LIST_HEAD(&ci->gadget.ep_list); in udc_start()
2307 ci->gadget.ep0 = &ci->ep0in->ep; in udc_start()
2309 retval = usb_add_gadget_udc(dev, &ci->gadget); in udc_start()
2334 usb_del_gadget_udc(&ci->gadget); in ci_hdrc_gadget_destroy()
2383 if (ci->gadget.connected && in udc_suspend()
2385 usb_gadget_disconnect(&ci->gadget); in udc_suspend()
2395 usb_gadget_vbus_disconnect(&ci->gadget); in udc_resume()
2397 !ci->gadget.connected) { in udc_resume()
2398 usb_gadget_connect(&ci->gadget); in udc_resume()
2411 * This function initializes the gadget, if the device is "device capable".
2432 rdrv->name = "gadget"; in ci_hdrc_gadget_init()