brintos

brintos / linux-shallow public Read only

0
0
Text · 6.8 KiB · 0a246bc Raw
226 lines · c
1/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */2/*3 * This file is provided under a dual BSD/GPLv2 license.  When using or4 * redistributing this file, you may do so under either license.5 *6 * Copyright(c) 2018 Intel Corporation7 * Author: Liam Girdwood <liam.r.girdwood@linux.intel.com>8 *         Keyon Jie <yang.jie@linux.intel.com>9 */10 11/*12 * Topology IDs and tokens.13 *14 * ** MUST BE ALIGNED WITH TOPOLOGY CONFIGURATION TOKEN VALUES **15 */16 17#ifndef __INCLUDE_UAPI_SOF_TOPOLOGY_H__18#define __INCLUDE_UAPI_SOF_TOPOLOGY_H__19 20/*21 * Kcontrol IDs22 */23#define SOF_TPLG_KCTL_VOL_ID	25624#define SOF_TPLG_KCTL_ENUM_ID	25725#define SOF_TPLG_KCTL_BYTES_ID	25826#define SOF_TPLG_KCTL_SWITCH_ID	25927#define SOF_TPLG_KCTL_BYTES_VOLATILE_RO 26028#define SOF_TPLG_KCTL_BYTES_VOLATILE_RW 26129#define SOF_TPLG_KCTL_BYTES_WO_ID 26230 31/*32 * Tokens - must match values in topology configurations33 */34 35/* buffers */36#define SOF_TKN_BUF_SIZE			10037#define SOF_TKN_BUF_CAPS			10138#define SOF_TKN_BUF_FLAGS			10239 40/* DAI */41/* Token retired with ABI 3.2, do not use for new capabilities42 * #define	SOF_TKN_DAI_DMAC_CONFIG			15343 */44#define SOF_TKN_DAI_TYPE			15445#define SOF_TKN_DAI_INDEX			15546#define SOF_TKN_DAI_DIRECTION			15647 48/* scheduling */49#define SOF_TKN_SCHED_PERIOD			20050#define SOF_TKN_SCHED_PRIORITY			20151#define SOF_TKN_SCHED_MIPS			20252#define SOF_TKN_SCHED_CORE			20353#define SOF_TKN_SCHED_FRAMES			20454#define SOF_TKN_SCHED_TIME_DOMAIN		20555#define SOF_TKN_SCHED_DYNAMIC_PIPELINE		20656#define SOF_TKN_SCHED_LP_MODE			20757#define SOF_TKN_SCHED_MEM_USAGE			20858#define SOF_TKN_SCHED_USE_CHAIN_DMA		20959 60/* volume */61#define SOF_TKN_VOLUME_RAMP_STEP_TYPE		25062#define SOF_TKN_VOLUME_RAMP_STEP_MS		25163 64#define SOF_TKN_GAIN_RAMP_TYPE			26065#define SOF_TKN_GAIN_RAMP_DURATION		26166#define SOF_TKN_GAIN_VAL			26267 68/* SRC */69#define SOF_TKN_SRC_RATE_IN			30070#define SOF_TKN_SRC_RATE_OUT			30171 72/* ASRC */73#define SOF_TKN_ASRC_RATE_IN			32074#define SOF_TKN_ASRC_RATE_OUT			32175#define SOF_TKN_ASRC_ASYNCHRONOUS_MODE		32276#define SOF_TKN_ASRC_OPERATION_MODE		32377 78/* PCM */79#define SOF_TKN_PCM_DMAC_CONFIG			35380 81/* Generic components */82#define SOF_TKN_COMP_PERIOD_SINK_COUNT		40083#define SOF_TKN_COMP_PERIOD_SOURCE_COUNT	40184#define SOF_TKN_COMP_FORMAT			40285/* Token retired with ABI 3.2, do not use for new capabilities86 * #define SOF_TKN_COMP_PRELOAD_COUNT		40387 */88#define SOF_TKN_COMP_CORE_ID			40489#define SOF_TKN_COMP_UUID                       40590#define SOF_TKN_COMP_CPC			40691#define SOF_TKN_COMP_IS_PAGES			40992#define SOF_TKN_COMP_NUM_AUDIO_FORMATS		41093#define SOF_TKN_COMP_NUM_INPUT_PINS		41194#define SOF_TKN_COMP_NUM_OUTPUT_PINS		41295/*96 * The token for input/output pin binding, it specifies the widget97 * name that the input/output pin is connected from/to.98 */99#define SOF_TKN_COMP_INPUT_PIN_BINDING_WNAME	413100#define SOF_TKN_COMP_OUTPUT_PIN_BINDING_WNAME	414101#define SOF_TKN_COMP_NUM_INPUT_AUDIO_FORMATS	415102#define SOF_TKN_COMP_NUM_OUTPUT_AUDIO_FORMATS	416103/*104 * The token value is copied to the dapm_widget's105 * no_wname_in_kcontrol_name.106 */107#define SOF_TKN_COMP_NO_WNAME_IN_KCONTROL_NAME	417108 109/* SSP */110#define SOF_TKN_INTEL_SSP_CLKS_CONTROL		500111#define SOF_TKN_INTEL_SSP_MCLK_ID		501112#define SOF_TKN_INTEL_SSP_SAMPLE_BITS		502113#define SOF_TKN_INTEL_SSP_FRAME_PULSE_WIDTH	503114#define SOF_TKN_INTEL_SSP_QUIRKS		504115#define SOF_TKN_INTEL_SSP_TDM_PADDING_PER_SLOT	505116#define SOF_TKN_INTEL_SSP_BCLK_DELAY		506117 118/* DMIC */119#define SOF_TKN_INTEL_DMIC_DRIVER_VERSION	600120#define SOF_TKN_INTEL_DMIC_CLK_MIN		601121#define SOF_TKN_INTEL_DMIC_CLK_MAX		602122#define SOF_TKN_INTEL_DMIC_DUTY_MIN		603123#define SOF_TKN_INTEL_DMIC_DUTY_MAX		604124#define SOF_TKN_INTEL_DMIC_NUM_PDM_ACTIVE	605125#define SOF_TKN_INTEL_DMIC_SAMPLE_RATE		608126#define SOF_TKN_INTEL_DMIC_FIFO_WORD_LENGTH	609127#define SOF_TKN_INTEL_DMIC_UNMUTE_RAMP_TIME_MS  610128 129/* DMIC PDM */130#define SOF_TKN_INTEL_DMIC_PDM_CTRL_ID		700131#define SOF_TKN_INTEL_DMIC_PDM_MIC_A_Enable	701132#define SOF_TKN_INTEL_DMIC_PDM_MIC_B_Enable	702133#define SOF_TKN_INTEL_DMIC_PDM_POLARITY_A	703134#define SOF_TKN_INTEL_DMIC_PDM_POLARITY_B	704135#define SOF_TKN_INTEL_DMIC_PDM_CLK_EDGE		705136#define SOF_TKN_INTEL_DMIC_PDM_SKEW		706137 138/* Tone */139#define SOF_TKN_TONE_SAMPLE_RATE		800140 141/* Processing Components */142#define SOF_TKN_PROCESS_TYPE                    900143 144/* for backward compatibility */145#define SOF_TKN_EFFECT_TYPE	SOF_TKN_PROCESS_TYPE146 147/* SAI */148#define SOF_TKN_IMX_SAI_MCLK_ID			1000149 150/* ESAI */151#define SOF_TKN_IMX_ESAI_MCLK_ID		1100152 153/* Stream */154#define SOF_TKN_STREAM_PLAYBACK_COMPATIBLE_D0I3	1200155#define SOF_TKN_STREAM_CAPTURE_COMPATIBLE_D0I3	1201156 157/* Led control for mute switches */158#define SOF_TKN_MUTE_LED_USE			1300159#define SOF_TKN_MUTE_LED_DIRECTION		1301160 161/* ALH */162#define SOF_TKN_INTEL_ALH_RATE			1400163#define SOF_TKN_INTEL_ALH_CH			1401164 165/* HDA */166#define SOF_TKN_INTEL_HDA_RATE			1500167#define SOF_TKN_INTEL_HDA_CH			1501168 169/* AFE */170#define SOF_TKN_MEDIATEK_AFE_RATE		1600171#define SOF_TKN_MEDIATEK_AFE_CH			1601172#define SOF_TKN_MEDIATEK_AFE_FORMAT		1602173 174/* MIXER */175#define SOF_TKN_MIXER_TYPE			1700176 177/* ACPDMIC */178#define SOF_TKN_AMD_ACPDMIC_RATE		1800179#define SOF_TKN_AMD_ACPDMIC_CH			1801180 181/* CAVS AUDIO FORMAT */182#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_RATE	1900183#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_BIT_DEPTH	1901184#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_VALID_BIT_DEPTH	1902185#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_CHANNELS	1903186#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_CH_MAP	1904187#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_CH_CFG	1905188#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_INTERLEAVING_STYLE	1906189#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_FMT_CFG	1907190#define SOF_TKN_CAVS_AUDIO_FORMAT_IN_SAMPLE_TYPE	1908191#define SOF_TKN_CAVS_AUDIO_FORMAT_INPUT_PIN_INDEX	1909192/* intentional token numbering discontinuity, reserved for future use */193#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_RATE	1930194#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_BIT_DEPTH	1931195#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_VALID_BIT_DEPTH 1932196#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_CHANNELS	1933197#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_CH_MAP	1934198#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_CH_CFG	1935199#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_INTERLEAVING_STYLE	1936200#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_FMT_CFG	1937201#define SOF_TKN_CAVS_AUDIO_FORMAT_OUT_SAMPLE_TYPE	1938202#define SOF_TKN_CAVS_AUDIO_FORMAT_OUTPUT_PIN_INDEX	1939203/* intentional token numbering discontinuity, reserved for future use */204#define SOF_TKN_CAVS_AUDIO_FORMAT_IBS		1970205#define SOF_TKN_CAVS_AUDIO_FORMAT_OBS		1971206#define SOF_TKN_CAVS_AUDIO_FORMAT_DMA_BUFFER_SIZE	1972207 208/* COPIER */209#define SOF_TKN_INTEL_COPIER_NODE_TYPE		1980210#define SOF_TKN_INTEL_COPIER_DEEP_BUFFER_DMA_MS	1981211 212/* ACP I2S */213#define SOF_TKN_AMD_ACPI2S_RATE			1700214#define SOF_TKN_AMD_ACPI2S_CH			1701215#define SOF_TKN_AMD_ACPI2S_TDM_MODE		1702216 217/* MICFIL PDM */218#define SOF_TKN_IMX_MICFIL_RATE			2000219#define SOF_TKN_IMX_MICFIL_CH			2001220 221/* ACP SDW */222#define SOF_TKN_AMD_ACP_SDW_RATE		2100223#define SOF_TKN_AMD_ACP_SDW_CH			2101224 225#endif226