236 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2 3#ifndef __SND_AR_TOKENS_H__4#define __SND_AR_TOKENS_H__5 6#define APM_SUB_GRAPH_PERF_MODE_LOW_POWER 0x17#define APM_SUB_GRAPH_PERF_MODE_LOW_LATENCY 0x28 9#define APM_SUB_GRAPH_DIRECTION_TX 0x110#define APM_SUB_GRAPH_DIRECTION_RX 0x211 12/** Scenario ID Audio Playback */13#define APM_SUB_GRAPH_SID_AUDIO_PLAYBACK 0x114/* Scenario ID Audio Record */15#define APM_SUB_GRAPH_SID_AUDIO_RECORD 0x216/* Scenario ID Voice call. */17#define APM_SUB_GRAPH_SID_VOICE_CALL 0x318 19/* container capability ID Pre/Post Processing (PP) */20#define APM_CONTAINER_CAP_ID_PP 0x121/* container capability ID Compression/Decompression (CD) */22#define APM_CONTAINER_CAP_ID_CD 0x223/* container capability ID End Point(EP) */24#define APM_CONTAINER_CAP_ID_EP 0x325/* container capability ID Offload (OLC) */26#define APM_CONTAINER_CAP_ID_OLC 0x427 28/* container graph position Stream */29#define APM_CONT_GRAPH_POS_STREAM 0x130/* container graph position Per Stream Per Device*/31#define APM_CONT_GRAPH_POS_PER_STR_PER_DEV 0x232/* container graph position Stream-Device */33#define APM_CONT_GRAPH_POS_STR_DEV 0x334/* container graph position Global Device */35#define APM_CONT_GRAPH_POS_GLOBAL_DEV 0x436 37#define APM_PROC_DOMAIN_ID_MDSP 0x138#define APM_PROC_DOMAIN_ID_ADSP 0x239#define APM_PROC_DOMAIN_ID_SDSP 0x440#define APM_PROC_DOMAIN_ID_CDSP 0x541 42#define PCM_INTERLEAVED 143#define PCM_DEINTERLEAVED_PACKED 244#define PCM_DEINTERLEAVED_UNPACKED 345#define AR_I2S_WS_SRC_EXTERNAL 046#define AR_I2S_WS_SRC_INTERNAL 147 48enum ar_event_types {49 AR_EVENT_NONE = 0,50 AR_PGA_DAPM_EVENT51};52 53/*54 * Kcontrol IDs55 */56#define SND_SOC_AR_TPLG_FE_BE_GRAPH_CTL_MIX 25657#define SND_SOC_AR_TPLG_VOL_CTL 25758 59/**60 * %AR_TKN_U32_SUB_GRAPH_INSTANCE_ID: Sub Graph Instance Id61 *62 * %AR_TKN_U32_SUB_GRAPH_PERF_MODE: Performance mode of subgraph63 * APM_SUB_GRAPH_PERF_MODE_LOW_POWER = 1,64 * APM_SUB_GRAPH_PERF_MODE_LOW_LATENCY = 265 *66 * %AR_TKN_U32_SUB_GRAPH_DIRECTION: Direction of subgraph67 * APM_SUB_GRAPH_DIRECTION_TX = 1,68 * APM_SUB_GRAPH_DIRECTION_RX = 269 *70 * %AR_TKN_U32_SUB_GRAPH_SCENARIO_ID: Scenario ID for subgraph71 * APM_SUB_GRAPH_SID_AUDIO_PLAYBACK = 1,72 * APM_SUB_GRAPH_SID_AUDIO_RECORD = 2,73 * APM_SUB_GRAPH_SID_VOICE_CALL = 374 *75 * %AR_TKN_U32_CONTAINER_INSTANCE_ID: Container Instance ID76 *77 * %AR_TKN_U32_CONTAINER_CAPABILITY_ID: Container capability ID78 * APM_CONTAINER_CAP_ID_PP = 1,79 * APM_CONTAINER_CAP_ID_CD = 2,80 * APM_CONTAINER_CAP_ID_EP = 3,81 * APM_CONTAINER_CAP_ID_OLC = 482 *83 * %AR_TKN_U32_CONTAINER_STACK_SIZE: Stack size in the container.84 *85 * %AR_TKN_U32_CONTAINER_GRAPH_POS: Graph Position86 * APM_CONT_GRAPH_POS_STREAM = 1,87 * APM_CONT_GRAPH_POS_PER_STR_PER_DEV = 2,88 * APM_CONT_GRAPH_POS_STR_DEV = 3,89 * APM_CONT_GRAPH_POS_GLOBAL_DEV = 490 *91 * %AR_TKN_U32_CONTAINER_PROC_DOMAIN: Processor domain of container92 * APM_PROC_DOMAIN_ID_MDSP = 1,93 * APM_PROC_DOMAIN_ID_ADSP = 2,94 * APM_PROC_DOMAIN_ID_SDSP = 4,95 * APM_PROC_DOMAIN_ID_CDSP = 596 *97 * %AR_TKN_U32_MODULE_ID: Module ID98 *99 * %AR_TKN_U32_MODULE_INSTANCE_ID: Module Instance ID.100 *101 * %AR_TKN_U32_MODULE_MAX_IP_PORTS: Module maximum input ports102 *103 * %AR_TKN_U32_MODULE_MAX_OP_PORTS: Module maximum output ports.104 *105 * %AR_TKN_U32_MODULE_IN_PORTS: Number of in ports106 *107 * %AR_TKN_U32_MODULE_OUT_PORTS: Number of out ports.108 *109 * %AR_TKN_U32_MODULE_SRC_OP_PORT_ID: Source module output port ID110 *111 * %AR_TKN_U32_MODULE_DST_IN_PORT_ID: Destination module input port ID112 *113 * %AR_TKN_U32_MODULE_HW_IF_IDX: Interface index types for I2S/LPAIF114 *115 * %AR_TKN_U32_MODULE_HW_IF_TYPE: Interface type116 * LPAIF = 0,117 * LPAIF_RXTX = 1,118 * LPAIF_WSA = 2,119 * LPAIF_VA = 3,120 * LPAIF_AXI = 4121 *122 * %AR_TKN_U32_MODULE_FMT_INTERLEAVE: PCM Interleaving123 * PCM_INTERLEAVED = 1,124 * PCM_DEINTERLEAVED_PACKED = 2,125 * PCM_DEINTERLEAVED_UNPACKED = 3126 *127 * %AR_TKN_U32_MODULE_FMT_DATA: data format128 * FIXED POINT = 1,129 * IEC60958 PACKETIZED = 3,130 * IEC60958 PACKETIZED NON LINEAR = 8,131 * COMPR OVER PCM PACKETIZED = 7,132 * IEC61937 PACKETIZED = 2,133 * GENERIC COMPRESSED = 5134 *135 * %AR_TKN_U32_MODULE_FMT_SAMPLE_RATE: sample rate136 *137 * %AR_TKN_U32_MODULE_FMT_BIT_DEPTH: bit depth138 *139 * %AR_TKN_U32_MODULE_SD_LINE_IDX: I2S serial data line idx140 * I2S_SD0 = 1,141 * I2S_SD1 = 2,142 * I2S_SD2 = 3,143 * I2S_SD3 = 4,144 * I2S_QUAD01 = 5,145 * I2S_QUAD23 = 6,146 * I2S_6CHS = 7,147 * I2S_8CHS = 8148 *149 * %AR_TKN_U32_MODULE_WS_SRC: Word Select Source150 * AR_I2S_WS_SRC_EXTERNAL = 0,151 * AR_I2S_WS_SRC_INTERNAL = 1,152 *153 * %AR_TKN_U32_MODULE_FRAME_SZ_FACTOR: Frame size factor154 *155 * %AR_TKN_U32_MODULE_LOG_CODE: Log Module Code156 *157 * %AR_TKN_U32_MODULE_LOG_TAP_POINT_ID: logging tap point of this module158 *159 * %AR_TKN_U32_MODULE_LOG_MODE: logging mode160 * LOG_WAIT = 0,161 * LOG_IMMEDIATELY = 1162 *163 * %AR_TKN_DAI_INDEX: dai index164 *165 */166 167/* DAI Tokens */168#define AR_TKN_DAI_INDEX 1169/* SUB GRAPH Tokens */170#define AR_TKN_U32_SUB_GRAPH_INSTANCE_ID 2171#define AR_TKN_U32_SUB_GRAPH_PERF_MODE 3172#define AR_TKN_U32_SUB_GRAPH_DIRECTION 4173#define AR_TKN_U32_SUB_GRAPH_SCENARIO_ID 5174 175/* Container Tokens */176#define AR_TKN_U32_CONTAINER_INSTANCE_ID 100177#define AR_TKN_U32_CONTAINER_CAPABILITY_ID 101178#define AR_TKN_U32_CONTAINER_STACK_SIZE 102179#define AR_TKN_U32_CONTAINER_GRAPH_POS 103180#define AR_TKN_U32_CONTAINER_PROC_DOMAIN 104181 182/* Module Tokens */183#define AR_TKN_U32_MODULE_ID 200184#define AR_TKN_U32_MODULE_INSTANCE_ID 201185#define AR_TKN_U32_MODULE_MAX_IP_PORTS 202186#define AR_TKN_U32_MODULE_MAX_OP_PORTS 203187#define AR_TKN_U32_MODULE_IN_PORTS 204188#define AR_TKN_U32_MODULE_OUT_PORTS 205189#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID 206190#define AR_TKN_U32_MODULE_DST_IN_PORT_ID 207191#define AR_TKN_U32_MODULE_SRC_INSTANCE_ID 208192#define AR_TKN_U32_MODULE_DST_INSTANCE_ID 209193 194#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID1 210195#define AR_TKN_U32_MODULE_DST_IN_PORT_ID1 211196#define AR_TKN_U32_MODULE_DST_INSTANCE_ID1 212197 198#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID2 213199#define AR_TKN_U32_MODULE_DST_IN_PORT_ID2 214200#define AR_TKN_U32_MODULE_DST_INSTANCE_ID2 215201 202#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID3 216203#define AR_TKN_U32_MODULE_DST_IN_PORT_ID3 217204#define AR_TKN_U32_MODULE_DST_INSTANCE_ID3 218205 206#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID4 219207#define AR_TKN_U32_MODULE_DST_IN_PORT_ID4 220208#define AR_TKN_U32_MODULE_DST_INSTANCE_ID4 221209 210#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID5 222211#define AR_TKN_U32_MODULE_DST_IN_PORT_ID5 223212#define AR_TKN_U32_MODULE_DST_INSTANCE_ID5 224213 214#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID6 225215#define AR_TKN_U32_MODULE_DST_IN_PORT_ID6 226216#define AR_TKN_U32_MODULE_DST_INSTANCE_ID6 227217 218#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID7 228219#define AR_TKN_U32_MODULE_DST_IN_PORT_ID7 229220#define AR_TKN_U32_MODULE_DST_INSTANCE_ID7 230221 222#define AR_TKN_U32_MODULE_HW_IF_IDX 250223#define AR_TKN_U32_MODULE_HW_IF_TYPE 251224#define AR_TKN_U32_MODULE_FMT_INTERLEAVE 252225#define AR_TKN_U32_MODULE_FMT_DATA 253226#define AR_TKN_U32_MODULE_FMT_SAMPLE_RATE 254227#define AR_TKN_U32_MODULE_FMT_BIT_DEPTH 255228#define AR_TKN_U32_MODULE_SD_LINE_IDX 256229#define AR_TKN_U32_MODULE_WS_SRC 257230#define AR_TKN_U32_MODULE_FRAME_SZ_FACTOR 258231#define AR_TKN_U32_MODULE_LOG_CODE 259232#define AR_TKN_U32_MODULE_LOG_TAP_POINT_ID 260233#define AR_TKN_U32_MODULE_LOG_MODE 261234 235#endif /* __SND_AR_TOKENS_H__ */236