Lines Matching refs:f
295 uvc_function_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl) in uvc_function_setup() argument
297 struct uvc_device *uvc = to_uvc(f); in uvc_function_setup()
307 uvcg_info(f, "invalid request type\n"); in uvc_function_setup()
337 uvc_function_get_alt(struct usb_function *f, unsigned interface) in uvc_function_get_alt() argument
339 struct uvc_device *uvc = to_uvc(f); in uvc_function_get_alt()
342 uvcg_info(f, "%s(%u)\n", __func__, interface); in uvc_function_get_alt()
344 opts = fi_to_f_uvc_opts(f->fi); in uvc_function_get_alt()
364 uvc_function_set_alt(struct usb_function *f, unsigned interface, unsigned alt) in uvc_function_set_alt() argument
366 struct uvc_device *uvc = to_uvc(f); in uvc_function_set_alt()
367 struct usb_composite_dev *cdev = f->config->cdev; in uvc_function_set_alt()
373 uvcg_info(f, "%s(%u, %u)\n", __func__, interface, alt); in uvc_function_set_alt()
375 opts = fi_to_f_uvc_opts(f->fi); in uvc_function_set_alt()
381 uvcg_info(f, "reset UVC Control\n"); in uvc_function_set_alt()
385 if (config_ep_by_speed(cdev->gadget, f, uvc->control_ep)) in uvc_function_set_alt()
439 ret = config_ep_by_speed(f->config->cdev->gadget, in uvc_function_set_alt()
505 uvc_function_disable(struct usb_function *f) in uvc_function_disable() argument
507 struct uvc_device *uvc = to_uvc(f); in uvc_function_disable()
510 uvcg_info(f, "%s()\n", __func__); in uvc_function_disable()
522 static void uvc_function_suspend(struct usb_function *f) in uvc_function_suspend() argument
524 struct uvc_device *uvc = to_uvc(f); in uvc_function_suspend()
534 static void uvc_function_resume(struct usb_function *f) in uvc_function_resume() argument
536 struct uvc_device *uvc = to_uvc(f); in uvc_function_resume()
772 uvc_function_bind(struct usb_configuration *c, struct usb_function *f) in uvc_function_bind() argument
775 struct uvc_device *uvc = to_uvc(f); in uvc_function_bind()
784 uvcg_info(f, "%s()\n", __func__); in uvc_function_bind()
786 opts = fi_to_f_uvc_opts(f->fi); in uvc_function_bind()
805 uvcg_info(f, "overriding streaming_maxpacket to %d\n", in uvc_function_bind()
870 uvcg_info(f, "Unable to allocate control EP\n"); in uvc_function_bind()
911 uvcg_info(f, "Unable to allocate streaming EP\n"); in uvc_function_bind()
950 if ((ret = usb_interface_id(c, f)) < 0) in uvc_function_bind()
957 if ((ret = usb_interface_id(c, f)) < 0) in uvc_function_bind()
971 f->fs_descriptors = uvc_copy_descriptors(uvc, USB_SPEED_FULL); in uvc_function_bind()
972 if (IS_ERR(f->fs_descriptors)) { in uvc_function_bind()
973 ret = PTR_ERR(f->fs_descriptors); in uvc_function_bind()
974 f->fs_descriptors = NULL; in uvc_function_bind()
978 f->hs_descriptors = uvc_copy_descriptors(uvc, USB_SPEED_HIGH); in uvc_function_bind()
979 if (IS_ERR(f->hs_descriptors)) { in uvc_function_bind()
980 ret = PTR_ERR(f->hs_descriptors); in uvc_function_bind()
981 f->hs_descriptors = NULL; in uvc_function_bind()
986 f->ss_descriptors = uvc_copy_descriptors(uvc, USB_SPEED_SUPER); in uvc_function_bind()
987 if (IS_ERR(f->ss_descriptors)) { in uvc_function_bind()
988 ret = PTR_ERR(f->ss_descriptors); in uvc_function_bind()
989 f->ss_descriptors = NULL; in uvc_function_bind()
1007 uvcg_err(f, "failed to register V4L2 device\n"); in uvc_function_bind()
1021 uvcg_err(f, "failed to register video device\n"); in uvc_function_bind()
1034 usb_free_all_descriptors(f); in uvc_function_bind()
1042 static void uvc_free_inst(struct usb_function_instance *f) in uvc_free_inst() argument
1044 struct f_uvc_opts *opts = fi_to_f_uvc_opts(f); in uvc_free_inst()
1187 static void uvc_free(struct usb_function *f) in uvc_free() argument
1189 struct uvc_device *uvc = to_uvc(f); in uvc_free()
1190 struct f_uvc_opts *opts = container_of(f->fi, struct f_uvc_opts, in uvc_free()
1197 struct usb_function *f) in uvc_function_unbind() argument
1200 struct uvc_device *uvc = to_uvc(f); in uvc_function_unbind()
1203 uvcg_info(f, "%s()\n", __func__); in uvc_function_unbind()
1211 uvcg_dbg(f, "waiting for clean disconnect\n"); in uvc_function_unbind()
1214 uvcg_dbg(f, "done waiting with ret: %ld\n", wait_ret); in uvc_function_unbind()
1226 uvcg_warn(f, "%s no clean disconnect, wait for release\n", __func__); in uvc_function_unbind()
1229 uvcg_dbg(f, "done waiting for release with ret: %ld\n", wait_ret); in uvc_function_unbind()
1235 usb_free_all_descriptors(f); in uvc_function_unbind()