summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/pvrusb2/pvrusb2-v4l2.c
diff options
context:
space:
mode:
Diffstat (limited to 'linux/drivers/media/video/pvrusb2/pvrusb2-v4l2.c')
-rw-r--r--linux/drivers/media/video/pvrusb2/pvrusb2-v4l2.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/linux/drivers/media/video/pvrusb2/pvrusb2-v4l2.c b/linux/drivers/media/video/pvrusb2/pvrusb2-v4l2.c
index 017d30ad0..dd207fae4 100644
--- a/linux/drivers/media/video/pvrusb2/pvrusb2-v4l2.c
+++ b/linux/drivers/media/video/pvrusb2/pvrusb2-v4l2.c
@@ -593,6 +593,9 @@ static int pvr2_v4l2_do_ioctl(struct inode *inode, struct file *file,
case PVR2_CVAL_AUDIOMODE_LANG2:
vt->audmode = V4L2_TUNER_MODE_LANG2;
break;
+ case PVR2_CVAL_AUDIOMODE_LANG1_LANG2:
+ vt->audmode = V4L2_TUNER_MODE_LANG1_LANG2;
+ break;
case PVR2_CVAL_AUDIOMODE_SAP:
vt->audmode = V4L2_TUNER_MODE_SAP;
break;
@@ -620,6 +623,9 @@ static int pvr2_v4l2_do_ioctl(struct inode *inode, struct file *file,
case V4L2_TUNER_MODE_LANG1:
val = PVR2_CVAL_AUDIOMODE_LANG1;
break;
+ case V4L2_TUNER_MODE_LANG1_LANG2:
+ val = PVR2_CVAL_AUDIOMODE_LANG1_LANG2;
+ break;
case V4L2_TUNER_MODE_SAP: // Also LANG2
val = PVR2_CVAL_AUDIOMODE_SAP;
break;
@@ -1018,7 +1024,6 @@ static void pvr2_v4l2_notify(struct pvr2_v4l2_fh *fhp)
wake_up(&fhp->wait_data);
}
-
static int pvr2_v4l2_iosetup(struct pvr2_v4l2_fh *fh)
{
int ret;
@@ -1034,7 +1039,7 @@ static int pvr2_v4l2_iosetup(struct pvr2_v4l2_fh *fh)
return ret;
}
- fh->rhp = pvr2_ioread_create();
+ fh->rhp = pvr2_channel_create_mpeg_stream(fh->dev_info->stream);
if (!fh->rhp) {
pvr2_channel_claim_stream(&fh->channel,0);
return -ENOMEM;
@@ -1042,7 +1047,6 @@ static int pvr2_v4l2_iosetup(struct pvr2_v4l2_fh *fh)
hdw = fh->channel.mc_head->hdw;
sp = fh->dev_info->stream->stream;
- pvr2_ioread_setup(fh->rhp,sp);
pvr2_stream_set_callback(sp,(pvr2_stream_callback)pvr2_v4l2_notify,fh);
pvr2_hdw_set_stream_type(hdw,fh->dev_info->config);
pvr2_hdw_set_streaming(hdw,!0);