xref: /linux/include/uapi/sound/intel/avs/tokens.h (revision 1f20a5769446a1acae67ac9e63d07a594829a789)
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 	AVS_TKN_MANIFEST_NUM_CONDPATH_TMPLS_U32		= 9,
23 	AVS_TKN_MANIFEST_NUM_INIT_CONFIGS_U32		= 10,
24 
25 	/* struct avs_tplg_library */
26 	AVS_TKN_LIBRARY_ID_U32				= 101,
27 	AVS_TKN_LIBRARY_NAME_STRING			= 102,
28 
29 	/* struct avs_audio_format */
30 	AVS_TKN_AFMT_ID_U32				= 201,
31 	AVS_TKN_AFMT_SAMPLE_RATE_U32			= 202,
32 	AVS_TKN_AFMT_BIT_DEPTH_U32			= 203,
33 	AVS_TKN_AFMT_CHANNEL_MAP_U32			= 204,
34 	AVS_TKN_AFMT_CHANNEL_CFG_U32			= 205,
35 	AVS_TKN_AFMT_INTERLEAVING_U32			= 206,
36 	AVS_TKN_AFMT_NUM_CHANNELS_U32			= 207,
37 	AVS_TKN_AFMT_VALID_BIT_DEPTH_U32		= 208,
38 	AVS_TKN_AFMT_SAMPLE_TYPE_U32			= 209,
39 
40 	/* struct avs_tplg_modcfg_base */
41 	AVS_TKN_MODCFG_BASE_ID_U32			= 301,
42 	AVS_TKN_MODCFG_BASE_CPC_U32			= 302,
43 	AVS_TKN_MODCFG_BASE_IBS_U32			= 303,
44 	AVS_TKN_MODCFG_BASE_OBS_U32			= 304,
45 	AVS_TKN_MODCFG_BASE_PAGES_U32			= 305,
46 
47 	/* struct avs_tplg_modcfg_ext */
48 	AVS_TKN_MODCFG_EXT_ID_U32			= 401,
49 	AVS_TKN_MODCFG_EXT_TYPE_UUID			= 402,
50 	AVS_TKN_MODCFG_CPR_OUT_AFMT_ID_U32		= 403,
51 	AVS_TKN_MODCFG_CPR_FEATURE_MASK_U32		= 404,
52 	AVS_TKN_MODCFG_CPR_DMA_TYPE_U32			= 405,
53 	AVS_TKN_MODCFG_CPR_DMABUFF_SIZE_U32		= 406,
54 	AVS_TKN_MODCFG_CPR_VINDEX_U8			= 407,
55 	AVS_TKN_MODCFG_CPR_BLOB_FMT_ID_U32		= 408,
56 	AVS_TKN_MODCFG_MICSEL_OUT_AFMT_ID_U32		= 409,
57 	AVS_TKN_MODCFG_INTELWOV_CPC_LP_MODE_U32		= 410,
58 	AVS_TKN_MODCFG_SRC_OUT_FREQ_U32			= 411,
59 	AVS_TKN_MODCFG_MUX_REF_AFMT_ID_U32		= 412,
60 	AVS_TKN_MODCFG_MUX_OUT_AFMT_ID_U32		= 413,
61 	AVS_TKN_MODCFG_AEC_REF_AFMT_ID_U32		= 414,
62 	AVS_TKN_MODCFG_AEC_OUT_AFMT_ID_U32		= 415,
63 	AVS_TKN_MODCFG_AEC_CPC_LP_MODE_U32		= 416,
64 	AVS_TKN_MODCFG_ASRC_OUT_FREQ_U32		= 417,
65 	AVS_TKN_MODCFG_ASRC_MODE_U8			= 418,
66 	AVS_TKN_MODCFG_ASRC_DISABLE_JITTER_U8		= 419,
67 	AVS_TKN_MODCFG_UPDOWN_MIX_OUT_CHAN_CFG_U32	= 420,
68 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_SELECT_U32	= 421,
69 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_0_S32		= 422,
70 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_1_S32		= 423,
71 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_2_S32		= 424,
72 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_3_S32		= 425,
73 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_4_S32		= 426,
74 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_5_S32		= 427,
75 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_6_S32		= 428,
76 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_7_S32		= 429,
77 	AVS_TKN_MODCFG_UPDOWN_MIX_CHAN_MAP_U32		= 430,
78 	AVS_TKN_MODCFG_EXT_NUM_INPUT_PINS_U16		= 431,
79 	AVS_TKN_MODCFG_EXT_NUM_OUTPUT_PINS_U16		= 432,
80 
81 	/* struct avs_tplg_pplcfg */
82 	AVS_TKN_PPLCFG_ID_U32				= 1401,
83 	AVS_TKN_PPLCFG_REQ_SIZE_U16			= 1402,
84 	AVS_TKN_PPLCFG_PRIORITY_U8			= 1403,
85 	AVS_TKN_PPLCFG_LOW_POWER_BOOL			= 1404,
86 	AVS_TKN_PPLCFG_ATTRIBUTES_U16			= 1405,
87 	AVS_TKN_PPLCFG_TRIGGER_U32			= 1406,
88 
89 	/* struct avs_tplg_binding */
90 	AVS_TKN_BINDING_ID_U32				= 1501,
91 	AVS_TKN_BINDING_TARGET_TPLG_NAME_STRING		= 1502,
92 	AVS_TKN_BINDING_TARGET_PATH_TMPL_ID_U32		= 1503,
93 	AVS_TKN_BINDING_TARGET_PPL_ID_U32		= 1504,
94 	AVS_TKN_BINDING_TARGET_MOD_ID_U32		= 1505,
95 	AVS_TKN_BINDING_TARGET_MOD_PIN_U8		= 1506,
96 	AVS_TKN_BINDING_MOD_ID_U32			= 1507,
97 	AVS_TKN_BINDING_MOD_PIN_U8			= 1508,
98 	AVS_TKN_BINDING_IS_SINK_U8			= 1509,
99 
100 	/* struct avs_tplg_pipeline */
101 	AVS_TKN_PPL_ID_U32				= 1601,
102 	AVS_TKN_PPL_PPLCFG_ID_U32			= 1602,
103 	AVS_TKN_PPL_NUM_BINDING_IDS_U32			= 1603,
104 	AVS_TKN_PPL_BINDING_ID_U32			= 1604,
105 
106 	/* struct avs_tplg_module */
107 	AVS_TKN_MOD_ID_U32				= 1701,
108 	AVS_TKN_MOD_MODCFG_BASE_ID_U32			= 1702,
109 	AVS_TKN_MOD_IN_AFMT_ID_U32			= 1703,
110 	AVS_TKN_MOD_CORE_ID_U8				= 1704,
111 	AVS_TKN_MOD_PROC_DOMAIN_U8			= 1705,
112 	AVS_TKN_MOD_MODCFG_EXT_ID_U32			= 1706,
113 	AVS_TKN_MOD_KCONTROL_ID_U32			= 1707,
114 	AVS_TKN_MOD_INIT_CONFIG_NUM_IDS_U32		= 1708,
115 	AVS_TKN_MOD_INIT_CONFIG_ID_U32			= 1709,
116 
117 	/* struct avs_tplg_path_template */
118 	AVS_TKN_PATH_TMPL_ID_U32			= 1801,
119 
120 	/* struct avs_tplg_path */
121 	AVS_TKN_PATH_ID_U32				= 1901,
122 	AVS_TKN_PATH_FE_FMT_ID_U32			= 1902,
123 	AVS_TKN_PATH_BE_FMT_ID_U32			= 1903,
124 
125 	/* struct avs_tplg_pin_format */
126 	AVS_TKN_PIN_FMT_INDEX_U32			= 2201,
127 	AVS_TKN_PIN_FMT_IOBS_U32			= 2202,
128 	AVS_TKN_PIN_FMT_AFMT_ID_U32			= 2203,
129 
130 	/* struct avs_tplg_kcontrol */
131 	AVS_TKN_KCONTROL_ID_U32				= 2301,
132 
133 	/* struct avs_tplg_init_config */
134 	AVS_TKN_INIT_CONFIG_ID_U32			= 2401,
135 	AVS_TKN_INIT_CONFIG_PARAM_U8			= 2402,
136 	AVS_TKN_INIT_CONFIG_LENGTH_U32			= 2403,
137 };
138 
139 #endif
140