]> Pileus Git - ~andy/linux/commitdiff
[media] v4l: s5p-tv: mixer: support for dmabuf exporting
authorTomasz Stanislawski <t.stanislaws@samsung.com>
Thu, 14 Jun 2012 14:32:27 +0000 (11:32 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 25 Nov 2012 19:21:51 +0000 (17:21 -0200)
This patch enhances s5p-tv with support for DMABUF exporting via
VIDIOC_EXPBUF ioctl.

Signed-off-by: Tomasz Stanislawski <t.stanislaws@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Tested-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/platform/s5p-tv/mixer_video.c

index 79a7ea3ae04a102d03879d70847f04a191091303..7379e77bf4e1daf1b89ae7a3b66ba24322c18942 100644 (file)
@@ -697,6 +697,15 @@ static int mxr_dqbuf(struct file *file, void *priv, struct v4l2_buffer *p)
        return vb2_dqbuf(&layer->vb_queue, p, file->f_flags & O_NONBLOCK);
 }
 
+static int mxr_expbuf(struct file *file, void *priv,
+       struct v4l2_exportbuffer *eb)
+{
+       struct mxr_layer *layer = video_drvdata(file);
+
+       mxr_dbg(layer->mdev, "%s:%d\n", __func__, __LINE__);
+       return vb2_expbuf(&layer->vb_queue, eb);
+}
+
 static int mxr_streamon(struct file *file, void *priv, enum v4l2_buf_type i)
 {
        struct mxr_layer *layer = video_drvdata(file);
@@ -724,6 +733,7 @@ static const struct v4l2_ioctl_ops mxr_ioctl_ops = {
        .vidioc_querybuf = mxr_querybuf,
        .vidioc_qbuf = mxr_qbuf,
        .vidioc_dqbuf = mxr_dqbuf,
+       .vidioc_expbuf = mxr_expbuf,
        /* Streaming control */
        .vidioc_streamon = mxr_streamon,
        .vidioc_streamoff = mxr_streamoff,