Commit d69b2e41 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

V4L/DVB (7462): bttv: Fix some API non-compliances for some audio/input V4L2 calls

Thanks to Cyrill Gorcunov <gorcunov@gmail.com> for pointing this
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent 7bf9746d
...@@ -3117,12 +3117,18 @@ static int bttv_s_crop(struct file *file, void *f, struct v4l2_crop *crop) ...@@ -3117,12 +3117,18 @@ static int bttv_s_crop(struct file *file, void *f, struct v4l2_crop *crop)
static int bttv_g_audio(struct file *file, void *priv, struct v4l2_audio *a) static int bttv_g_audio(struct file *file, void *priv, struct v4l2_audio *a)
{ {
if (unlikely(a->index))
return -EINVAL;
strcpy(a->name, "audio"); strcpy(a->name, "audio");
return 0; return 0;
} }
static int bttv_s_audio(struct file *file, void *priv, struct v4l2_audio *a) static int bttv_s_audio(struct file *file, void *priv, struct v4l2_audio *a)
{ {
if (unlikely(a->index))
return -EINVAL;
return 0; return 0;
} }
...@@ -3510,7 +3516,7 @@ static int radio_enum_input(struct file *file, void *priv, ...@@ -3510,7 +3516,7 @@ static int radio_enum_input(struct file *file, void *priv,
return -EINVAL; return -EINVAL;
strcpy(i->name, "Radio"); strcpy(i->name, "Radio");
i->type = V4L2_INPUT_TYPE_TUNER; i->type = V4L2_INPUT_TYPE_TUNER;
return 0; return 0;
} }
...@@ -3518,10 +3524,9 @@ static int radio_enum_input(struct file *file, void *priv, ...@@ -3518,10 +3524,9 @@ static int radio_enum_input(struct file *file, void *priv,
static int radio_g_audio(struct file *file, void *priv, static int radio_g_audio(struct file *file, void *priv,
struct v4l2_audio *a) struct v4l2_audio *a)
{ {
if (a->index != 0) if (unlikely(a->index))
return -EINVAL; return -EINVAL;
memset(a, 0, sizeof(*a));
strcpy(a->name, "Radio"); strcpy(a->name, "Radio");
return 0; return 0;
...@@ -3543,11 +3548,17 @@ static int radio_s_tuner(struct file *file, void *priv, ...@@ -3543,11 +3548,17 @@ static int radio_s_tuner(struct file *file, void *priv,
static int radio_s_audio(struct file *file, void *priv, static int radio_s_audio(struct file *file, void *priv,
struct v4l2_audio *a) struct v4l2_audio *a)
{ {
if (unlikely(a->index))
return -EINVAL;
return 0; return 0;
} }
static int radio_s_input(struct file *filp, void *priv, unsigned int i) static int radio_s_input(struct file *filp, void *priv, unsigned int i)
{ {
if (unlikely(i))
return -EINVAL;
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment