diff options
Diffstat (limited to 'drivers/media/video')
-rw-r--r-- | drivers/media/video/v4l2-device.c | 1 | ||||
-rw-r--r-- | drivers/media/video/v4l2-subdev.c | 14 |
2 files changed, 8 insertions, 7 deletions
diff --git a/drivers/media/video/v4l2-device.c b/drivers/media/video/v4l2-device.c index 4aae501f02d0..c72856c41434 100644 --- a/drivers/media/video/v4l2-device.c +++ b/drivers/media/video/v4l2-device.c | |||
@@ -209,6 +209,7 @@ int v4l2_device_register_subdev_nodes(struct v4l2_device *v4l2_dev) | |||
209 | vdev->v4l2_dev = v4l2_dev; | 209 | vdev->v4l2_dev = v4l2_dev; |
210 | vdev->fops = &v4l2_subdev_fops; | 210 | vdev->fops = &v4l2_subdev_fops; |
211 | vdev->release = video_device_release_empty; | 211 | vdev->release = video_device_release_empty; |
212 | vdev->ctrl_handler = sd->ctrl_handler; | ||
212 | err = __video_register_device(vdev, VFL_TYPE_SUBDEV, -1, 1, | 213 | err = __video_register_device(vdev, VFL_TYPE_SUBDEV, -1, 1, |
213 | sd->owner); | 214 | sd->owner); |
214 | if (err < 0) | 215 | if (err < 0) |
diff --git a/drivers/media/video/v4l2-subdev.c b/drivers/media/video/v4l2-subdev.c index 812729ebf09e..f396cc3f32af 100644 --- a/drivers/media/video/v4l2-subdev.c +++ b/drivers/media/video/v4l2-subdev.c | |||
@@ -155,25 +155,25 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg) | |||
155 | 155 | ||
156 | switch (cmd) { | 156 | switch (cmd) { |
157 | case VIDIOC_QUERYCTRL: | 157 | case VIDIOC_QUERYCTRL: |
158 | return v4l2_queryctrl(sd->ctrl_handler, arg); | 158 | return v4l2_queryctrl(vfh->ctrl_handler, arg); |
159 | 159 | ||
160 | case VIDIOC_QUERYMENU: | 160 | case VIDIOC_QUERYMENU: |
161 | return v4l2_querymenu(sd->ctrl_handler, arg); | 161 | return v4l2_querymenu(vfh->ctrl_handler, arg); |
162 | 162 | ||
163 | case VIDIOC_G_CTRL: | 163 | case VIDIOC_G_CTRL: |
164 | return v4l2_g_ctrl(sd->ctrl_handler, arg); | 164 | return v4l2_g_ctrl(vfh->ctrl_handler, arg); |
165 | 165 | ||
166 | case VIDIOC_S_CTRL: | 166 | case VIDIOC_S_CTRL: |
167 | return v4l2_s_ctrl(sd->ctrl_handler, arg); | 167 | return v4l2_s_ctrl(vfh->ctrl_handler, arg); |
168 | 168 | ||
169 | case VIDIOC_G_EXT_CTRLS: | 169 | case VIDIOC_G_EXT_CTRLS: |
170 | return v4l2_g_ext_ctrls(sd->ctrl_handler, arg); | 170 | return v4l2_g_ext_ctrls(vfh->ctrl_handler, arg); |
171 | 171 | ||
172 | case VIDIOC_S_EXT_CTRLS: | 172 | case VIDIOC_S_EXT_CTRLS: |
173 | return v4l2_s_ext_ctrls(sd->ctrl_handler, arg); | 173 | return v4l2_s_ext_ctrls(vfh->ctrl_handler, arg); |
174 | 174 | ||
175 | case VIDIOC_TRY_EXT_CTRLS: | 175 | case VIDIOC_TRY_EXT_CTRLS: |
176 | return v4l2_try_ext_ctrls(sd->ctrl_handler, arg); | 176 | return v4l2_try_ext_ctrls(vfh->ctrl_handler, arg); |
177 | 177 | ||
178 | case VIDIOC_DQEVENT: | 178 | case VIDIOC_DQEVENT: |
179 | if (!(sd->flags & V4L2_SUBDEV_FL_HAS_EVENTS)) | 179 | if (!(sd->flags & V4L2_SUBDEV_FL_HAS_EVENTS)) |