static int fimc_lite_prepare_buf(struct file *file, void *priv, struct v4l2_buffer *b) { struct fimc_lite *fimc = video_drvdata(file); return vb2_prepare_buf(&fimc->vb_queue, b); }
static int fimc_cap_prepare_buf(struct file *file, void *priv, struct v4l2_buffer *b) { struct fimc_dev *fimc = video_drvdata(file); return vb2_prepare_buf(&fimc->vid_cap.vbq, b); }
int vb2_ioctl_prepare_buf(struct file *file, void *priv, struct v4l2_buffer *p) { struct video_device *vdev = video_devdata(file); if (vb2_queue_is_busy(vdev, file)) return -EBUSY; return vb2_prepare_buf(vdev->queue, p); }
int v4l2_m2m_prepare_buf(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf) { struct vb2_queue *vq; int ret; vq = v4l2_m2m_get_vq(m2m_ctx, buf->type); ret = vb2_prepare_buf(vq, buf); if (!ret) v4l2_m2m_try_schedule(m2m_ctx); return ret; }