Lines Matching refs:loop
178 struct f_loopback *loop = func_to_loop(f); in loopback_bind() local
196 loop->in_ep = usb_ep_autoconfig(cdev->gadget, &fs_loop_source_desc); in loopback_bind()
197 if (!loop->in_ep) { in loopback_bind()
203 loop->in_ep->driver_data = cdev; /* claim */ in loopback_bind()
205 loop->out_ep = usb_ep_autoconfig(cdev->gadget, &fs_loop_sink_desc); in loopback_bind()
206 if (!loop->out_ep) in loopback_bind()
208 loop->out_ep->driver_data = cdev; /* claim */ in loopback_bind()
228 f->name, loop->in_ep->name, loop->out_ep->name); in loopback_bind()
248 struct f_loopback *loop = ep->driver_data; in loopback_complete() local
249 struct usb_composite_dev *cdev = loop->function.config->cdev; in loopback_complete()
255 if (ep == loop->out_ep) { in loopback_complete()
287 static void disable_loopback(struct f_loopback *loop) in disable_loopback() argument
291 cdev = loop->function.config->cdev; in disable_loopback()
292 disable_endpoints(cdev, loop->in_ep, loop->out_ep, NULL, NULL); in disable_loopback()
293 VDBG(cdev, "%s disabled\n", loop->function.name); in disable_loopback()
301 static int enable_endpoint(struct usb_composite_dev *cdev, struct f_loopback *loop, in enable_endpoint() argument
312 result = config_ep_by_speed(cdev->gadget, &(loop->function), ep); in enable_endpoint()
318 ep->driver_data = loop; in enable_endpoint()
349 enable_loopback(struct usb_composite_dev *cdev, struct f_loopback *loop) in enable_loopback() argument
353 result = enable_endpoint(cdev, loop, loop->in_ep); in enable_loopback()
357 result = enable_endpoint(cdev, loop, loop->out_ep); in enable_loopback()
361 DBG(cdev, "%s enabled\n", loop->function.name); in enable_loopback()
368 struct f_loopback *loop = func_to_loop(f); in loopback_set_alt() local
372 if (loop->in_ep->driver_data) in loopback_set_alt()
373 disable_loopback(loop); in loopback_set_alt()
374 return enable_loopback(cdev, loop); in loopback_set_alt()
379 struct f_loopback *loop = func_to_loop(f); in loopback_disable() local
381 disable_loopback(loop); in loopback_disable()
386 struct f_loopback *loop; in loopback_alloc() local
389 loop = kzalloc(sizeof *loop, GFP_KERNEL); in loopback_alloc()
390 if (!loop) in loopback_alloc()
404 loop->function.name = "loopback"; in loopback_alloc()
405 loop->function.bind = loopback_bind; in loopback_alloc()
406 loop->function.set_alt = loopback_set_alt; in loopback_alloc()
407 loop->function.disable = loopback_disable; in loopback_alloc()
408 loop->function.strings = loopback_strings; in loopback_alloc()
410 loop->function.free_func = lb_free_func; in loopback_alloc()
412 return &loop->function; in loopback_alloc()