xref: /openbmc/linux/include/uapi/sound/intel/avs/tokens.h (revision 0022cec7)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3  * Copyright(c) 2021 Intel Corporation. All rights reserved.
4  *
5  * Authors: Cezary Rojewski <cezary.rojewski@intel.com>
6  *          Amadeusz Slawinski <amadeuszx.slawinski@linux.intel.com>
7  */
8 
9 #ifndef __UAPI_SOUND_INTEL_AVS_TOKENS_H
10 #define __UAPI_SOUND_INTEL_AVS_TOKENS_H
11 
12 enum avs_tplg_token {
13 	/* struct avs_tplg */
14 	AVS_TKN_MANIFEST_NAME_STRING			= 1,
15 	AVS_TKN_MANIFEST_VERSION_U32			= 2,
16 	AVS_TKN_MANIFEST_NUM_LIBRARIES_U32		= 3,
17 	AVS_TKN_MANIFEST_NUM_AFMTS_U32			= 4,
18 	AVS_TKN_MANIFEST_NUM_MODCFGS_BASE_U32		= 5,
19 	AVS_TKN_MANIFEST_NUM_MODCFGS_EXT_U32		= 6,
20 	AVS_TKN_MANIFEST_NUM_PPLCFGS_U32		= 7,
21 	AVS_TKN_MANIFEST_NUM_BINDINGS_U32		= 8,
22 
23 	/* struct avs_tplg_library */
24 	AVS_TKN_LIBRARY_ID_U32				= 101,
25 	AVS_TKN_LIBRARY_NAME_STRING			= 102,
26 
27 	/* struct avs_audio_format */
28 	AVS_TKN_AFMT_ID_U32				= 201,
29 	AVS_TKN_AFMT_SAMPLE_RATE_U32			= 202,
30 	AVS_TKN_AFMT_BIT_DEPTH_U32			= 203,
31 	AVS_TKN_AFMT_CHANNEL_MAP_U32			= 204,
32 	AVS_TKN_AFMT_CHANNEL_CFG_U32			= 205,
33 	AVS_TKN_AFMT_INTERLEAVING_U32			= 206,
34 	AVS_TKN_AFMT_NUM_CHANNELS_U32			= 207,
35 	AVS_TKN_AFMT_VALID_BIT_DEPTH_U32		= 208,
36 	AVS_TKN_AFMT_SAMPLE_TYPE_U32			= 209,
37 
38 	/* struct avs_tplg_modcfg_base */
39 	AVS_TKN_MODCFG_BASE_ID_U32			= 301,
40 	AVS_TKN_MODCFG_BASE_CPC_U32			= 302,
41 	AVS_TKN_MODCFG_BASE_IBS_U32			= 303,
42 	AVS_TKN_MODCFG_BASE_OBS_U32			= 304,
43 	AVS_TKN_MODCFG_BASE_PAGES_U32			= 305,
44 
45 	/* struct avs_tplg_modcfg_ext */
46 	AVS_TKN_MODCFG_EXT_ID_U32			= 401,
47 	AVS_TKN_MODCFG_EXT_TYPE_UUID			= 402,
48 	AVS_TKN_MODCFG_CPR_OUT_AFMT_ID_U32		= 403,
49 	AVS_TKN_MODCFG_CPR_FEATURE_MASK_U32		= 404,
50 	AVS_TKN_MODCFG_CPR_DMA_TYPE_U32			= 405,
51 	AVS_TKN_MODCFG_CPR_DMABUFF_SIZE_U32		= 406,
52 	AVS_TKN_MODCFG_CPR_VINDEX_U8			= 407,
53 	AVS_TKN_MODCFG_CPR_BLOB_FMT_ID_U32		= 408,
54 	AVS_TKN_MODCFG_MICSEL_OUT_AFMT_ID_U32		= 409,
55 	AVS_TKN_MODCFG_INTELWOV_CPC_LP_MODE_U32		= 410,
56 	AVS_TKN_MODCFG_SRC_OUT_FREQ_U32			= 411,
57 	AVS_TKN_MODCFG_MUX_REF_AFMT_ID_U32		= 412,
58 	AVS_TKN_MODCFG_MUX_OUT_AFMT_ID_U32		= 413,
59 	AVS_TKN_MODCFG_AEC_REF_AFMT_ID_U32		= 414,
60 	AVS_TKN_MODCFG_AEC_OUT_AFMT_ID_U32		= 415,
61 	AVS_TKN_MODCFG_AEC_CPC_LP_MODE_U32		= 416,
62 	AVS_TKN_MODCFG_ASRC_OUT_FREQ_U32		= 417,
63 	AVS_TKN_MODCFG_ASRC_MODE_U8			= 418,
64 	AVS_TKN_MODCFG_ASRC_DISABLE_JITTER_U8		= 419,
65 	AVS_TKN_MODCFG_UPDOWN_MIX_OUT_CHAN_CFG_U32	= 420,
66 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_SELECT_U32	= 421,
67 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_0_S32		= 422,
68 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_1_S32		= 423,
69 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_2_S32		= 424,
70 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_3_S32		= 425,
71 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_4_S32		= 426,
72 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_5_S32		= 427,
73 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_6_S32		= 428,
74 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_7_S32		= 429,
75 	AVS_TKN_MODCFG_UPDOWN_MIX_CHAN_MAP_U32		= 430,
76 	AVS_TKN_MODCFG_EXT_NUM_INPUT_PINS_U16		= 431,
77 	AVS_TKN_MODCFG_EXT_NUM_OUTPUT_PINS_U16		= 432,
78 
79 	/* struct avs_tplg_pplcfg */
80 	AVS_TKN_PPLCFG_ID_U32				= 1401,
81 	AVS_TKN_PPLCFG_REQ_SIZE_U16			= 1402,
82 	AVS_TKN_PPLCFG_PRIORITY_U8			= 1403,
83 	AVS_TKN_PPLCFG_LOW_POWER_BOOL			= 1404,
84 	AVS_TKN_PPLCFG_ATTRIBUTES_U16			= 1405,
85 	AVS_TKN_PPLCFG_TRIGGER_U32			= 1406,
86 
87 	/* struct avs_tplg_binding */
88 	AVS_TKN_BINDING_ID_U32				= 1501,
89 	AVS_TKN_BINDING_TARGET_TPLG_NAME_STRING		= 1502,
90 	AVS_TKN_BINDING_TARGET_PATH_TMPL_ID_U32		= 1503,
91 	AVS_TKN_BINDING_TARGET_PPL_ID_U32		= 1504,
92 	AVS_TKN_BINDING_TARGET_MOD_ID_U32		= 1505,
93 	AVS_TKN_BINDING_TARGET_MOD_PIN_U8		= 1506,
94 	AVS_TKN_BINDING_MOD_ID_U32			= 1507,
95 	AVS_TKN_BINDING_MOD_PIN_U8			= 1508,
96 	AVS_TKN_BINDING_IS_SINK_U8			= 1509,
97 
98 	/* struct avs_tplg_pipeline */
99 	AVS_TKN_PPL_ID_U32				= 1601,
100 	AVS_TKN_PPL_PPLCFG_ID_U32			= 1602,
101 	AVS_TKN_PPL_NUM_BINDING_IDS_U32			= 1603,
102 	AVS_TKN_PPL_BINDING_ID_U32			= 1604,
103 
104 	/* struct avs_tplg_module */
105 	AVS_TKN_MOD_ID_U32				= 1701,
106 	AVS_TKN_MOD_MODCFG_BASE_ID_U32			= 1702,
107 	AVS_TKN_MOD_IN_AFMT_ID_U32			= 1703,
108 	AVS_TKN_MOD_CORE_ID_U8				= 1704,
109 	AVS_TKN_MOD_PROC_DOMAIN_U8			= 1705,
110 	AVS_TKN_MOD_MODCFG_EXT_ID_U32			= 1706,
111 	AVS_TKN_MOD_KCONTROL_ID_U32			= 1707,
112 
113 	/* struct avs_tplg_path_template */
114 	AVS_TKN_PATH_TMPL_ID_U32			= 1801,
115 
116 	/* struct avs_tplg_path */
117 	AVS_TKN_PATH_ID_U32				= 1901,
118 	AVS_TKN_PATH_FE_FMT_ID_U32			= 1902,
119 	AVS_TKN_PATH_BE_FMT_ID_U32			= 1903,
120 
121 	/* struct avs_tplg_pin_format */
122 	AVS_TKN_PIN_FMT_INDEX_U32			= 2201,
123 	AVS_TKN_PIN_FMT_IOBS_U32			= 2202,
124 	AVS_TKN_PIN_FMT_AFMT_ID_U32			= 2203,
125 
126 	/* struct avs_tplg_kcontrol */
127 	AVS_TKN_KCONTROL_ID_U32				= 2301,
128 };
129 
130 #endif
131