Lines Matching full:bulk
971 * uvc_video_decode_start is called with URB data at the start of a bulk or
989 * uvc_video_decode_end is called with header data at the end of a bulk or
1174 * uvc_video_encode_data(). Only bulk transfers are currently supported.
1203 nbytes = min(stream->bulk.max_payload_size - stream->bulk.payload_size, in uvc_video_encode_data()
1389 if (urb->actual_length == 0 && stream->bulk.header_size == 0) in uvc_video_decode_bulk()
1394 stream->bulk.payload_size += len; in uvc_video_decode_bulk()
1399 if (stream->bulk.header_size == 0 && !stream->bulk.skip_payload) { in uvc_video_decode_bulk()
1408 stream->bulk.skip_payload = 1; in uvc_video_decode_bulk()
1410 memcpy(stream->bulk.header, mem, ret); in uvc_video_decode_bulk()
1411 stream->bulk.header_size = ret; in uvc_video_decode_bulk()
1420 /* The buffer queue might have been cancelled while a bulk transfer in uvc_video_decode_bulk()
1426 if (!stream->bulk.skip_payload && buf != NULL) in uvc_video_decode_bulk()
1433 stream->bulk.payload_size >= stream->bulk.max_payload_size) { in uvc_video_decode_bulk()
1434 if (!stream->bulk.skip_payload && buf != NULL) { in uvc_video_decode_bulk()
1435 uvc_video_decode_end(stream, buf, stream->bulk.header, in uvc_video_decode_bulk()
1436 stream->bulk.payload_size); in uvc_video_decode_bulk()
1441 stream->bulk.header_size = 0; in uvc_video_decode_bulk()
1442 stream->bulk.skip_payload = 0; in uvc_video_decode_bulk()
1443 stream->bulk.payload_size = 0; in uvc_video_decode_bulk()
1462 if (stream->bulk.header_size == 0) { in uvc_video_encode_bulk()
1464 stream->bulk.header_size = ret; in uvc_video_encode_bulk()
1465 stream->bulk.payload_size += ret; in uvc_video_encode_bulk()
1473 stream->bulk.payload_size += ret; in uvc_video_encode_bulk()
1477 stream->bulk.payload_size == stream->bulk.max_payload_size) { in uvc_video_encode_bulk()
1486 stream->bulk.header_size = 0; in uvc_video_encode_bulk()
1487 stream->bulk.payload_size = 0; in uvc_video_encode_bulk()
1585 * Limit the buffer size to UVC_MAX_PACKETS bulk/isochronous packets. If the
1601 /* Compute the number of packets. Bulk endpoints might transfer UVC in uvc_alloc_urb_buffers()
1644 * Uninitialize isochronous/bulk URBs and free transfer buffers.
1755 * Initialize bulk URBs and allocate transfer buffers. The packet size is
1769 stream->bulk.max_payload_size = size; in uvc_init_video_bulk()
1808 * Initialize isochronous/bulk URBs and allocate transfer buffers.
1821 stream->bulk.header_size = 0; in uvc_video_start_transfer()
1822 stream->bulk.skip_payload = 0; in uvc_video_start_transfer()
1823 stream->bulk.payload_size = 0; in uvc_video_start_transfer()
1880 /* Bulk endpoint, proceed to URB initialization. */ in uvc_video_start_transfer()
2114 /* UVC doesn't specify how to inform a bulk-based device in uvc_video_stop_streaming()
2117 * bulk endpoint, mimic the same behaviour. in uvc_video_stop_streaming()