Lines Matching refs:uvc

76 static struct uvcg_format *find_format_by_index(struct uvc_device *uvc, int index)  in find_format_by_index()  argument
82 list_for_each_entry(format, &uvc->header->formats, entry) { in find_format_by_index()
93 static struct uvcg_frame *find_frame_by_index(struct uvc_device *uvc, in find_frame_by_index() argument
101 list_for_each_entry(format, &uvc->header->formats, entry) { in find_frame_by_index()
115 static struct uvcg_format *find_format_by_pix(struct uvc_device *uvc, in find_format_by_pix() argument
121 list_for_each_entry(format, &uvc->header->formats, entry) { in find_format_by_pix()
133 static struct uvcg_frame *find_closest_frame_by_size(struct uvc_device *uvc, in find_closest_frame_by_size() argument
137 struct uvc_video *video = &uvc->video; in find_closest_frame_by_size()
149 list_for_each_entry(format, &uvc->header->formats, entry) { in find_closest_frame_by_size()
172 uvcg_dbg(&video->uvc->func, "Unsupported size %ux%u\n", rw, rh); in find_closest_frame_by_size()
182 uvc_send_response(struct uvc_device *uvc, struct uvc_request_data *data) in uvc_send_response() argument
184 struct usb_composite_dev *cdev = uvc->func.config->cdev; in uvc_send_response()
185 struct usb_request *req = uvc->control_req; in uvc_send_response()
190 req->length = min_t(unsigned int, uvc->event_length, data->length); in uvc_send_response()
191 req->zero = data->length < uvc->event_length; in uvc_send_response()
206 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_querycap() local
207 struct usb_composite_dev *cdev = uvc->func.config->cdev; in uvc_v4l2_querycap()
220 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_get_format() local
221 struct uvc_video *video = &uvc->video; in uvc_v4l2_get_format()
239 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_try_format() local
240 struct uvc_video *video = &uvc->video; in uvc_v4l2_try_format()
249 uvcg_dbg(&uvc->func, "Trying format 0x%08x (%c%c%c%c): %ux%u\n", in uvc_v4l2_try_format()
254 uformat = find_format_by_pix(uvc, fmt->fmt.pix.pixelformat); in uvc_v4l2_try_format()
258 uframe = find_closest_frame_by_size(uvc, uformat, in uvc_v4l2_try_format()
279 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_set_format() local
280 struct uvc_video *video = &uvc->video; in uvc_v4l2_set_format()
301 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_enum_frameintervals() local
306 uformat = find_format_by_pix(uvc, fival->pixel_format); in uvc_v4l2_enum_frameintervals()
340 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_enum_framesizes() local
344 uformat = find_format_by_pix(uvc, fsize->pixel_format); in uvc_v4l2_enum_framesizes()
351 uframe = find_frame_by_index(uvc, uformat, fsize->index + 1); in uvc_v4l2_enum_framesizes()
366 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_enum_format() local
370 if (f->index >= uvc->header->num_fmt) in uvc_v4l2_enum_format()
373 uformat = find_format_by_index(uvc, f->index + 1); in uvc_v4l2_enum_format()
393 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_reqbufs() local
394 struct uvc_video *video = &uvc->video; in uvc_v4l2_reqbufs()
406 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_querybuf() local
407 struct uvc_video *video = &uvc->video; in uvc_v4l2_querybuf()
416 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_qbuf() local
417 struct uvc_video *video = &uvc->video; in uvc_v4l2_qbuf()
424 if (uvc->state == UVC_STATE_STREAMING) in uvc_v4l2_qbuf()
434 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_dqbuf() local
435 struct uvc_video *video = &uvc->video; in uvc_v4l2_dqbuf()
444 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_streamon() local
445 struct uvc_video *video = &uvc->video; in uvc_v4l2_streamon()
460 uvc_function_setup_continue(uvc); in uvc_v4l2_streamon()
461 uvc->state = UVC_STATE_STREAMING; in uvc_v4l2_streamon()
470 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_streamoff() local
471 struct uvc_video *video = &uvc->video; in uvc_v4l2_streamoff()
483 struct uvc_device *uvc = video_get_drvdata(fh->vdev); in uvc_v4l2_subscribe_event() local
490 if (sub->type == UVC_EVENT_SETUP && uvc->func_connected) in uvc_v4l2_subscribe_event()
498 uvc->func_connected = true; in uvc_v4l2_subscribe_event()
500 uvc_function_connect(uvc); in uvc_v4l2_subscribe_event()
506 static void uvc_v4l2_disable(struct uvc_device *uvc) in uvc_v4l2_disable() argument
508 uvc_function_disconnect(uvc); in uvc_v4l2_disable()
509 uvcg_video_enable(&uvc->video, 0); in uvc_v4l2_disable()
510 uvcg_free_buffers(&uvc->video.queue); in uvc_v4l2_disable()
511 uvc->func_connected = false; in uvc_v4l2_disable()
512 wake_up_interruptible(&uvc->func_connected_queue); in uvc_v4l2_disable()
519 struct uvc_device *uvc = video_get_drvdata(fh->vdev); in uvc_v4l2_unsubscribe_event() local
528 uvc_v4l2_disable(uvc); in uvc_v4l2_unsubscribe_event()
540 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_ioctl_default() local
544 return uvc_send_response(uvc, arg); in uvc_v4l2_ioctl_default()
578 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_open() local
588 handle->device = &uvc->video; in uvc_v4l2_open()
598 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_release() local
604 uvc_v4l2_disable(uvc); in uvc_v4l2_release()
619 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_mmap() local
621 return uvcg_queue_mmap(&uvc->video.queue, vma); in uvc_v4l2_mmap()
628 struct uvc_device *uvc = video_get_drvdata(vdev); in uvc_v4l2_poll() local
630 return uvcg_queue_poll(&uvc->video.queue, file, wait); in uvc_v4l2_poll()
639 struct uvc_device *uvc = video_get_drvdata(vdev); in uvcg_v4l2_get_unmapped_area() local
641 return uvcg_queue_get_unmapped_area(&uvc->video.queue, pgoff); in uvcg_v4l2_get_unmapped_area()