summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@infradead.org>2007-01-25 16:00:45 -0200
committerMauro Carvalho Chehab <mchehab@infradead.org>2007-01-25 16:00:45 -0200
commitc369e78082f650bc897742b3b0d3ef65a52653bd (patch)
tree6a487bcfc4f95dfd9b4cd6f22efffeab49e44685
parent7ee29011905386554334af7a069f6cefcfebf216 (diff)
downloadmediapointer-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.c22
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,