snd_ar_tokens.h (6676B)
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 0x1 7#define APM_SUB_GRAPH_PERF_MODE_LOW_LATENCY 0x2 8 9#define APM_SUB_GRAPH_DIRECTION_TX 0x1 10#define APM_SUB_GRAPH_DIRECTION_RX 0x2 11 12/** Scenario ID Audio Playback */ 13#define APM_SUB_GRAPH_SID_AUDIO_PLAYBACK 0x1 14/* Scenario ID Audio Record */ 15#define APM_SUB_GRAPH_SID_AUDIO_RECORD 0x2 16/* Scenario ID Voice call. */ 17#define APM_SUB_GRAPH_SID_VOICE_CALL 0x3 18 19/* container capability ID Pre/Post Processing (PP) */ 20#define APM_CONTAINER_CAP_ID_PP 0x1 21/* container capability ID Compression/Decompression (CD) */ 22#define APM_CONTAINER_CAP_ID_CD 0x2 23/* container capability ID End Point(EP) */ 24#define APM_CONTAINER_CAP_ID_EP 0x3 25/* container capability ID Offload (OLC) */ 26#define APM_CONTAINER_CAP_ID_OLC 0x4 27 28/* container graph position Stream */ 29#define APM_CONT_GRAPH_POS_STREAM 0x1 30/* container graph position Per Stream Per Device*/ 31#define APM_CONT_GRAPH_POS_PER_STR_PER_DEV 0x2 32/* container graph position Stream-Device */ 33#define APM_CONT_GRAPH_POS_STR_DEV 0x3 34/* container graph position Global Device */ 35#define APM_CONT_GRAPH_POS_GLOBAL_DEV 0x4 36 37#define APM_PROC_DOMAIN_ID_MDSP 0x1 38#define APM_PROC_DOMAIN_ID_ADSP 0x2 39#define APM_PROC_DOMAIN_ID_SDSP 0x4 40#define APM_PROC_DOMAIN_ID_CDSP 0x5 41 42#define PCM_INTERLEAVED 1 43#define PCM_DEINTERLEAVED_PACKED 2 44#define PCM_DEINTERLEAVED_UNPACKED 3 45#define AR_I2S_WS_SRC_EXTERNAL 0 46#define AR_I2S_WS_SRC_INTERNAL 1 47 48enum ar_event_types { 49 AR_EVENT_NONE = 0, 50 AR_PGA_DAPM_EVENT 51}; 52 53/* 54 * Kcontrol IDs 55 */ 56#define SND_SOC_AR_TPLG_FE_BE_GRAPH_CTL_MIX 256 57#define SND_SOC_AR_TPLG_VOL_CTL 257 58 59/** 60 * %AR_TKN_U32_SUB_GRAPH_INSTANCE_ID: Sub Graph Instance Id 61 * 62 * %AR_TKN_U32_SUB_GRAPH_PERF_MODE: Performance mode of subgraph 63 * APM_SUB_GRAPH_PERF_MODE_LOW_POWER = 1, 64 * APM_SUB_GRAPH_PERF_MODE_LOW_LATENCY = 2 65 * 66 * %AR_TKN_U32_SUB_GRAPH_DIRECTION: Direction of subgraph 67 * APM_SUB_GRAPH_DIRECTION_TX = 1, 68 * APM_SUB_GRAPH_DIRECTION_RX = 2 69 * 70 * %AR_TKN_U32_SUB_GRAPH_SCENARIO_ID: Scenario ID for subgraph 71 * APM_SUB_GRAPH_SID_AUDIO_PLAYBACK = 1, 72 * APM_SUB_GRAPH_SID_AUDIO_RECORD = 2, 73 * APM_SUB_GRAPH_SID_VOICE_CALL = 3 74 * 75 * %AR_TKN_U32_CONTAINER_INSTANCE_ID: Container Instance ID 76 * 77 * %AR_TKN_U32_CONTAINER_CAPABILITY_ID: Container capability ID 78 * 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 = 4 82 * 83 * %AR_TKN_U32_CONTAINER_STACK_SIZE: Stack size in the container. 84 * 85 * %AR_TKN_U32_CONTAINER_GRAPH_POS: Graph Position 86 * 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 = 4 90 * 91 * %AR_TKN_U32_CONTAINER_PROC_DOMAIN: Processor domain of container 92 * 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 = 5 96 * 97 * %AR_TKN_U32_MODULE_ID: Module ID 98 * 99 * %AR_TKN_U32_MODULE_INSTANCE_ID: Module Instance ID. 100 * 101 * %AR_TKN_U32_MODULE_MAX_IP_PORTS: Module maximum input ports 102 * 103 * %AR_TKN_U32_MODULE_MAX_OP_PORTS: Module maximum output ports. 104 * 105 * %AR_TKN_U32_MODULE_IN_PORTS: Number of in ports 106 * 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 ID 110 * 111 * %AR_TKN_U32_MODULE_DST_IN_PORT_ID: Destination module input port ID 112 * 113 * %AR_TKN_U32_MODULE_HW_IF_IDX: Interface index types for I2S/LPAIF 114 * 115 * %AR_TKN_U32_MODULE_HW_IF_TYPE: Interface type 116 * LPAIF = 0, 117 * LPAIF_RXTX = 1, 118 * LPAIF_WSA = 2, 119 * LPAIF_VA = 3, 120 * LPAIF_AXI = 4 121 * 122 * %AR_TKN_U32_MODULE_FMT_INTERLEAVE: PCM Interleaving 123 * PCM_INTERLEAVED = 1, 124 * PCM_DEINTERLEAVED_PACKED = 2, 125 * PCM_DEINTERLEAVED_UNPACKED = 3 126 * 127 * %AR_TKN_U32_MODULE_FMT_DATA: data format 128 * 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 = 5 134 * 135 * %AR_TKN_U32_MODULE_FMT_SAMPLE_RATE: sample rate 136 * 137 * %AR_TKN_U32_MODULE_FMT_BIT_DEPTH: bit depth 138 * 139 * %AR_TKN_U32_MODULE_SD_LINE_IDX: I2S serial data line idx 140 * 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 = 8 148 * 149 * %AR_TKN_U32_MODULE_WS_SRC: Word Select Source 150 * AR_I2S_WS_SRC_EXTERNAL = 0, 151 * AR_I2S_WS_SRC_INTERNAL = 1, 152 * 153 * %AR_TKN_U32_MODULE_FRAME_SZ_FACTOR: Frame size factor 154 * 155 * %AR_TKN_U32_MODULE_LOG_CODE: Log Module Code 156 * 157 * %AR_TKN_U32_MODULE_LOG_TAP_POINT_ID: logging tap point of this module 158 * 159 * %AR_TKN_U32_MODULE_LOG_MODE: logging mode 160 * LOG_WAIT = 0, 161 * LOG_IMMEDIATELY = 1 162 * 163 * %AR_TKN_DAI_INDEX: dai index 164 * 165 */ 166 167/* DAI Tokens */ 168#define AR_TKN_DAI_INDEX 1 169/* SUB GRAPH Tokens */ 170#define AR_TKN_U32_SUB_GRAPH_INSTANCE_ID 2 171#define AR_TKN_U32_SUB_GRAPH_PERF_MODE 3 172#define AR_TKN_U32_SUB_GRAPH_DIRECTION 4 173#define AR_TKN_U32_SUB_GRAPH_SCENARIO_ID 5 174 175/* Container Tokens */ 176#define AR_TKN_U32_CONTAINER_INSTANCE_ID 100 177#define AR_TKN_U32_CONTAINER_CAPABILITY_ID 101 178#define AR_TKN_U32_CONTAINER_STACK_SIZE 102 179#define AR_TKN_U32_CONTAINER_GRAPH_POS 103 180#define AR_TKN_U32_CONTAINER_PROC_DOMAIN 104 181 182/* Module Tokens */ 183#define AR_TKN_U32_MODULE_ID 200 184#define AR_TKN_U32_MODULE_INSTANCE_ID 201 185#define AR_TKN_U32_MODULE_MAX_IP_PORTS 202 186#define AR_TKN_U32_MODULE_MAX_OP_PORTS 203 187#define AR_TKN_U32_MODULE_IN_PORTS 204 188#define AR_TKN_U32_MODULE_OUT_PORTS 205 189#define AR_TKN_U32_MODULE_SRC_OP_PORT_ID 206 190#define AR_TKN_U32_MODULE_DST_IN_PORT_ID 207 191#define AR_TKN_U32_MODULE_SRC_INSTANCE_ID 208 192#define AR_TKN_U32_MODULE_DST_INSTANCE_ID 209 193 194 195#define AR_TKN_U32_MODULE_HW_IF_IDX 250 196#define AR_TKN_U32_MODULE_HW_IF_TYPE 251 197#define AR_TKN_U32_MODULE_FMT_INTERLEAVE 252 198#define AR_TKN_U32_MODULE_FMT_DATA 253 199#define AR_TKN_U32_MODULE_FMT_SAMPLE_RATE 254 200#define AR_TKN_U32_MODULE_FMT_BIT_DEPTH 255 201#define AR_TKN_U32_MODULE_SD_LINE_IDX 256 202#define AR_TKN_U32_MODULE_WS_SRC 257 203#define AR_TKN_U32_MODULE_FRAME_SZ_FACTOR 258 204#define AR_TKN_U32_MODULE_LOG_CODE 259 205#define AR_TKN_U32_MODULE_LOG_TAP_POINT_ID 260 206#define AR_TKN_U32_MODULE_LOG_MODE 261 207 208#endif /* __SND_AR_TOKENS_H__ */