Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
0002 
0003 #ifndef __SND_AR_TOKENS_H__
0004 #define __SND_AR_TOKENS_H__
0005 
0006 #define APM_SUB_GRAPH_PERF_MODE_LOW_POWER   0x1
0007 #define APM_SUB_GRAPH_PERF_MODE_LOW_LATENCY 0x2
0008 
0009 #define APM_SUB_GRAPH_DIRECTION_TX      0x1
0010 #define APM_SUB_GRAPH_DIRECTION_RX      0x2
0011 
0012 /** Scenario ID Audio Playback */
0013 #define APM_SUB_GRAPH_SID_AUDIO_PLAYBACK          0x1
0014 /* Scenario ID Audio Record */
0015 #define APM_SUB_GRAPH_SID_AUDIO_RECORD            0x2
0016 /* Scenario ID Voice call. */
0017 #define APM_SUB_GRAPH_SID_VOICE_CALL              0x3
0018 
0019 /* container capability ID Pre/Post Processing (PP) */
0020 #define APM_CONTAINER_CAP_ID_PP                   0x1
0021 /* container capability ID Compression/Decompression (CD) */
0022 #define APM_CONTAINER_CAP_ID_CD                   0x2
0023 /* container capability ID End Point(EP) */
0024 #define APM_CONTAINER_CAP_ID_EP                   0x3
0025 /* container capability ID Offload (OLC) */
0026 #define APM_CONTAINER_CAP_ID_OLC                  0x4
0027 
0028 /* container graph position Stream */
0029 #define APM_CONT_GRAPH_POS_STREAM                 0x1
0030 /* container graph position Per Stream Per Device*/
0031 #define APM_CONT_GRAPH_POS_PER_STR_PER_DEV        0x2
0032 /* container graph position Stream-Device */
0033 #define APM_CONT_GRAPH_POS_STR_DEV                0x3
0034 /* container graph position Global Device */
0035 #define APM_CONT_GRAPH_POS_GLOBAL_DEV             0x4
0036 
0037 #define APM_PROC_DOMAIN_ID_MDSP         0x1
0038 #define APM_PROC_DOMAIN_ID_ADSP         0x2
0039 #define APM_PROC_DOMAIN_ID_SDSP         0x4
0040 #define APM_PROC_DOMAIN_ID_CDSP         0x5
0041 
0042 #define PCM_INTERLEAVED         1
0043 #define PCM_DEINTERLEAVED_PACKED    2
0044 #define PCM_DEINTERLEAVED_UNPACKED  3
0045 #define AR_I2S_WS_SRC_EXTERNAL  0
0046 #define AR_I2S_WS_SRC_INTERNAL  1
0047 
0048 enum ar_event_types {
0049     AR_EVENT_NONE = 0,
0050     AR_PGA_DAPM_EVENT
0051 };
0052 
0053 /*
0054  * Kcontrol IDs
0055  */
0056 #define SND_SOC_AR_TPLG_FE_BE_GRAPH_CTL_MIX 256
0057 #define SND_SOC_AR_TPLG_VOL_CTL         257
0058 
0059 /**
0060  * %AR_TKN_U32_SUB_GRAPH_INSTANCE_ID:       Sub Graph Instance Id
0061  *
0062  * %AR_TKN_U32_SUB_GRAPH_PERF_MODE:     Performance mode of subgraph
0063  *                      APM_SUB_GRAPH_PERF_MODE_LOW_POWER = 1,
0064  *                      APM_SUB_GRAPH_PERF_MODE_LOW_LATENCY = 2
0065  *
0066  * %AR_TKN_U32_SUB_GRAPH_DIRECTION:     Direction of subgraph
0067  *                      APM_SUB_GRAPH_DIRECTION_TX = 1,
0068  *                      APM_SUB_GRAPH_DIRECTION_RX = 2
0069  *
0070  * %AR_TKN_U32_SUB_GRAPH_SCENARIO_ID:       Scenario ID for subgraph
0071  *                      APM_SUB_GRAPH_SID_AUDIO_PLAYBACK = 1,
0072  *                      APM_SUB_GRAPH_SID_AUDIO_RECORD = 2,
0073  *                      APM_SUB_GRAPH_SID_VOICE_CALL = 3
0074  *
0075  * %AR_TKN_U32_CONTAINER_INSTANCE_ID:       Container Instance ID
0076  *
0077  * %AR_TKN_U32_CONTAINER_CAPABILITY_ID:     Container capability ID
0078  *                      APM_CONTAINER_CAP_ID_PP = 1,
0079  *                      APM_CONTAINER_CAP_ID_CD = 2,
0080  *                      APM_CONTAINER_CAP_ID_EP = 3,
0081  *                      APM_CONTAINER_CAP_ID_OLC = 4
0082  *
0083  * %AR_TKN_U32_CONTAINER_STACK_SIZE:        Stack size in the container.
0084  *
0085  * %AR_TKN_U32_CONTAINER_GRAPH_POS:     Graph Position
0086  *                      APM_CONT_GRAPH_POS_STREAM = 1,
0087  *                      APM_CONT_GRAPH_POS_PER_STR_PER_DEV = 2,
0088  *                      APM_CONT_GRAPH_POS_STR_DEV = 3,
0089  *                      APM_CONT_GRAPH_POS_GLOBAL_DEV = 4
0090  *
0091  * %AR_TKN_U32_CONTAINER_PROC_DOMAIN:       Processor domain of container
0092  *                      APM_PROC_DOMAIN_ID_MDSP = 1,
0093  *                      APM_PROC_DOMAIN_ID_ADSP = 2,
0094  *                      APM_PROC_DOMAIN_ID_SDSP = 4,
0095  *                      APM_PROC_DOMAIN_ID_CDSP = 5
0096  *
0097  * %AR_TKN_U32_MODULE_ID:           Module ID
0098  *
0099  * %AR_TKN_U32_MODULE_INSTANCE_ID:      Module Instance ID.
0100  *
0101  * %AR_TKN_U32_MODULE_MAX_IP_PORTS:     Module maximum input ports
0102  *
0103  * %AR_TKN_U32_MODULE_MAX_OP_PORTS:     Module maximum output ports.
0104  *
0105  * %AR_TKN_U32_MODULE_IN_PORTS:         Number of in ports
0106  *
0107  * %AR_TKN_U32_MODULE_OUT_PORTS:        Number of out ports.
0108  *
0109  * %AR_TKN_U32_MODULE_SRC_OP_PORT_ID:       Source module output port ID
0110  *
0111  * %AR_TKN_U32_MODULE_DST_IN_PORT_ID:       Destination module input port ID
0112  *
0113  * %AR_TKN_U32_MODULE_HW_IF_IDX:        Interface index types for I2S/LPAIF
0114  *
0115  * %AR_TKN_U32_MODULE_HW_IF_TYPE:       Interface type
0116  *                      LPAIF = 0,
0117  *                      LPAIF_RXTX = 1,
0118  *                      LPAIF_WSA = 2,
0119  *                      LPAIF_VA = 3,
0120  *                      LPAIF_AXI = 4
0121  *
0122  * %AR_TKN_U32_MODULE_FMT_INTERLEAVE:       PCM Interleaving
0123  *                      PCM_INTERLEAVED = 1,
0124  *                      PCM_DEINTERLEAVED_PACKED = 2,
0125  *                      PCM_DEINTERLEAVED_UNPACKED = 3
0126  *
0127  * %AR_TKN_U32_MODULE_FMT_DATA:         data format
0128  *                      FIXED POINT = 1,
0129  *                      IEC60958 PACKETIZED = 3,
0130  *                      IEC60958 PACKETIZED NON LINEAR = 8,
0131  *                      COMPR OVER PCM PACKETIZED = 7,
0132  *                      IEC61937 PACKETIZED = 2,
0133  *                      GENERIC COMPRESSED = 5
0134  *
0135  * %AR_TKN_U32_MODULE_FMT_SAMPLE_RATE:      sample rate
0136  *
0137  * %AR_TKN_U32_MODULE_FMT_BIT_DEPTH:        bit depth
0138  *
0139  * %AR_TKN_U32_MODULE_SD_LINE_IDX:      I2S serial data line idx
0140  *                      I2S_SD0 = 1,
0141  *                      I2S_SD1 = 2,
0142  *                      I2S_SD2 = 3,
0143  *                      I2S_SD3 = 4,
0144  *                      I2S_QUAD01 = 5,
0145  *                      I2S_QUAD23 = 6,
0146  *                      I2S_6CHS = 7,
0147  *                      I2S_8CHS = 8
0148  *
0149  * %AR_TKN_U32_MODULE_WS_SRC:           Word Select Source
0150  *                      AR_I2S_WS_SRC_EXTERNAL = 0,
0151  *                      AR_I2S_WS_SRC_INTERNAL = 1,
0152  *
0153  * %AR_TKN_U32_MODULE_FRAME_SZ_FACTOR:      Frame size factor
0154  *
0155  * %AR_TKN_U32_MODULE_LOG_CODE:         Log Module Code
0156  *
0157  * %AR_TKN_U32_MODULE_LOG_TAP_POINT_ID:     logging tap point of this module
0158  *
0159  * %AR_TKN_U32_MODULE_LOG_MODE:         logging mode
0160  *                      LOG_WAIT = 0,
0161  *                      LOG_IMMEDIATELY = 1
0162  *
0163  * %AR_TKN_DAI_INDEX:               dai index
0164  *
0165  */
0166 
0167 /* DAI Tokens */
0168 #define AR_TKN_DAI_INDEX            1
0169 /* SUB GRAPH Tokens */
0170 #define AR_TKN_U32_SUB_GRAPH_INSTANCE_ID    2
0171 #define AR_TKN_U32_SUB_GRAPH_PERF_MODE      3
0172 #define AR_TKN_U32_SUB_GRAPH_DIRECTION      4
0173 #define AR_TKN_U32_SUB_GRAPH_SCENARIO_ID    5
0174 
0175 /* Container Tokens */
0176 #define AR_TKN_U32_CONTAINER_INSTANCE_ID    100
0177 #define AR_TKN_U32_CONTAINER_CAPABILITY_ID  101
0178 #define AR_TKN_U32_CONTAINER_STACK_SIZE     102
0179 #define AR_TKN_U32_CONTAINER_GRAPH_POS      103
0180 #define AR_TKN_U32_CONTAINER_PROC_DOMAIN    104
0181 
0182 /* Module Tokens */
0183 #define AR_TKN_U32_MODULE_ID            200
0184 #define AR_TKN_U32_MODULE_INSTANCE_ID       201
0185 #define AR_TKN_U32_MODULE_MAX_IP_PORTS      202
0186 #define AR_TKN_U32_MODULE_MAX_OP_PORTS      203
0187 #define AR_TKN_U32_MODULE_IN_PORTS      204
0188 #define AR_TKN_U32_MODULE_OUT_PORTS     205
0189 #define AR_TKN_U32_MODULE_SRC_OP_PORT_ID    206
0190 #define AR_TKN_U32_MODULE_DST_IN_PORT_ID    207
0191 #define AR_TKN_U32_MODULE_SRC_INSTANCE_ID   208
0192 #define AR_TKN_U32_MODULE_DST_INSTANCE_ID   209
0193 
0194 
0195 #define AR_TKN_U32_MODULE_HW_IF_IDX     250
0196 #define AR_TKN_U32_MODULE_HW_IF_TYPE        251
0197 #define AR_TKN_U32_MODULE_FMT_INTERLEAVE    252
0198 #define AR_TKN_U32_MODULE_FMT_DATA      253
0199 #define AR_TKN_U32_MODULE_FMT_SAMPLE_RATE   254
0200 #define AR_TKN_U32_MODULE_FMT_BIT_DEPTH     255
0201 #define AR_TKN_U32_MODULE_SD_LINE_IDX       256
0202 #define AR_TKN_U32_MODULE_WS_SRC        257
0203 #define AR_TKN_U32_MODULE_FRAME_SZ_FACTOR   258
0204 #define AR_TKN_U32_MODULE_LOG_CODE      259
0205 #define AR_TKN_U32_MODULE_LOG_TAP_POINT_ID  260
0206 #define AR_TKN_U32_MODULE_LOG_MODE      261
0207 
0208 #endif /* __SND_AR_TOKENS_H__ */