aboutsummaryrefslogtreecommitdiffstats
path: root/include/sound/asound.h
diff options
context:
space:
mode:
authorJaroslav Kysela <perex@suse.cz>2006-06-01 12:34:01 -0400
committerJaroslav Kysela <perex@suse.cz>2006-09-23 04:36:42 -0400
commit42750b04c5baa7c5ffdf0a8be2b9b320efdf069f (patch)
tree52aea8f1eeb44405b67bc5b381cce6bc20e2bff6 /include/sound/asound.h
parent3eeab61aa3ddd3c0bedb7449ada1599de22fdb5a (diff)
[ALSA] Control API - TLV implementation for additional information like dB scale
This patch implements a TLV mechanism to transfer an additional information like dB scale to the user space. The types might be extended in future. Acked-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'include/sound/asound.h')
-rw-r--r--include/sound/asound.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/sound/asound.h b/include/sound/asound.h
index 41885f48ad91..76a20406bd18 100644
--- a/include/sound/asound.h
+++ b/include/sound/asound.h
@@ -688,7 +688,7 @@ struct snd_timer_tread {
688 * * 688 * *
689 ****************************************************************************/ 689 ****************************************************************************/
690 690
691#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 3) 691#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 4)
692 692
693struct snd_ctl_card_info { 693struct snd_ctl_card_info {
694 int card; /* card number */ 694 int card; /* card number */
@@ -818,6 +818,12 @@ struct snd_ctl_elem_value {
818 unsigned char reserved[128-sizeof(struct timespec)]; 818 unsigned char reserved[128-sizeof(struct timespec)];
819}; 819};
820 820
821struct snd_ctl_tlv {
822 unsigned int numid; /* control element numeric identification */
823 unsigned int length; /* in bytes aligned to 4 */
824 unsigned int tlv[0]; /* first TLV */
825};
826
821enum { 827enum {
822 SNDRV_CTL_IOCTL_PVERSION = _IOR('U', 0x00, int), 828 SNDRV_CTL_IOCTL_PVERSION = _IOR('U', 0x00, int),
823 SNDRV_CTL_IOCTL_CARD_INFO = _IOR('U', 0x01, struct snd_ctl_card_info), 829 SNDRV_CTL_IOCTL_CARD_INFO = _IOR('U', 0x01, struct snd_ctl_card_info),
@@ -831,6 +837,7 @@ enum {
831 SNDRV_CTL_IOCTL_ELEM_ADD = _IOWR('U', 0x17, struct snd_ctl_elem_info), 837 SNDRV_CTL_IOCTL_ELEM_ADD = _IOWR('U', 0x17, struct snd_ctl_elem_info),
832 SNDRV_CTL_IOCTL_ELEM_REPLACE = _IOWR('U', 0x18, struct snd_ctl_elem_info), 838 SNDRV_CTL_IOCTL_ELEM_REPLACE = _IOWR('U', 0x18, struct snd_ctl_elem_info),
833 SNDRV_CTL_IOCTL_ELEM_REMOVE = _IOWR('U', 0x19, struct snd_ctl_elem_id), 839 SNDRV_CTL_IOCTL_ELEM_REMOVE = _IOWR('U', 0x19, struct snd_ctl_elem_id),
840 SNDRV_CTL_IOCTL_TLV_READ = _IOWR('U', 0x1a, struct snd_ctl_tlv),
834 SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE = _IOWR('U', 0x20, int), 841 SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE = _IOWR('U', 0x20, int),
835 SNDRV_CTL_IOCTL_HWDEP_INFO = _IOR('U', 0x21, struct snd_hwdep_info), 842 SNDRV_CTL_IOCTL_HWDEP_INFO = _IOR('U', 0x21, struct snd_hwdep_info),
836 SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE = _IOR('U', 0x30, int), 843 SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE = _IOR('U', 0x30, int),