summaryrefslogtreecommitdiff
path: root/include/media/tuner.h
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2006-01-09 20:25:39 +0300
committerMauro Carvalho Chehab <mchehab@brturbo.com.br>2006-01-09 20:25:39 +0300
commita544521ef06ee7b8a3d82fa29627401196fda77a (patch)
tree602154d687748d1f3e9255d50cdf36b679add581 /include/media/tuner.h
parent66e33dee9e3062b1045afe23c4b8714c1004668c (diff)
downloadlinux-a544521ef06ee7b8a3d82fa29627401196fda77a.tar.xz
V4L/DVB (3245): Added some comments about multiple tuner support.
- Added some comments to make clearer how to use ioctl api to handle multiple tuners at the same board. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Diffstat (limited to 'include/media/tuner.h')
-rw-r--r--include/media/tuner.h22
1 files changed, 19 insertions, 3 deletions
diff --git a/include/media/tuner.h b/include/media/tuner.h
index aa91ce35915b..c5f034ecb002 100644
--- a/include/media/tuner.h
+++ b/include/media/tuner.h
@@ -150,10 +150,26 @@ enum tuner_mode {
T_STANDBY = 1 << 31
};
+/* Older boards only had a single tuner device. Nowadays multiple tuner
+ devices may be present on a single board. Using TUNER_SET_TYPE_ADDR
+ to pass the tuner_setup structure it is possible to setup each tuner
+ device in turn.
+
+ Since multiple devices may be present it is no longer sufficient to
+ send a command to a single i2c device. Instead you should broadcast
+ the command to all i2c devices.
+
+ By setting the mode_mask correctly you can select which commands are
+ accepted by a specific tuner device. For example, set mode_mask to
+ T_RADIO if the device is a radio-only tuner. That specific tuner will
+ only accept commands when the tuner is in radio mode and ignore them
+ when the tuner is set to TV mode.
+ */
+
struct tuner_setup {
- unsigned short addr;
- unsigned int type;
- unsigned int mode_mask;
+ unsigned short addr; /* I2C address */
+ unsigned int type; /* Tuner type */
+ unsigned int mode_mask; /* Allowed tuner modes */
};
struct tuner {