summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2009-06-20 05:37:27 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-09-12 12:17:29 -0300
commitef5b5b7e73038f2c7d0d1b020c6eac6435c2b552 (patch)
tree73ca6cd5b2aa9916335a8e85d9f84197223c735d /include/linux
parent3bd10fc9f53fffe5913619733d7b1707a06899cf (diff)
downloadlwn-ef5b5b7e73038f2c7d0d1b020c6eac6435c2b552.tar.gz
lwn-ef5b5b7e73038f2c7d0d1b020c6eac6435c2b552.zip
V4L/DVB (12212): v4l2: add RDS API to videodev2.h
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/videodev2.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index eddd5ff99c80..22fc99d58d34 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -1186,6 +1186,7 @@ struct v4l2_modulator {
#define V4L2_TUNER_CAP_LANG2 0x0020
#define V4L2_TUNER_CAP_SAP 0x0020
#define V4L2_TUNER_CAP_LANG1 0x0040
+#define V4L2_TUNER_CAP_RDS 0x0080
/* Flags for the 'rxsubchans' field */
#define V4L2_TUNER_SUB_MONO 0x0001
@@ -1193,6 +1194,7 @@ struct v4l2_modulator {
#define V4L2_TUNER_SUB_LANG2 0x0004
#define V4L2_TUNER_SUB_SAP 0x0004
#define V4L2_TUNER_SUB_LANG1 0x0008
+#define V4L2_TUNER_SUB_RDS 0x0010
/* Values for the 'audmode' field */
#define V4L2_TUNER_MODE_MONO 0x0000
@@ -1218,6 +1220,27 @@ struct v4l2_hw_freq_seek {
};
/*
+ * R D S
+ */
+
+struct v4l2_rds_data {
+ __u8 lsb;
+ __u8 msb;
+ __u8 block;
+} __attribute__ ((packed));
+
+#define V4L2_RDS_BLOCK_MSK 0x7
+#define V4L2_RDS_BLOCK_A 0
+#define V4L2_RDS_BLOCK_B 1
+#define V4L2_RDS_BLOCK_C 2
+#define V4L2_RDS_BLOCK_D 3
+#define V4L2_RDS_BLOCK_C_ALT 4
+#define V4L2_RDS_BLOCK_INVALID 7
+
+#define V4L2_RDS_BLOCK_CORRECTED 0x40
+#define V4L2_RDS_BLOCK_ERROR 0x80
+
+/*
* A U D I O
*/
struct v4l2_audio {