Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

authored by

Liam Girdwood and committed by
Mark Brown
932ae880 8a978234

+32 -14
+1 -14
include/sound/tlv.h
··· 31 31 * ~(sizeof(unsigned int) - 1)) .... 32 32 */ 33 33 34 - #define SNDRV_CTL_TLVT_CONTAINER 0 /* one level down - group of TLVs */ 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 */ 34 + #include <uapi/sound/tlv.h> 40 35 41 36 #define TLV_ITEM(type, ...) \ 42 37 (type), TLV_LENGTH(__VA_ARGS__), __VA_ARGS__ ··· 84 89 SNDRV_CTL_TLVT_DB_RANGE, 6 * (num) * sizeof(unsigned int) 85 90 86 91 #define TLV_DB_GAIN_MUTE -9999999 87 - 88 - /* 89 - * channel-mapping TLV items 90 - * TLV length must match with num_channels 91 - */ 92 - #define SNDRV_CTL_TLVT_CHMAP_FIXED 0x101 /* fixed channel position */ 93 - #define SNDRV_CTL_TLVT_CHMAP_VAR 0x102 /* channels freely swappable */ 94 - #define SNDRV_CTL_TLVT_CHMAP_PAIRED 0x103 /* pair-wise swappable */ 95 92 96 93 #endif /* __SOUND_TLV_H */
+31
include/uapi/sound/tlv.h
··· 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