[PATCH] V4L: 916: fixes set scart parameter definitions and audout ioctl
authorMauro Carvalho Chehab <mchehab@brturbo.com.br>
Wed, 9 Nov 2005 05:38:50 +0000 (21:38 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 9 Nov 2005 15:56:31 +0000 (07:56 -0800)
Fixes set_scart parameter definitions and AUDOUT ioctl

Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/media/video/msp3400.c

index b599f0554fb7aef8afdd8b17fb82d712833fac83..035dee4ce3f542b72b826721d41c6b775315a9c8 100644 (file)
@@ -413,7 +413,7 @@ static void msp3400c_set_scart(struct i2c_client *client, int in, int out)
 
        msp->in_scart=in;
 
-       if (in<=2) {
+       if (in >= 1 && in <= 8 && out >= 0 && out <= 2) {
                if (-1 == scarts[out][in])
                        return;
 
@@ -2120,10 +2120,11 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg)
        case VIDIOC_G_AUDOUT:
        {
                struct v4l2_audioout *a=(struct v4l2_audioout *)arg;
+               int idx=a->index;
 
                memset(a,0,sizeof(*a));
 
-               switch (a->index) {
+               switch (idx) {
                case 0:
                        strcpy(a->name,"Scart1 Out");
                        break;
@@ -2152,8 +2153,8 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg)
                        else
                                msp->i2s_mode=0;
                }
-printk("Setting audio out on msp34xx to input %i, mode %i\n",a->index,msp->i2s_mode);
-               msp3400c_set_scart(client,msp->in_scart,a->index);
+               dprintk("Setting audio out on msp34xx to input %i, mode %i\n",a->index,msp->i2s_mode);
+               msp3400c_set_scart(client,msp->in_scart,a->index+1);
 
                break;
        }