diff options
| author | Hans Verkuil <hans.verkuil@cisco.com> | 2012-09-04 09:08:01 -0400 |
|---|---|---|
| committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-09-23 12:48:49 -0400 |
| commit | 89de0f2cda8b784e51ebd6655fff7339e4ac552b (patch) | |
| tree | c313d742e4ee3ec2bdecc09b3fc28e401da472e6 | |
| parent | 40c6f7ec76eddf34c43ad84616cdf6b1ddec480e (diff) | |
[media] v4l2-ioctl.c: fix overlay support
The vidioc_overlay op needs an unsigned int, not an unsigned int pointer.
So we need a small function that dereferences the unsigned int pointer.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
| -rw-r--r-- | drivers/media/video/v4l2-ioctl.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/media/video/v4l2-ioctl.c b/drivers/media/video/v4l2-ioctl.c index 6bc47fc82fe2..f5847af559b4 100644 --- a/drivers/media/video/v4l2-ioctl.c +++ b/drivers/media/video/v4l2-ioctl.c | |||
| @@ -1416,6 +1416,12 @@ static int v4l_s_hw_freq_seek(const struct v4l2_ioctl_ops *ops, | |||
| 1416 | return ops->vidioc_s_hw_freq_seek(file, fh, p); | 1416 | return ops->vidioc_s_hw_freq_seek(file, fh, p); |
| 1417 | } | 1417 | } |
| 1418 | 1418 | ||
| 1419 | static int v4l_overlay(const struct v4l2_ioctl_ops *ops, | ||
| 1420 | struct file *file, void *fh, void *arg) | ||
| 1421 | { | ||
| 1422 | return ops->vidioc_overlay(file, fh, *(unsigned int *)arg); | ||
| 1423 | } | ||
| 1424 | |||
| 1419 | static int v4l_reqbufs(const struct v4l2_ioctl_ops *ops, | 1425 | static int v4l_reqbufs(const struct v4l2_ioctl_ops *ops, |
| 1420 | struct file *file, void *fh, void *arg) | 1426 | struct file *file, void *fh, void *arg) |
| 1421 | { | 1427 | { |
| @@ -1944,7 +1950,7 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = { | |||
| 1944 | IOCTL_INFO_FNC(VIDIOC_QUERYBUF, v4l_querybuf, v4l_print_buffer, INFO_FL_QUEUE | INFO_FL_CLEAR(v4l2_buffer, length)), | 1950 | IOCTL_INFO_FNC(VIDIOC_QUERYBUF, v4l_querybuf, v4l_print_buffer, INFO_FL_QUEUE | INFO_FL_CLEAR(v4l2_buffer, length)), |
| 1945 | IOCTL_INFO_STD(VIDIOC_G_FBUF, vidioc_g_fbuf, v4l_print_framebuffer, 0), | 1951 | IOCTL_INFO_STD(VIDIOC_G_FBUF, vidioc_g_fbuf, v4l_print_framebuffer, 0), |
| 1946 | IOCTL_INFO_STD(VIDIOC_S_FBUF, vidioc_s_fbuf, v4l_print_framebuffer, INFO_FL_PRIO), | 1952 | IOCTL_INFO_STD(VIDIOC_S_FBUF, vidioc_s_fbuf, v4l_print_framebuffer, INFO_FL_PRIO), |
| 1947 | IOCTL_INFO_STD(VIDIOC_OVERLAY, vidioc_overlay, v4l_print_u32, INFO_FL_PRIO), | 1953 | IOCTL_INFO_FNC(VIDIOC_OVERLAY, v4l_overlay, v4l_print_u32, INFO_FL_PRIO), |
| 1948 | IOCTL_INFO_FNC(VIDIOC_QBUF, v4l_qbuf, v4l_print_buffer, INFO_FL_QUEUE), | 1954 | IOCTL_INFO_FNC(VIDIOC_QBUF, v4l_qbuf, v4l_print_buffer, INFO_FL_QUEUE), |
| 1949 | IOCTL_INFO_FNC(VIDIOC_DQBUF, v4l_dqbuf, v4l_print_buffer, INFO_FL_QUEUE), | 1955 | IOCTL_INFO_FNC(VIDIOC_DQBUF, v4l_dqbuf, v4l_print_buffer, INFO_FL_QUEUE), |
| 1950 | IOCTL_INFO_FNC(VIDIOC_STREAMON, v4l_streamon, v4l_print_buftype, INFO_FL_PRIO | INFO_FL_QUEUE), | 1956 | IOCTL_INFO_FNC(VIDIOC_STREAMON, v4l_streamon, v4l_print_buftype, INFO_FL_PRIO | INFO_FL_QUEUE), |
