[media] saa7134: v4l2-compliance: fix g_tuner/s_tuner
Make saa7134 driver more V4L2 compliant: return real frequency range in g_tuner and fail in s_tuner for non-zero tuner Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
0a5ea88b31
commit
ce5bdd5262
@ -2014,11 +2014,11 @@ static int saa7134_g_tuner(struct file *file, void *priv,
|
||||
if (NULL != card_in(dev, n).name) {
|
||||
strcpy(t->name, "Television");
|
||||
t->type = V4L2_TUNER_ANALOG_TV;
|
||||
saa_call_all(dev, tuner, g_tuner, t);
|
||||
t->capability = V4L2_TUNER_CAP_NORM |
|
||||
V4L2_TUNER_CAP_STEREO |
|
||||
V4L2_TUNER_CAP_LANG1 |
|
||||
V4L2_TUNER_CAP_LANG2;
|
||||
t->rangehigh = 0xffffffffUL;
|
||||
t->rxsubchans = saa7134_tvaudio_getstereo(dev);
|
||||
t->audmode = saa7134_tvaudio_rx2mode(t->rxsubchans);
|
||||
}
|
||||
@ -2034,6 +2034,9 @@ static int saa7134_s_tuner(struct file *file, void *priv,
|
||||
struct saa7134_dev *dev = fh->dev;
|
||||
int rx, mode;
|
||||
|
||||
if (0 != t->index)
|
||||
return -EINVAL;
|
||||
|
||||
mode = dev->thread.mode;
|
||||
if (UNSET == mode) {
|
||||
rx = saa7134_tvaudio_getstereo(dev);
|
||||
|
Loading…
x
Reference in New Issue
Block a user