History

[media] v4l2-ctrls: add new RDS TX controls

The si4713 supports several RDS features not yet implemented in the driver. This patch adds the missing RDS functionality to the list of RDS controls. The ALT_FREQS control is a compound control containing an array of up to 25 (the maximum according to the RDS standard) frequencies. To support that the V4L2_CTRL_TYPE_U32 was added.

Hans Verkuil committed 12 years ago

Commit 811c5081 parent 1612f204 files · +48 −0Browse files

Showing the changes to include/uapi/linux (2 of 4 files). Show all

Unified · Split

2 files
  1. include/uapi/linux/v4l2-controls.h +9 −0
  2. include/uapi/linux/videodev2.h +2 −0
include/uapi/linux/v4l2-controls.h+9−0
@@ -757,6 +757,15 @@ enum v4l2_auto_focus_range { · 756 unmodified lines
757#define V4L2_CID_RDS_TX_PTY (V4L2_CID_FM_TX_CLASS_BASE + 3)757#define V4L2_CID_RDS_TX_PTY (V4L2_CID_FM_TX_CLASS_BASE + 3)
758#define V4L2_CID_RDS_TX_PS_NAME (V4L2_CID_FM_TX_CLASS_BASE + 5)758#define V4L2_CID_RDS_TX_PS_NAME (V4L2_CID_FM_TX_CLASS_BASE + 5)
759#define V4L2_CID_RDS_TX_RADIO_TEXT (V4L2_CID_FM_TX_CLASS_BASE + 6)759#define V4L2_CID_RDS_TX_RADIO_TEXT (V4L2_CID_FM_TX_CLASS_BASE + 6)
760#define V4L2_CID_RDS_TX_MONO_STEREO (V4L2_CID_FM_TX_CLASS_BASE + 7)
761#define V4L2_CID_RDS_TX_ARTIFICIAL_HEAD (V4L2_CID_FM_TX_CLASS_BASE + 8)
762#define V4L2_CID_RDS_TX_COMPRESSED (V4L2_CID_FM_TX_CLASS_BASE + 9)
763#define V4L2_CID_RDS_TX_DYNAMIC_PTY (V4L2_CID_FM_TX_CLASS_BASE + 10)
764#define V4L2_CID_RDS_TX_TRAFFIC_ANNOUNCEMENT (V4L2_CID_FM_TX_CLASS_BASE + 11)
765#define V4L2_CID_RDS_TX_TRAFFIC_PROGRAM (V4L2_CID_FM_TX_CLASS_BASE + 12)
766#define V4L2_CID_RDS_TX_MUSIC_SPEECH (V4L2_CID_FM_TX_CLASS_BASE + 13)
767#define V4L2_CID_RDS_TX_ALT_FREQS_ENABLE (V4L2_CID_FM_TX_CLASS_BASE + 14)
768#define V4L2_CID_RDS_TX_ALT_FREQS (V4L2_CID_FM_TX_CLASS_BASE + 15)
760 769
761#define V4L2_CID_AUDIO_LIMITER_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 64)770#define V4L2_CID_AUDIO_LIMITER_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 64)
762#define V4L2_CID_AUDIO_LIMITER_RELEASE_TIME (V4L2_CID_FM_TX_CLASS_BASE + 65)771#define V4L2_CID_AUDIO_LIMITER_RELEASE_TIME (V4L2_CID_FM_TX_CLASS_BASE + 65)
include/uapi/linux/videodev2.h+2−0
@@ -1288,6 +1288,7 @@ struct v4l2_ext_control { · 1287 unmodified lines
1288 char *string;1288 char *string;
1289 __u8 *p_u8;1289 __u8 *p_u8;
1290 __u16 *p_u16;1290 __u16 *p_u16;
1291 __u32 *p_u32;
1291 void *ptr;1292 void *ptr;
1292 };1293 };
1293} __attribute__ ((packed));1294} __attribute__ ((packed));
@@ -1320,6 +1321,7 @@ enum v4l2_ctrl_type { · 26 unmodified lines
1320 V4L2_CTRL_COMPOUND_TYPES = 0x0100,1321 V4L2_CTRL_COMPOUND_TYPES = 0x0100,
1321 V4L2_CTRL_TYPE_U8 = 0x0100,1322 V4L2_CTRL_TYPE_U8 = 0x0100,
1322 V4L2_CTRL_TYPE_U16 = 0x0101,1323 V4L2_CTRL_TYPE_U16 = 0x0101,
1324 V4L2_CTRL_TYPE_U32 = 0x0102,
1323};1325};
1324 1326
1325/* Used in the VIDIOC_QUERYCTRL ioctl for querying controls */1327/* Used in the VIDIOC_QUERYCTRL ioctl for querying controls */