V4L/DVB: cx18: switch to new vbi subdev ops
authorHans Verkuil <hverkuil@xs4all.nl>
Sun, 14 Mar 2010 15:24:15 +0000 (12:24 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 19 May 2010 15:58:50 +0000 (12:58 -0300)
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/cx18/cx18-ioctl.c
drivers/media/video/cx18/cx18-streams.c

index b81dd0e..2e6adda 100644 (file)
@@ -208,7 +208,7 @@ static int cx18_g_fmt_sliced_vbi_cap(struct file *file, void *fh,
         * digitizer/slicer.  Note, cx18_av_vbi() wipes the passed in
         * fmt->fmt.sliced under valid calling conditions
         */
-       if (v4l2_subdev_call(cx->sd_av, video, g_fmt, fmt))
+       if (v4l2_subdev_call(cx->sd_av, vbi, g_sliced_fmt, &fmt->fmt.sliced))
                return -EINVAL;
 
        /* Ensure V4L2 spec compliant output */
@@ -322,7 +322,7 @@ static int cx18_s_fmt_vbi_cap(struct file *file, void *fh,
         * Note cx18_av_vbi_wipes out alot of the passed in fmt under valid
         * calling conditions
         */
-       ret = v4l2_subdev_call(cx->sd_av, video, s_fmt, fmt);
+       ret = v4l2_subdev_call(cx->sd_av, vbi, s_raw_fmt, &fmt->fmt.vbi);
        if (ret)
                return ret;
 
@@ -359,7 +359,7 @@ static int cx18_s_fmt_sliced_vbi_cap(struct file *file, void *fh,
         * Note, cx18_av_vbi() wipes some "impossible" service lines in the
         * passed in fmt->fmt.sliced under valid calling conditions
         */
-       ret = v4l2_subdev_call(cx->sd_av, video, s_fmt, fmt);
+       ret = v4l2_subdev_call(cx->sd_av, vbi, s_sliced_fmt, &fmt->fmt.sliced);
        if (ret)
                return ret;
        /* Store our current v4l2 sliced VBI settings */
index 054450f..f5c9126 100644 (file)
@@ -374,7 +374,10 @@ static void cx18_vbi_setup(struct cx18_stream *s)
        }
 
        /* setup VBI registers */
-       v4l2_subdev_call(cx->sd_av, video, s_fmt, &cx->vbi.in);
+       if (raw)
+               v4l2_subdev_call(cx->sd_av, vbi, s_raw_fmt, &cx->vbi.in.fmt.vbi);
+       else
+               v4l2_subdev_call(cx->sd_av, vbi, s_sliced_fmt, &cx->vbi.in.fmt.sliced);
 
        /*
         * Send the CX18_CPU_SET_RAW_VBI_PARAM API command to setup Encoder Raw