summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2014-10-31 10:01:49 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-11-25 08:33:43 -0200
commit59b702ea9f4467bf6b6281d5d21cebfc1fa11e8d (patch)
treea838e18a832ed594f6b84062189c1dacf46f8e2e
parent2228d80dd05a4fc5a410fde847677b8fb3eb23d7 (diff)
[media] v4l2: get/set prio using video_dev prio structure
The v4l2_device structure embed a v4l2_prio_state structure used by default for priority handling, but drivers can override that default by setting the video_dev prio pointer to a different v4l2_prio_state instance. However, the VIDIO_G_PRIORITY and VIDIOC_S_PRIORITY implementations use the prio state embedded in v4l2_device unconditionally, breaking drivers that need to override the default. Fix them. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
-rw-r--r--drivers/media/v4l2-core/v4l2-ioctl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
index 9ccb19a435e..1bf84a58424 100644
--- a/drivers/media/v4l2-core/v4l2-ioctl.c
+++ b/drivers/media/v4l2-core/v4l2-ioctl.c
@@ -1040,7 +1040,7 @@ static int v4l_g_priority(const struct v4l2_ioctl_ops *ops,
if (ops->vidioc_g_priority)
return ops->vidioc_g_priority(file, fh, arg);
vfd = video_devdata(file);
- *p = v4l2_prio_max(&vfd->v4l2_dev->prio);
+ *p = v4l2_prio_max(vfd->prio);
return 0;
}
@@ -1055,7 +1055,7 @@ static int v4l_s_priority(const struct v4l2_ioctl_ops *ops,
return ops->vidioc_s_priority(file, fh, *p);
vfd = video_devdata(file);
vfh = file->private_data;
- return v4l2_prio_change(&vfd->v4l2_dev->prio, &vfh->prio, *p);
+ return v4l2_prio_change(vfd->prio, &vfh->prio, *p);
}
static int v4l_enuminput(const struct v4l2_ioctl_ops *ops,