diff options
author | Andy Walls <awalls@radix.net> | 2009-02-16 00:23:25 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-03-30 11:43:01 -0400 |
commit | fa3e70360c86480acbaa54c9791e843196327a66 (patch) | |
tree | bc8d1f8b68f9aad107d63d6b6c9e884519fe1d34 /drivers/media/video/cx18/cx18-ioctl.c | |
parent | 5811cf99df2e3c102055be3ea77508e56c9f77c6 (diff) |
V4L/DVB (10757): cx18, v4l2-chip-ident: Finish conversion of AV decoder core to v4l2_subdev
Added a new chip identifer to v4l2-chip-ident for the integrated A/V broadcast
decoder core internal to the CX23418. Completed separation and encapsulation
of the A/V decoder core interface as a v4l2_subdevice. The cx18 driver now
compiles and links again.
Signed-off-by: Andy Walls <awalls@radix.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx18/cx18-ioctl.c')
-rw-r--r-- | drivers/media/video/cx18/cx18-ioctl.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/media/video/cx18/cx18-ioctl.c b/drivers/media/video/cx18/cx18-ioctl.c index 3277b3d3ceae..0ddf4dd55308 100644 --- a/drivers/media/video/cx18/cx18-ioctl.c +++ b/drivers/media/video/cx18/cx18-ioctl.c | |||
@@ -208,7 +208,7 @@ static int cx18_g_fmt_sliced_vbi_cap(struct file *file, void *fh, | |||
208 | * digitizer/slicer. Note, cx18_av_vbi() wipes the passed in | 208 | * digitizer/slicer. Note, cx18_av_vbi() wipes the passed in |
209 | * fmt->fmt.sliced under valid calling conditions | 209 | * fmt->fmt.sliced under valid calling conditions |
210 | */ | 210 | */ |
211 | if (cx18_av_cmd(cx, VIDIOC_G_FMT, fmt)) | 211 | if (v4l2_subdev_call(cx->sd_av, video, g_fmt, fmt)) |
212 | return -EINVAL; | 212 | return -EINVAL; |
213 | 213 | ||
214 | /* Ensure V4L2 spec compliant output */ | 214 | /* Ensure V4L2 spec compliant output */ |
@@ -295,7 +295,7 @@ static int cx18_s_fmt_vid_cap(struct file *file, void *fh, | |||
295 | 295 | ||
296 | cx->params.width = w; | 296 | cx->params.width = w; |
297 | cx->params.height = h; | 297 | cx->params.height = h; |
298 | cx18_av_cmd(cx, VIDIOC_S_FMT, fmt); | 298 | v4l2_subdev_call(cx->sd_av, video, s_fmt, fmt); |
299 | return cx18_g_fmt_vid_cap(file, fh, fmt); | 299 | return cx18_g_fmt_vid_cap(file, fh, fmt); |
300 | } | 300 | } |
301 | 301 | ||
@@ -322,7 +322,7 @@ static int cx18_s_fmt_vbi_cap(struct file *file, void *fh, | |||
322 | * Note cx18_av_vbi_wipes out alot of the passed in fmt under valid | 322 | * Note cx18_av_vbi_wipes out alot of the passed in fmt under valid |
323 | * calling conditions | 323 | * calling conditions |
324 | */ | 324 | */ |
325 | ret = cx18_av_cmd(cx, VIDIOC_S_FMT, fmt); | 325 | ret = v4l2_subdev_call(cx->sd_av, video, s_fmt, fmt); |
326 | if (ret) | 326 | if (ret) |
327 | return ret; | 327 | return ret; |
328 | 328 | ||
@@ -359,7 +359,7 @@ static int cx18_s_fmt_sliced_vbi_cap(struct file *file, void *fh, | |||
359 | * Note, cx18_av_vbi() wipes some "impossible" service lines in the | 359 | * Note, cx18_av_vbi() wipes some "impossible" service lines in the |
360 | * passed in fmt->fmt.sliced under valid calling conditions | 360 | * passed in fmt->fmt.sliced under valid calling conditions |
361 | */ | 361 | */ |
362 | ret = cx18_av_cmd(cx, VIDIOC_S_FMT, fmt); | 362 | ret = v4l2_subdev_call(cx->sd_av, video, s_fmt, fmt); |
363 | if (ret) | 363 | if (ret) |
364 | return ret; | 364 | return ret; |
365 | /* Store our current v4l2 sliced VBI settings */ | 365 | /* Store our current v4l2 sliced VBI settings */ |
@@ -516,7 +516,8 @@ static int cx18_s_crop(struct file *file, void *fh, struct v4l2_crop *crop) | |||
516 | 516 | ||
517 | if (crop->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) | 517 | if (crop->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) |
518 | return -EINVAL; | 518 | return -EINVAL; |
519 | return cx18_av_cmd(cx, VIDIOC_S_CROP, crop); | 519 | CX18_DEBUG_WARN("VIDIOC_S_CROP not implemented\n"); |
520 | return -EINVAL; | ||
520 | } | 521 | } |
521 | 522 | ||
522 | static int cx18_g_crop(struct file *file, void *fh, struct v4l2_crop *crop) | 523 | static int cx18_g_crop(struct file *file, void *fh, struct v4l2_crop *crop) |
@@ -525,7 +526,8 @@ static int cx18_g_crop(struct file *file, void *fh, struct v4l2_crop *crop) | |||
525 | 526 | ||
526 | if (crop->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) | 527 | if (crop->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) |
527 | return -EINVAL; | 528 | return -EINVAL; |
528 | return cx18_av_cmd(cx, VIDIOC_G_CROP, crop); | 529 | CX18_DEBUG_WARN("VIDIOC_G_CROP not implemented\n"); |
530 | return -EINVAL; | ||
529 | } | 531 | } |
530 | 532 | ||
531 | static int cx18_enum_fmt_vid_cap(struct file *file, void *fh, | 533 | static int cx18_enum_fmt_vid_cap(struct file *file, void *fh, |