Lines Matching refs:frame
706 struct usbvision_frame *frame; in vidioc_querybuf() local
714 frame = &usbvision->frame[vb->index]; in vidioc_querybuf()
715 if (frame->grabstate >= frame_state_ready) in vidioc_querybuf()
717 if (frame->grabstate >= frame_state_done) in vidioc_querybuf()
719 if (frame->grabstate == frame_state_unused) in vidioc_querybuf()
730 vb->timestamp = usbvision->frame[vb->index].timestamp; in vidioc_querybuf()
731 vb->sequence = usbvision->frame[vb->index].sequence; in vidioc_querybuf()
738 struct usbvision_frame *frame; in vidioc_qbuf() local
745 frame = &usbvision->frame[vb->index]; in vidioc_qbuf()
747 if (frame->grabstate != frame_state_unused) in vidioc_qbuf()
751 frame->grabstate = frame_state_ready; in vidioc_qbuf()
752 frame->scanstate = scan_state_scanning; in vidioc_qbuf()
753 frame->scanlength = 0; /* Accumulated in usbvision_parse_data() */ in vidioc_qbuf()
758 frame->v4l2_format = usbvision->palette; in vidioc_qbuf()
761 list_add_tail(&usbvision->frame[vb->index].frame, &usbvision->inqueue); in vidioc_qbuf()
786 struct usbvision_frame, frame); in vidioc_dqbuf()
923 struct usbvision_frame *frame; in usbvision_read() local
951 frame = &usbvision->frame[i]; in usbvision_read()
952 if (frame->grabstate == frame_state_unused) { in usbvision_read()
954 frame->grabstate = frame_state_ready; in usbvision_read()
955 frame->scanstate = scan_state_scanning; in usbvision_read()
957 frame->scanlength = 0; in usbvision_read()
960 frame->v4l2_format = usbvision->palette; in usbvision_read()
963 list_add_tail(&frame->frame, &usbvision->inqueue); in usbvision_read()
982 frame = list_entry(usbvision->outqueue.next, in usbvision_read()
983 struct usbvision_frame, frame); in usbvision_read()
988 if (frame->grabstate == frame_state_error) { in usbvision_read()
989 frame->bytes_read = 0; in usbvision_read()
995 frame->index, frame->bytes_read, frame->scanlength); in usbvision_read()
998 if ((count + frame->bytes_read) > (unsigned long)frame->scanlength) in usbvision_read()
999 count = frame->scanlength - frame->bytes_read; in usbvision_read()
1001 if (copy_to_user(buf, frame->data + frame->bytes_read, count)) in usbvision_read()
1004 frame->bytes_read += count; in usbvision_read()
1007 (unsigned long)count, frame->bytes_read); in usbvision_read()
1014 frame->bytes_read = 0; in usbvision_read()
1017 frame->grabstate = frame_state_unused; in usbvision_read()
1019 if (frame->bytes_read >= frame->scanlength) { in usbvision_read()
1021 frame->bytes_read = 0; in usbvision_read()
1024 frame->grabstate = frame_state_unused; in usbvision_read()
1076 pos = usbvision->frame[i].data; in usbvision_mmap()