xref: /openbmc/linux/include/uapi/sound/intel/avs/tokens.h (revision be2b81b5)
199a15348SCezary Rojewski /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
299a15348SCezary Rojewski /*
399a15348SCezary Rojewski  * Copyright(c) 2021 Intel Corporation. All rights reserved.
499a15348SCezary Rojewski  *
599a15348SCezary Rojewski  * Authors: Cezary Rojewski <cezary.rojewski@intel.com>
699a15348SCezary Rojewski  *          Amadeusz Slawinski <amadeuszx.slawinski@linux.intel.com>
799a15348SCezary Rojewski  */
899a15348SCezary Rojewski 
999a15348SCezary Rojewski #ifndef __UAPI_SOUND_INTEL_AVS_TOKENS_H
1099a15348SCezary Rojewski #define __UAPI_SOUND_INTEL_AVS_TOKENS_H
1199a15348SCezary Rojewski 
1299a15348SCezary Rojewski enum avs_tplg_token {
1399a15348SCezary Rojewski 	/* struct avs_tplg */
1499a15348SCezary Rojewski 	AVS_TKN_MANIFEST_NAME_STRING			= 1,
1599a15348SCezary Rojewski 	AVS_TKN_MANIFEST_VERSION_U32			= 2,
1699a15348SCezary Rojewski 	AVS_TKN_MANIFEST_NUM_LIBRARIES_U32		= 3,
1799a15348SCezary Rojewski 	AVS_TKN_MANIFEST_NUM_AFMTS_U32			= 4,
1899a15348SCezary Rojewski 	AVS_TKN_MANIFEST_NUM_MODCFGS_BASE_U32		= 5,
1999a15348SCezary Rojewski 	AVS_TKN_MANIFEST_NUM_MODCFGS_EXT_U32		= 6,
2099a15348SCezary Rojewski 	AVS_TKN_MANIFEST_NUM_PPLCFGS_U32		= 7,
2199a15348SCezary Rojewski 	AVS_TKN_MANIFEST_NUM_BINDINGS_U32		= 8,
2299a15348SCezary Rojewski 
2399a15348SCezary Rojewski 	/* struct avs_tplg_library */
2499a15348SCezary Rojewski 	AVS_TKN_LIBRARY_ID_U32				= 101,
2599a15348SCezary Rojewski 	AVS_TKN_LIBRARY_NAME_STRING			= 102,
2699a15348SCezary Rojewski 
2799a15348SCezary Rojewski 	/* struct avs_audio_format */
2899a15348SCezary Rojewski 	AVS_TKN_AFMT_ID_U32				= 201,
2999a15348SCezary Rojewski 	AVS_TKN_AFMT_SAMPLE_RATE_U32			= 202,
3099a15348SCezary Rojewski 	AVS_TKN_AFMT_BIT_DEPTH_U32			= 203,
3199a15348SCezary Rojewski 	AVS_TKN_AFMT_CHANNEL_MAP_U32			= 204,
3299a15348SCezary Rojewski 	AVS_TKN_AFMT_CHANNEL_CFG_U32			= 205,
3399a15348SCezary Rojewski 	AVS_TKN_AFMT_INTERLEAVING_U32			= 206,
3499a15348SCezary Rojewski 	AVS_TKN_AFMT_NUM_CHANNELS_U32			= 207,
3599a15348SCezary Rojewski 	AVS_TKN_AFMT_VALID_BIT_DEPTH_U32		= 208,
3699a15348SCezary Rojewski 	AVS_TKN_AFMT_SAMPLE_TYPE_U32			= 209,
3799a15348SCezary Rojewski 
3899a15348SCezary Rojewski 	/* struct avs_tplg_modcfg_base */
3999a15348SCezary Rojewski 	AVS_TKN_MODCFG_BASE_ID_U32			= 301,
4099a15348SCezary Rojewski 	AVS_TKN_MODCFG_BASE_CPC_U32			= 302,
4199a15348SCezary Rojewski 	AVS_TKN_MODCFG_BASE_IBS_U32			= 303,
4299a15348SCezary Rojewski 	AVS_TKN_MODCFG_BASE_OBS_U32			= 304,
4399a15348SCezary Rojewski 	AVS_TKN_MODCFG_BASE_PAGES_U32			= 305,
4499a15348SCezary Rojewski 
4599a15348SCezary Rojewski 	/* struct avs_tplg_modcfg_ext */
4699a15348SCezary Rojewski 	AVS_TKN_MODCFG_EXT_ID_U32			= 401,
4799a15348SCezary Rojewski 	AVS_TKN_MODCFG_EXT_TYPE_UUID			= 402,
4899a15348SCezary Rojewski 	AVS_TKN_MODCFG_CPR_OUT_AFMT_ID_U32		= 403,
4999a15348SCezary Rojewski 	AVS_TKN_MODCFG_CPR_FEATURE_MASK_U32		= 404,
5099a15348SCezary Rojewski 	AVS_TKN_MODCFG_CPR_DMA_TYPE_U32			= 405,
5199a15348SCezary Rojewski 	AVS_TKN_MODCFG_CPR_DMABUFF_SIZE_U32		= 406,
5299a15348SCezary Rojewski 	AVS_TKN_MODCFG_CPR_VINDEX_U8			= 407,
5399a15348SCezary Rojewski 	AVS_TKN_MODCFG_CPR_BLOB_FMT_ID_U32		= 408,
5499a15348SCezary Rojewski 	AVS_TKN_MODCFG_MICSEL_OUT_AFMT_ID_U32		= 409,
5599a15348SCezary Rojewski 	AVS_TKN_MODCFG_INTELWOV_CPC_LP_MODE_U32		= 410,
5699a15348SCezary Rojewski 	AVS_TKN_MODCFG_SRC_OUT_FREQ_U32			= 411,
5799a15348SCezary Rojewski 	AVS_TKN_MODCFG_MUX_REF_AFMT_ID_U32		= 412,
5899a15348SCezary Rojewski 	AVS_TKN_MODCFG_MUX_OUT_AFMT_ID_U32		= 413,
5999a15348SCezary Rojewski 	AVS_TKN_MODCFG_AEC_REF_AFMT_ID_U32		= 414,
6099a15348SCezary Rojewski 	AVS_TKN_MODCFG_AEC_OUT_AFMT_ID_U32		= 415,
6199a15348SCezary Rojewski 	AVS_TKN_MODCFG_AEC_CPC_LP_MODE_U32		= 416,
6299a15348SCezary Rojewski 	AVS_TKN_MODCFG_ASRC_OUT_FREQ_U32		= 417,
6399a15348SCezary Rojewski 	AVS_TKN_MODCFG_ASRC_MODE_U8			= 418,
6499a15348SCezary Rojewski 	AVS_TKN_MODCFG_ASRC_DISABLE_JITTER_U8		= 419,
6599a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_OUT_CHAN_CFG_U32	= 420,
6699a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_SELECT_U32	= 421,
6799a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_0_S32		= 422,
6899a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_1_S32		= 423,
6999a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_2_S32		= 424,
7099a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_3_S32		= 425,
7199a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_4_S32		= 426,
7299a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_5_S32		= 427,
7399a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_6_S32		= 428,
7499a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_COEFF_7_S32		= 429,
7599a15348SCezary Rojewski 	AVS_TKN_MODCFG_UPDOWN_MIX_CHAN_MAP_U32		= 430,
7699a15348SCezary Rojewski 	AVS_TKN_MODCFG_EXT_NUM_INPUT_PINS_U16		= 431,
7799a15348SCezary Rojewski 	AVS_TKN_MODCFG_EXT_NUM_OUTPUT_PINS_U16		= 432,
7899a15348SCezary Rojewski 
7999a15348SCezary Rojewski 	/* struct avs_tplg_pplcfg */
8099a15348SCezary Rojewski 	AVS_TKN_PPLCFG_ID_U32				= 1401,
8199a15348SCezary Rojewski 	AVS_TKN_PPLCFG_REQ_SIZE_U16			= 1402,
8299a15348SCezary Rojewski 	AVS_TKN_PPLCFG_PRIORITY_U8			= 1403,
8399a15348SCezary Rojewski 	AVS_TKN_PPLCFG_LOW_POWER_BOOL			= 1404,
8499a15348SCezary Rojewski 	AVS_TKN_PPLCFG_ATTRIBUTES_U16			= 1405,
8599a15348SCezary Rojewski 	AVS_TKN_PPLCFG_TRIGGER_U32			= 1406,
8699a15348SCezary Rojewski 
8799a15348SCezary Rojewski 	/* struct avs_tplg_binding */
8899a15348SCezary Rojewski 	AVS_TKN_BINDING_ID_U32				= 1501,
8999a15348SCezary Rojewski 	AVS_TKN_BINDING_TARGET_TPLG_NAME_STRING		= 1502,
9099a15348SCezary Rojewski 	AVS_TKN_BINDING_TARGET_PATH_TMPL_ID_U32		= 1503,
9199a15348SCezary Rojewski 	AVS_TKN_BINDING_TARGET_PPL_ID_U32		= 1504,
9299a15348SCezary Rojewski 	AVS_TKN_BINDING_TARGET_MOD_ID_U32		= 1505,
9399a15348SCezary Rojewski 	AVS_TKN_BINDING_TARGET_MOD_PIN_U8		= 1506,
9499a15348SCezary Rojewski 	AVS_TKN_BINDING_MOD_ID_U32			= 1507,
9599a15348SCezary Rojewski 	AVS_TKN_BINDING_MOD_PIN_U8			= 1508,
9699a15348SCezary Rojewski 	AVS_TKN_BINDING_IS_SINK_U8			= 1509,
9799a15348SCezary Rojewski 
9899a15348SCezary Rojewski 	/* struct avs_tplg_pipeline */
9999a15348SCezary Rojewski 	AVS_TKN_PPL_ID_U32				= 1601,
10099a15348SCezary Rojewski 	AVS_TKN_PPL_PPLCFG_ID_U32			= 1602,
10199a15348SCezary Rojewski 	AVS_TKN_PPL_NUM_BINDING_IDS_U32			= 1603,
10299a15348SCezary Rojewski 	AVS_TKN_PPL_BINDING_ID_U32			= 1604,
10399a15348SCezary Rojewski 
10499a15348SCezary Rojewski 	/* struct avs_tplg_module */
10599a15348SCezary Rojewski 	AVS_TKN_MOD_ID_U32				= 1701,
10699a15348SCezary Rojewski 	AVS_TKN_MOD_MODCFG_BASE_ID_U32			= 1702,
10799a15348SCezary Rojewski 	AVS_TKN_MOD_IN_AFMT_ID_U32			= 1703,
10899a15348SCezary Rojewski 	AVS_TKN_MOD_CORE_ID_U8				= 1704,
10999a15348SCezary Rojewski 	AVS_TKN_MOD_PROC_DOMAIN_U8			= 1705,
11099a15348SCezary Rojewski 	AVS_TKN_MOD_MODCFG_EXT_ID_U32			= 1706,
111*be2b81b5SAmadeusz Sławiński 	AVS_TKN_MOD_KCONTROL_ID_U32			= 1707,
11299a15348SCezary Rojewski 
11399a15348SCezary Rojewski 	/* struct avs_tplg_path_template */
11499a15348SCezary Rojewski 	AVS_TKN_PATH_TMPL_ID_U32			= 1801,
11599a15348SCezary Rojewski 
11699a15348SCezary Rojewski 	/* struct avs_tplg_path */
11799a15348SCezary Rojewski 	AVS_TKN_PATH_ID_U32				= 1901,
11899a15348SCezary Rojewski 	AVS_TKN_PATH_FE_FMT_ID_U32			= 1902,
11999a15348SCezary Rojewski 	AVS_TKN_PATH_BE_FMT_ID_U32			= 1903,
12099a15348SCezary Rojewski 
12199a15348SCezary Rojewski 	/* struct avs_tplg_pin_format */
12299a15348SCezary Rojewski 	AVS_TKN_PIN_FMT_INDEX_U32			= 2201,
12399a15348SCezary Rojewski 	AVS_TKN_PIN_FMT_IOBS_U32			= 2202,
12499a15348SCezary Rojewski 	AVS_TKN_PIN_FMT_AFMT_ID_U32			= 2203,
125*be2b81b5SAmadeusz Sławiński 
126*be2b81b5SAmadeusz Sławiński 	/* struct avs_tplg_kcontrol */
127*be2b81b5SAmadeusz Sławiński 	AVS_TKN_KCONTROL_ID_U32				= 2301,
12899a15348SCezary Rojewski };
12999a15348SCezary Rojewski 
13099a15348SCezary Rojewski #endif
131