diff options
| author | Liam Girdwood <liam.r.girdwood@linux.intel.com> | 2015-05-29 14:06:15 -0400 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2015-06-04 04:40:03 -0400 |
| commit | 932ae8809469770a07ce19d6967d2ce303befa08 (patch) | |
| tree | 78e7eea9be478698732589de449489f82c18f48f | |
| parent | 8a9782346dccd82cf912552735bda619de4efd8c (diff) | |
ALSA: topology: Export ID types for TLV controls.
Make sure userspace can define TLV controls for topology using the correct
type numbers and channel mappings.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Acked-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
| -rw-r--r-- | include/sound/tlv.h | 15 | ||||
| -rw-r--r-- | include/uapi/sound/tlv.h | 31 |
2 files changed, 32 insertions, 14 deletions
diff --git a/include/sound/tlv.h b/include/sound/tlv.h index e11e179420a1..df97d1966468 100644 --- a/include/sound/tlv.h +++ b/include/sound/tlv.h | |||
| @@ -31,12 +31,7 @@ | |||
| 31 | * ~(sizeof(unsigned int) - 1)) .... | 31 | * ~(sizeof(unsigned int) - 1)) .... |
| 32 | */ | 32 | */ |
| 33 | 33 | ||
| 34 | #define SNDRV_CTL_TLVT_CONTAINER 0 /* one level down - group of TLVs */ | 34 | #include <uapi/sound/tlv.h> |
| 35 | #define SNDRV_CTL_TLVT_DB_SCALE 1 /* dB scale */ | ||
| 36 | #define SNDRV_CTL_TLVT_DB_LINEAR 2 /* linear volume */ | ||
| 37 | #define SNDRV_CTL_TLVT_DB_RANGE 3 /* dB range container */ | ||
| 38 | #define SNDRV_CTL_TLVT_DB_MINMAX 4 /* dB scale with min/max */ | ||
| 39 | #define SNDRV_CTL_TLVT_DB_MINMAX_MUTE 5 /* dB scale with min/max with mute */ | ||
| 40 | 35 | ||
| 41 | #define TLV_ITEM(type, ...) \ | 36 | #define TLV_ITEM(type, ...) \ |
| 42 | (type), TLV_LENGTH(__VA_ARGS__), __VA_ARGS__ | 37 | (type), TLV_LENGTH(__VA_ARGS__), __VA_ARGS__ |
| @@ -90,12 +85,4 @@ | |||
| 90 | 85 | ||
| 91 | #define TLV_DB_GAIN_MUTE -9999999 | 86 | #define TLV_DB_GAIN_MUTE -9999999 |
| 92 | 87 | ||
| 93 | /* | ||
| 94 | * channel-mapping TLV items | ||
| 95 | * TLV length must match with num_channels | ||
| 96 | */ | ||
| 97 | #define SNDRV_CTL_TLVT_CHMAP_FIXED 0x101 /* fixed channel position */ | ||
| 98 | #define SNDRV_CTL_TLVT_CHMAP_VAR 0x102 /* channels freely swappable */ | ||
| 99 | #define SNDRV_CTL_TLVT_CHMAP_PAIRED 0x103 /* pair-wise swappable */ | ||
| 100 | |||
| 101 | #endif /* __SOUND_TLV_H */ | 88 | #endif /* __SOUND_TLV_H */ |
diff --git a/include/uapi/sound/tlv.h b/include/uapi/sound/tlv.h new file mode 100644 index 000000000000..ffc4f203146c --- /dev/null +++ b/include/uapi/sound/tlv.h | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | /* | ||
| 2 | * This program is free software; you can redistribute it and/or modify | ||
| 3 | * it under the terms of the GNU General Public License as published by | ||
| 4 | * the Free Software Foundation; either version 2 of the License, or | ||
| 5 | * (at your option) any later version. | ||
| 6 | * | ||
| 7 | * This program is distributed in the hope that it will be useful, | ||
| 8 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 9 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 10 | * GNU General Public License for more details. | ||
| 11 | */ | ||
| 12 | |||
| 13 | #ifndef __UAPI_SOUND_TLV_H | ||
| 14 | #define __UAPI_SOUND_TLV_H | ||
| 15 | |||
| 16 | #define SNDRV_CTL_TLVT_CONTAINER 0 /* one level down - group of TLVs */ | ||
| 17 | #define SNDRV_CTL_TLVT_DB_SCALE 1 /* dB scale */ | ||
| 18 | #define SNDRV_CTL_TLVT_DB_LINEAR 2 /* linear volume */ | ||
| 19 | #define SNDRV_CTL_TLVT_DB_RANGE 3 /* dB range container */ | ||
| 20 | #define SNDRV_CTL_TLVT_DB_MINMAX 4 /* dB scale with min/max */ | ||
| 21 | #define SNDRV_CTL_TLVT_DB_MINMAX_MUTE 5 /* dB scale with min/max with mute */ | ||
| 22 | |||
| 23 | /* | ||
| 24 | * channel-mapping TLV items | ||
| 25 | * TLV length must match with num_channels | ||
| 26 | */ | ||
| 27 | #define SNDRV_CTL_TLVT_CHMAP_FIXED 0x101 /* fixed channel position */ | ||
| 28 | #define SNDRV_CTL_TLVT_CHMAP_VAR 0x102 /* channels freely swappable */ | ||
| 29 | #define SNDRV_CTL_TLVT_CHMAP_PAIRED 0x103 /* pair-wise swappable */ | ||
| 30 | |||
| 31 | #endif | ||
