diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-01-25 16:00:45 -0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-01-25 16:00:45 -0200 |
commit | c369e78082f650bc897742b3b0d3ef65a52653bd (patch) | |
tree | 6a487bcfc4f95dfd9b4cd6f22efffeab49e44685 | |
parent | 7ee29011905386554334af7a069f6cefcfebf216 (diff) | |
download | mediapointer-dvb-s2-c369e78082f650bc897742b3b0d3ef65a52653bd.tar.gz mediapointer-dvb-s2-c369e78082f650bc897742b3b0d3ef65a52653bd.tar.bz2 |
Implement VIDIOC_[GS]_AUDIO on maxiradio
From: Mauro Carvalho Chehab <mchehab@infradead.org>
v4l1-compat requires those two ioctls to translate VIDIOC[SG]RADIO
into V4L2 calls.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r-- | linux/drivers/media/radio/radio-maxiradio.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/linux/drivers/media/radio/radio-maxiradio.c b/linux/drivers/media/radio/radio-maxiradio.c index 686ea2e82..14b74365d 100644 --- a/linux/drivers/media/radio/radio-maxiradio.c +++ b/linux/drivers/media/radio/radio-maxiradio.c @@ -228,6 +228,26 @@ static int vidioc_s_tuner (struct file *file, void *priv, return 0; } +static int vidioc_g_audio (struct file *file, void *priv, + struct v4l2_audio *a) +{ + if (a->index > 1) + return -EINVAL; + + strcpy(a->name, "Radio"); + a->capability = V4L2_AUDCAP_STEREO; + return 0; +} + +static int vidioc_s_audio (struct file *file, void *priv, + struct v4l2_audio *a) +{ + if (a->index != 0) + return -EINVAL; + + return 0; +} + static int vidioc_s_frequency (struct file *file, void *priv, struct v4l2_frequency *f) { @@ -312,6 +332,8 @@ static struct video_device maxiradio_radio = .vidioc_querycap = vidioc_querycap, .vidioc_g_tuner = vidioc_g_tuner, .vidioc_s_tuner = vidioc_s_tuner, + .vidioc_g_audio = vidioc_g_audio, + .vidioc_s_audio = vidioc_s_audio, .vidioc_g_frequency = vidioc_g_frequency, .vidioc_s_frequency = vidioc_s_frequency, .vidioc_queryctrl = vidioc_queryctrl, |