summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/tuner-core.c
diff options
context:
space:
mode:
Diffstat (limited to 'linux/drivers/media/video/tuner-core.c')
-rw-r--r--linux/drivers/media/video/tuner-core.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/linux/drivers/media/video/tuner-core.c b/linux/drivers/media/video/tuner-core.c
index 15a8b8109..e92053f27 100644
--- a/linux/drivers/media/video/tuner-core.c
+++ b/linux/drivers/media/video/tuner-core.c
@@ -1,5 +1,5 @@
/*
- * $Id: tuner-core.c,v 1.21 2005/06/18 06:00:36 nsh Exp $
+ * $Id: tuner-core.c,v 1.22 2005/06/19 14:41:59 mchehab Exp $
*
* i2c tv tuner chip device driver
* core core, i.e. kernel interfaces, registering and so on
@@ -508,6 +508,26 @@ tuner_command(struct i2c_client *client, unsigned int cmd, void *arg)
}
break;
}
+ case VIDIOC_S_TUNER: /* Allow changing radio range and audio mode */
+ {
+ struct v4l2_tuner *tuner = arg;
+
+ /* To switch the audio mode, applications initialize the
+ index and audmode fields and the reserved array and
+ call the VIDIOC_S_TUNER ioctl. */
+ /* rxsubchannels: V4L2_TUNER_MODE_MONO, V4L2_TUNER_MODE_STEREO,
+ V4L2_TUNER_MODE_LANG1, V4L2_TUNER_MODE_LANG2,
+ V4L2_TUNER_MODE_SAP */
+
+ if (t->set_tuner) {
+ t->set_tuner(client,tuner);
+ } else {
+ tuner_dbg ("Unimplemented IOCTL VIDIO_S_TUNER called to tuner-core.\n");
+ }
+ break;
+ }
+ case TDA9887_SET_CONFIG: /* Nothing to do on tuner-core */
+ break;
default:
tuner_dbg ("Unimplemented IOCTL 0x%08x called to tuner.\n", cmd);
/* nothing */