From: Sylwester Nawrocki Date: Mon, 30 Jan 2012 17:56:59 +0000 (-0300) Subject: [media] s5p-fimc: Add support for VIDIOC_PREPARE_BUF/CREATE_BUFS ioctls X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=3b4c34aac7abea4754059084d0eef667a1993ac8;p=openwrt%2Fstaging%2Fblogic.git [media] s5p-fimc: Add support for VIDIOC_PREPARE_BUF/CREATE_BUFS ioctls Add VIDIOC_PREPARE_BUF and VIDIOC_CREATE_BUFS ioctl handlers to enable support for multi-size buffer queue. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/video/s5p-fimc/fimc-capture.c b/drivers/media/video/s5p-fimc/fimc-capture.c index a9e9653beeb4..b2fc0b55bc11 100644 --- a/drivers/media/video/s5p-fimc/fimc-capture.c +++ b/drivers/media/video/s5p-fimc/fimc-capture.c @@ -1019,6 +1019,22 @@ static int fimc_cap_dqbuf(struct file *file, void *priv, return vb2_dqbuf(&fimc->vid_cap.vbq, buf, file->f_flags & O_NONBLOCK); } +static int fimc_cap_create_bufs(struct file *file, void *priv, + struct v4l2_create_buffers *create) +{ + struct fimc_dev *fimc = video_drvdata(file); + + return vb2_create_bufs(&fimc->vid_cap.vbq, create); +} + +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); +} + static int fimc_cap_cropcap(struct file *file, void *fh, struct v4l2_cropcap *cr) { @@ -1082,6 +1098,9 @@ static const struct v4l2_ioctl_ops fimc_capture_ioctl_ops = { .vidioc_qbuf = fimc_cap_qbuf, .vidioc_dqbuf = fimc_cap_dqbuf, + .vidioc_prepare_buf = fimc_cap_prepare_buf, + .vidioc_create_bufs = fimc_cap_create_bufs, + .vidioc_streamon = fimc_cap_streamon, .vidioc_streamoff = fimc_cap_streamoff,