Lines Matching refs:vb
49 static int __verify_planes_array(struct vb2_buffer *vb, const struct v4l2_buffer *b) in __verify_planes_array() argument
61 if (b->length < vb->num_planes || b->length > VB2_MAX_PLANES) { in __verify_planes_array()
63 "expected %d, got %d\n", vb->num_planes, b->length); in __verify_planes_array()
74 static int __verify_length(struct vb2_buffer *vb, const struct v4l2_buffer *b) in __verify_length() argument
84 for (plane = 0; plane < vb->num_planes; ++plane) { in __verify_length()
88 : vb->planes[plane].length; in __verify_length()
101 ? b->length : vb->planes[0].length; in __verify_length()
110 static int __set_timestamp(struct vb2_buffer *vb, const void *pb) in __set_timestamp() argument
113 struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb); in __set_timestamp()
114 struct vb2_queue *q = vb->vb2_queue; in __set_timestamp()
131 static void vb2_warn_zero_bytesused(struct vb2_buffer *vb) in vb2_warn_zero_bytesused() argument
142 if (vb->vb2_queue->allow_zero_bytesused) in vb2_warn_zero_bytesused()
179 static int __fill_v4l2_buffer(struct vb2_buffer *vb, void *pb) in __fill_v4l2_buffer() argument
182 struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb); in __fill_v4l2_buffer()
183 struct vb2_queue *q = vb->vb2_queue; in __fill_v4l2_buffer()
187 b->index = vb->index; in __fill_v4l2_buffer()
188 b->type = vb->type; in __fill_v4l2_buffer()
189 b->memory = vb->memory; in __fill_v4l2_buffer()
205 b->length = vb->num_planes; in __fill_v4l2_buffer()
206 for (plane = 0; plane < vb->num_planes; ++plane) { in __fill_v4l2_buffer()
208 struct vb2_plane *psrc = &vb->planes[plane]; in __fill_v4l2_buffer()
226 b->length = vb->planes[0].length; in __fill_v4l2_buffer()
227 b->bytesused = vb->planes[0].bytesused; in __fill_v4l2_buffer()
229 b->m.offset = vb->planes[0].m.offset; in __fill_v4l2_buffer()
231 b->m.userptr = vb->planes[0].m.userptr; in __fill_v4l2_buffer()
233 b->m.fd = vb->planes[0].m.fd; in __fill_v4l2_buffer()
251 switch (vb->state) { in __fill_v4l2_buffer()
272 if (vb2_buffer_in_use(q, vb)) in __fill_v4l2_buffer()
283 static int __fill_vb2_buffer(struct vb2_buffer *vb, in __fill_vb2_buffer() argument
286 struct vb2_queue *q = vb->vb2_queue; in __fill_vb2_buffer()
288 struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb); in __fill_vb2_buffer()
292 ret = __verify_length(vb, b); in __fill_vb2_buffer()
317 for (plane = 0; plane < vb->num_planes; ++plane) { in __fill_vb2_buffer()
325 for (plane = 0; plane < vb->num_planes; ++plane) { in __fill_vb2_buffer()
351 for (plane = 0; plane < vb->num_planes; ++plane) { in __fill_vb2_buffer()
356 vb2_warn_zero_bytesused(vb); in __fill_vb2_buffer()
358 if (vb->vb2_queue->allow_zero_bytesused) in __fill_vb2_buffer()
393 vb2_warn_zero_bytesused(vb); in __fill_vb2_buffer()
395 if (vb->vb2_queue->allow_zero_bytesused) in __fill_vb2_buffer()
407 if ((vb->vb2_queue->timestamp_flags & V4L2_BUF_FLAG_TIMESTAMP_MASK) != in __fill_vb2_buffer()
455 struct vb2_buffer *vb; in vb2_querybuf() local
467 vb = q->bufs[b->index]; in vb2_querybuf()
468 ret = __verify_planes_array(vb, b); in vb2_querybuf()
772 struct vb2_buffer *vb = NULL; in vb2_poll() local
847 vb = list_first_entry(&q->done_list, struct vb2_buffer, in vb2_poll()
851 if (vb && (vb->state == VB2_BUF_STATE_DONE in vb2_poll()
852 || vb->state == VB2_BUF_STATE_ERROR)) { in vb2_poll()
1282 struct vb2_buffer *vb; in vb2_thread() local
1304 vb = q->bufs[fileio->b.index]; in vb2_thread()
1306 if (threadio->fnc(vb, threadio->priv)) in vb2_thread()