xref: /linux/sound/soc/mediatek/mt8196/mt8196-interconnection.h (revision 637315cb400eed1dbe721954fea437a61a2d65b2)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Mediatek MT8196 audio driver interconnection definition
4  *
5  *  Copyright (c) 2025 MediaTek Inc.
6  *  Author: Darren Ye <darren.ye@mediatek.com>
7  */
8 
9 #ifndef _MT8196_INTERCONNECTION_H_
10 #define _MT8196_INTERCONNECTION_H_
11 
12 /* in port define */
13 
14 #define I_CONNSYS_I2S_CH1 0
15 #define I_CONNSYS_I2S_CH2 1
16 #define I_GAIN0_OUT_CH1 6
17 #define I_GAIN0_OUT_CH2 7
18 #define I_GAIN1_OUT_CH1 8
19 #define I_GAIN1_OUT_CH2 9
20 #define I_GAIN2_OUT_CH1 10
21 #define I_GAIN2_OUT_CH2 11
22 #define I_GAIN3_OUT_CH1 12
23 #define I_GAIN3_OUT_CH2 13
24 #define I_STF_CH1 14
25 #define I_ADDA_UL_CH1 16
26 #define I_ADDA_UL_CH2 17
27 #define I_ADDA_UL_CH3 18
28 #define I_ADDA_UL_CH4 19
29 #define I_UL_PROX_CH1 20
30 #define I_UL_PROX_CH2 21
31 #define I_ADDA_UL_CH5 24
32 #define I_ADDA_UL_CH6 25
33 #define I_DMIC0_CH1 28
34 #define I_DMIC0_CH2 29
35 #define I_DMIC1_CH1 30
36 #define I_DMIC1_CH2 31
37 
38 /* in port define >= 32 */
39 #define I_32_OFFSET 32
40 #define I_DL0_CH1 (32 - I_32_OFFSET)
41 #define I_DL0_CH2 (33 - I_32_OFFSET)
42 #define I_DL1_CH1 (34 - I_32_OFFSET)
43 #define I_DL1_CH2 (35 - I_32_OFFSET)
44 #define I_DL2_CH1 (36 - I_32_OFFSET)
45 #define I_DL2_CH2 (37 - I_32_OFFSET)
46 #define I_DL3_CH1 (38 - I_32_OFFSET)
47 #define I_DL3_CH2 (39 - I_32_OFFSET)
48 #define I_DL4_CH1 (40 - I_32_OFFSET)
49 #define I_DL4_CH2 (41 - I_32_OFFSET)
50 #define I_DL5_CH1 (42 - I_32_OFFSET)
51 #define I_DL5_CH2 (43 - I_32_OFFSET)
52 #define I_DL6_CH1 (44 - I_32_OFFSET)
53 #define I_DL6_CH2 (45 - I_32_OFFSET)
54 #define I_DL7_CH1 (46 - I_32_OFFSET)
55 #define I_DL7_CH2 (47 - I_32_OFFSET)
56 #define I_DL8_CH1 (48 - I_32_OFFSET)
57 #define I_DL8_CH2 (49 - I_32_OFFSET)
58 #define I_DL_4CH_CH1 (50 - I_32_OFFSET)
59 #define I_DL_4CH_CH2 (51 - I_32_OFFSET)
60 #define I_DL_4CH_CH3 (52 - I_32_OFFSET)
61 #define I_DL_4CH_CH4 (53 - I_32_OFFSET)
62 #define I_DL_24CH_CH1 (54 - I_32_OFFSET)
63 #define I_DL_24CH_CH2 (55 - I_32_OFFSET)
64 #define I_DL_24CH_CH3 (56 - I_32_OFFSET)
65 #define I_DL_24CH_CH4 (57 - I_32_OFFSET)
66 #define I_DL_24CH_CH5 (58 - I_32_OFFSET)
67 #define I_DL_24CH_CH6 (59 - I_32_OFFSET)
68 #define I_DL_24CH_CH7 (60 - I_32_OFFSET)
69 #define I_DL_24CH_CH8 (61 - I_32_OFFSET)
70 
71 /* in port define >= 64 */
72 #define I_64_OFFSET 64
73 #define I_DL23_CH1 (78 - I_64_OFFSET)
74 #define I_DL23_CH2 (79 - I_64_OFFSET)
75 #define I_DL24_CH1 (80 - I_64_OFFSET)
76 #define I_DL24_CH2 (81 - I_64_OFFSET)
77 #define I_DL25_CH1 (82 - I_64_OFFSET)
78 #define I_DL25_CH2 (83 - I_64_OFFSET)
79 #define I_DL26_CH1 (84 - I_64_OFFSET)
80 #define I_DL26_CH2 (85 - I_64_OFFSET)
81 
82 /* in port define >= 128 */
83 #define I_128_OFFSET 128
84 #define I_PCM_0_CAP_CH1 (130 - I_128_OFFSET)
85 #define I_PCM_0_CAP_CH2 (131 - I_128_OFFSET)
86 #define I_PCM_1_CAP_CH1 (132 - I_128_OFFSET)
87 #define I_PCM_1_CAP_CH2 (133 - I_128_OFFSET)
88 #define I_I2SIN0_CH1 (134 - I_128_OFFSET)
89 #define I_I2SIN0_CH2 (135 - I_128_OFFSET)
90 #define I_I2SIN1_CH1 (136 - I_128_OFFSET)
91 #define I_I2SIN1_CH2 (137 - I_128_OFFSET)
92 #define I_I2SIN2_CH1 (138 - I_128_OFFSET)
93 #define I_I2SIN2_CH2 (139 - I_128_OFFSET)
94 #define I_I2SIN3_CH1 (140 - I_128_OFFSET)
95 #define I_I2SIN3_CH2 (141 - I_128_OFFSET)
96 #define I_I2SIN4_CH1 (142 - I_128_OFFSET)
97 #define I_I2SIN4_CH2 (143 - I_128_OFFSET)
98 #define I_I2SIN4_CH3 (144 - I_128_OFFSET)
99 #define I_I2SIN4_CH4 (145 - I_128_OFFSET)
100 #define I_I2SIN4_CH5 (146 - I_128_OFFSET)
101 #define I_I2SIN4_CH6 (147 - I_128_OFFSET)
102 #define I_I2SIN4_CH7 (148 - I_128_OFFSET)
103 #define I_I2SIN4_CH8 (149 - I_128_OFFSET)
104 
105 /* in port define >= 160 */
106 #define I_160_OFFSET 160
107 #define I_I2SIN6_CH1 (166 - I_160_OFFSET)
108 #define I_I2SIN6_CH2 (167 - I_160_OFFSET)
109 
110 /* in port define >= 192 */
111 #define I_192_OFFSET 192
112 #define I_SRC_0_OUT_CH1 (198 - I_192_OFFSET)
113 #define I_SRC_0_OUT_CH2 (199 - I_192_OFFSET)
114 #define I_SRC_1_OUT_CH1 (200 - I_192_OFFSET)
115 #define I_SRC_1_OUT_CH2 (201 - I_192_OFFSET)
116 #define I_SRC_2_OUT_CH1 (202 - I_192_OFFSET)
117 #define I_SRC_2_OUT_CH2 (203 - I_192_OFFSET)
118 #define I_SRC_3_OUT_CH1 (204 - I_192_OFFSET)
119 #define I_SRC_3_OUT_CH2 (205 - I_192_OFFSET)
120 
121 #endif
122