diff options
Diffstat (limited to 'drivers/media/video/cx18/cx18-streams.c')
-rw-r--r-- | drivers/media/video/cx18/cx18-streams.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/media/video/cx18/cx18-streams.c b/drivers/media/video/cx18/cx18-streams.c index 1b921a336092..1728b1d832a9 100644 --- a/drivers/media/video/cx18/cx18-streams.c +++ b/drivers/media/video/cx18/cx18-streams.c | |||
@@ -39,6 +39,7 @@ static struct file_operations cx18_v4l2_enc_fops = { | |||
39 | .owner = THIS_MODULE, | 39 | .owner = THIS_MODULE, |
40 | .read = cx18_v4l2_read, | 40 | .read = cx18_v4l2_read, |
41 | .open = cx18_v4l2_open, | 41 | .open = cx18_v4l2_open, |
42 | /* FIXME change to video_ioctl2 if serialization lock can be removed */ | ||
42 | .ioctl = cx18_v4l2_ioctl, | 43 | .ioctl = cx18_v4l2_ioctl, |
43 | .compat_ioctl = v4l_compat_ioctl32, | 44 | .compat_ioctl = v4l_compat_ioctl32, |
44 | .release = cx18_v4l2_close, | 45 | .release = cx18_v4l2_close, |
@@ -189,14 +190,15 @@ static int cx18_prep_dev(struct cx18 *cx, int type) | |||
189 | s->v4l2dev->type = | 190 | s->v4l2dev->type = |
190 | VID_TYPE_CAPTURE | VID_TYPE_TUNER | VID_TYPE_TELETEXT | | 191 | VID_TYPE_CAPTURE | VID_TYPE_TUNER | VID_TYPE_TELETEXT | |
191 | VID_TYPE_CLIPPING | VID_TYPE_SCALES | VID_TYPE_MPEG_ENCODER; | 192 | VID_TYPE_CLIPPING | VID_TYPE_SCALES | VID_TYPE_MPEG_ENCODER; |
192 | snprintf(s->v4l2dev->name, sizeof(s->v4l2dev->name), "cx18%d %s", | 193 | snprintf(s->v4l2dev->name, sizeof(s->v4l2dev->name), "cx18-%d", |
193 | cx->num, s->name); | 194 | cx->num); |
194 | 195 | ||
195 | s->v4l2dev->minor = minor; | 196 | s->v4l2dev->minor = minor; |
196 | s->v4l2dev->dev = &cx->dev->dev; | 197 | s->v4l2dev->dev = &cx->dev->dev; |
197 | s->v4l2dev->fops = cx18_stream_info[type].fops; | 198 | s->v4l2dev->fops = cx18_stream_info[type].fops; |
198 | s->v4l2dev->release = video_device_release; | 199 | s->v4l2dev->release = video_device_release; |
199 | 200 | s->v4l2dev->tvnorms = V4L2_STD_ALL; | |
201 | cx18_set_funcs(s->v4l2dev); | ||
200 | return 0; | 202 | return 0; |
201 | } | 203 | } |
202 | 204 | ||
@@ -309,8 +311,10 @@ void cx18_streams_cleanup(struct cx18 *cx, int unregister) | |||
309 | 311 | ||
310 | /* Teardown all streams */ | 312 | /* Teardown all streams */ |
311 | for (type = 0; type < CX18_MAX_STREAMS; type++) { | 313 | for (type = 0; type < CX18_MAX_STREAMS; type++) { |
312 | if (cx->streams[type].dvb.enabled) | 314 | if (cx->streams[type].dvb.enabled) { |
313 | cx18_dvb_unregister(&cx->streams[type]); | 315 | cx18_dvb_unregister(&cx->streams[type]); |
316 | cx->streams[type].dvb.enabled = false; | ||
317 | } | ||
314 | 318 | ||
315 | vdev = cx->streams[type].v4l2dev; | 319 | vdev = cx->streams[type].v4l2dev; |
316 | 320 | ||