1  /* SPDX-License-Identifier: GPL-2.0-or-later */
2  #ifndef __SOUND_TLV_H
3  #define __SOUND_TLV_H
4  
5  /*
6   *  Advanced Linux Sound Architecture - ALSA - Driver
7   *  Copyright (c) 2006 by Jaroslav Kysela <perex@perex.cz>
8   */
9  
10  #include <uapi/sound/tlv.h>
11  
12  /* For historical reasons, these macros are aliases to the ones in UAPI. */
13  #define TLV_ITEM			SNDRV_CTL_TLVD_ITEM
14  #define TLV_LENGTH			SNDRV_CTL_TLVD_LENGTH
15  
16  #define TLV_CONTAINER_ITEM		SNDRV_CTL_TLVD_CONTAINER_ITEM
17  #define DECLARE_TLV_CONTAINER		SNDRV_CTL_TLVD_DECLARE_CONTAINER
18  
19  #define TLV_DB_SCALE_MASK		SNDRV_CTL_TLVD_DB_SCALE_MASK
20  #define TLV_DB_SCALE_MUTE		SNDRV_CTL_TLVD_DB_SCALE_MUTE
21  #define TLV_DB_SCALE_ITEM		SNDRV_CTL_TLVD_DB_SCALE_ITEM
22  #define DECLARE_TLV_DB_SCALE		SNDRV_CTL_TLVD_DECLARE_DB_SCALE
23  
24  #define TLV_DB_MINMAX_ITEM		SNDRV_CTL_TLVD_DB_MINMAX_ITEM
25  #define TLV_DB_MINMAX_MUTE_ITEM		SNDRV_CTL_TLVD_DB_MINMAX_MUTE_ITEM
26  #define DECLARE_TLV_DB_MINMAX		SNDRV_CTL_TLVD_DECLARE_DB_MINMAX
27  #define DECLARE_TLV_DB_MINMAX_MUTE	SNDRV_CTL_TLVD_DECLARE_DB_MINMAX_MUTE
28  
29  #define TLV_DB_LINEAR_ITEM		SNDRV_CTL_TLVD_DB_LINEAR_ITEM
30  #define DECLARE_TLV_DB_LINEAR		SNDRV_CTL_TLVD_DECLARE_DB_LINEAR
31  
32  #define TLV_DB_RANGE_ITEM		SNDRV_CTL_TLVD_DB_RANGE_ITEM
33  #define DECLARE_TLV_DB_RANGE		SNDRV_CTL_TLVD_DECLARE_DB_RANGE
34  
35  #define TLV_DB_GAIN_MUTE		SNDRV_CTL_TLVD_DB_GAIN_MUTE
36  
37  /*
38   * The below assumes that each item TLV is 4 words like DB_SCALE or LINEAR.
39   * This is an old fasion and obsoleted by commit bf1d1c9b6179("ALSA: tlv: add
40   * DECLARE_TLV_DB_RANGE()").
41   */
42  #define TLV_DB_RANGE_HEAD(num) \
43  	SNDRV_CTL_TLVT_DB_RANGE, 6 * (num) * sizeof(unsigned int)
44  
45  #endif /* __SOUND_TLV_H */
46