1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __DT_BINDINGS_Q6_AUDIO_PORTS_H__
3 #define __DT_BINDINGS_Q6_AUDIO_PORTS_H__
4 
5 /* LPASS Audio virtual ports IDs */
6 #define HDMI_RX		1
7 #define SLIMBUS_0_RX    2
8 #define SLIMBUS_0_TX    3
9 #define SLIMBUS_1_RX    4
10 #define SLIMBUS_1_TX    5
11 #define SLIMBUS_2_RX    6
12 #define SLIMBUS_2_TX    7
13 #define SLIMBUS_3_RX    8
14 #define SLIMBUS_3_TX    9
15 #define SLIMBUS_4_RX    10
16 #define SLIMBUS_4_TX    11
17 #define SLIMBUS_5_RX    12
18 #define SLIMBUS_5_TX    13
19 #define SLIMBUS_6_RX    14
20 #define SLIMBUS_6_TX    15
21 #define PRIMARY_MI2S_RX		16
22 #define PRIMARY_MI2S_TX		17
23 #define SECONDARY_MI2S_RX	18
24 #define SECONDARY_MI2S_TX	19
25 #define TERTIARY_MI2S_RX	20
26 #define TERTIARY_MI2S_TX	21
27 #define QUATERNARY_MI2S_RX	22
28 #define QUATERNARY_MI2S_TX	23
29 #define PRIMARY_TDM_RX_0	24
30 #define PRIMARY_TDM_TX_0	25
31 #define PRIMARY_TDM_RX_1	26
32 #define PRIMARY_TDM_TX_1	27
33 #define PRIMARY_TDM_RX_2	28
34 #define PRIMARY_TDM_TX_2	29
35 #define PRIMARY_TDM_RX_3	30
36 #define PRIMARY_TDM_TX_3	31
37 #define PRIMARY_TDM_RX_4	32
38 #define PRIMARY_TDM_TX_4	33
39 #define PRIMARY_TDM_RX_5	34
40 #define PRIMARY_TDM_TX_5	35
41 #define PRIMARY_TDM_RX_6	36
42 #define PRIMARY_TDM_TX_6	37
43 #define PRIMARY_TDM_RX_7	38
44 #define PRIMARY_TDM_TX_7	39
45 #define SECONDARY_TDM_RX_0	40
46 #define SECONDARY_TDM_TX_0	41
47 #define SECONDARY_TDM_RX_1	42
48 #define SECONDARY_TDM_TX_1	43
49 #define SECONDARY_TDM_RX_2	44
50 #define SECONDARY_TDM_TX_2	45
51 #define SECONDARY_TDM_RX_3	46
52 #define SECONDARY_TDM_TX_3	47
53 #define SECONDARY_TDM_RX_4	48
54 #define SECONDARY_TDM_TX_4	49
55 #define SECONDARY_TDM_RX_5	50
56 #define SECONDARY_TDM_TX_5	51
57 #define SECONDARY_TDM_RX_6	52
58 #define SECONDARY_TDM_TX_6	53
59 #define SECONDARY_TDM_RX_7	54
60 #define SECONDARY_TDM_TX_7	55
61 #define TERTIARY_TDM_RX_0	56
62 #define TERTIARY_TDM_TX_0	57
63 #define TERTIARY_TDM_RX_1	58
64 #define TERTIARY_TDM_TX_1	59
65 #define TERTIARY_TDM_RX_2	60
66 #define TERTIARY_TDM_TX_2	61
67 #define TERTIARY_TDM_RX_3	62
68 #define TERTIARY_TDM_TX_3	63
69 #define TERTIARY_TDM_RX_4	64
70 #define TERTIARY_TDM_TX_4	65
71 #define TERTIARY_TDM_RX_5	66
72 #define TERTIARY_TDM_TX_5	67
73 #define TERTIARY_TDM_RX_6	68
74 #define TERTIARY_TDM_TX_6	69
75 #define TERTIARY_TDM_RX_7	70
76 #define TERTIARY_TDM_TX_7	71
77 #define QUATERNARY_TDM_RX_0	72
78 #define QUATERNARY_TDM_TX_0	73
79 #define QUATERNARY_TDM_RX_1	74
80 #define QUATERNARY_TDM_TX_1	75
81 #define QUATERNARY_TDM_RX_2	76
82 #define QUATERNARY_TDM_TX_2	77
83 #define QUATERNARY_TDM_RX_3	78
84 #define QUATERNARY_TDM_TX_3	79
85 #define QUATERNARY_TDM_RX_4	80
86 #define QUATERNARY_TDM_TX_4	81
87 #define QUATERNARY_TDM_RX_5	82
88 #define QUATERNARY_TDM_TX_5	83
89 #define QUATERNARY_TDM_RX_6	84
90 #define QUATERNARY_TDM_TX_6	85
91 #define QUATERNARY_TDM_RX_7	86
92 #define QUATERNARY_TDM_TX_7	87
93 #define QUINARY_TDM_RX_0	88
94 #define QUINARY_TDM_TX_0	89
95 #define QUINARY_TDM_RX_1	90
96 #define QUINARY_TDM_TX_1	91
97 #define QUINARY_TDM_RX_2	92
98 #define QUINARY_TDM_TX_2	93
99 #define QUINARY_TDM_RX_3	94
100 #define QUINARY_TDM_TX_3	95
101 #define QUINARY_TDM_RX_4	96
102 #define QUINARY_TDM_TX_4	97
103 #define QUINARY_TDM_RX_5	98
104 #define QUINARY_TDM_TX_5	99
105 #define QUINARY_TDM_RX_6	100
106 #define QUINARY_TDM_TX_6	101
107 #define QUINARY_TDM_RX_7	102
108 #define QUINARY_TDM_TX_7	103
109 #define DISPLAY_PORT_RX		104
110 #define WSA_CODEC_DMA_RX_0	105
111 #define WSA_CODEC_DMA_TX_0	106
112 #define WSA_CODEC_DMA_RX_1	107
113 #define WSA_CODEC_DMA_TX_1	108
114 #define WSA_CODEC_DMA_TX_2	109
115 #define VA_CODEC_DMA_TX_0	110
116 #define VA_CODEC_DMA_TX_1	111
117 #define VA_CODEC_DMA_TX_2	112
118 #define RX_CODEC_DMA_RX_0	113
119 #define TX_CODEC_DMA_TX_0	114
120 #define RX_CODEC_DMA_RX_1	115
121 #define TX_CODEC_DMA_TX_1	116
122 #define RX_CODEC_DMA_RX_2	117
123 #define TX_CODEC_DMA_TX_2	118
124 #define RX_CODEC_DMA_RX_3	119
125 #define TX_CODEC_DMA_TX_3	120
126 #define RX_CODEC_DMA_RX_4	121
127 #define TX_CODEC_DMA_TX_4	122
128 #define RX_CODEC_DMA_RX_5	123
129 #define TX_CODEC_DMA_TX_5	124
130 #define RX_CODEC_DMA_RX_6	125
131 #define RX_CODEC_DMA_RX_7	126
132 #define QUINARY_MI2S_RX		127
133 #define QUINARY_MI2S_TX		128
134 #define DISPLAY_PORT_RX_0	DISPLAY_PORT_RX
135 #define DISPLAY_PORT_RX_1	129
136 #define DISPLAY_PORT_RX_2	130
137 #define DISPLAY_PORT_RX_3	131
138 #define DISPLAY_PORT_RX_4	132
139 #define DISPLAY_PORT_RX_5	133
140 #define DISPLAY_PORT_RX_6	134
141 #define DISPLAY_PORT_RX_7	135
142 
143 #define LPASS_CLK_ID_PRI_MI2S_IBIT	1
144 #define LPASS_CLK_ID_PRI_MI2S_EBIT	2
145 #define LPASS_CLK_ID_SEC_MI2S_IBIT	3
146 #define LPASS_CLK_ID_SEC_MI2S_EBIT	4
147 #define LPASS_CLK_ID_TER_MI2S_IBIT	5
148 #define LPASS_CLK_ID_TER_MI2S_EBIT	6
149 #define LPASS_CLK_ID_QUAD_MI2S_IBIT	7
150 #define LPASS_CLK_ID_QUAD_MI2S_EBIT	8
151 #define LPASS_CLK_ID_SPEAKER_I2S_IBIT	9
152 #define LPASS_CLK_ID_SPEAKER_I2S_EBIT	10
153 #define LPASS_CLK_ID_SPEAKER_I2S_OSR	11
154 #define LPASS_CLK_ID_QUI_MI2S_IBIT	12
155 #define LPASS_CLK_ID_QUI_MI2S_EBIT	13
156 #define LPASS_CLK_ID_SEN_MI2S_IBIT	14
157 #define LPASS_CLK_ID_SEN_MI2S_EBIT	15
158 #define LPASS_CLK_ID_INT0_MI2S_IBIT	16
159 #define LPASS_CLK_ID_INT1_MI2S_IBIT	17
160 #define LPASS_CLK_ID_INT2_MI2S_IBIT	18
161 #define LPASS_CLK_ID_INT3_MI2S_IBIT	19
162 #define LPASS_CLK_ID_INT4_MI2S_IBIT	20
163 #define LPASS_CLK_ID_INT5_MI2S_IBIT	21
164 #define LPASS_CLK_ID_INT6_MI2S_IBIT	22
165 #define LPASS_CLK_ID_QUI_MI2S_OSR	23
166 #define LPASS_CLK_ID_PRI_PCM_IBIT	24
167 #define LPASS_CLK_ID_PRI_PCM_EBIT	25
168 #define LPASS_CLK_ID_SEC_PCM_IBIT	26
169 #define LPASS_CLK_ID_SEC_PCM_EBIT	27
170 #define LPASS_CLK_ID_TER_PCM_IBIT	28
171 #define LPASS_CLK_ID_TER_PCM_EBIT	29
172 #define LPASS_CLK_ID_QUAD_PCM_IBIT	30
173 #define LPASS_CLK_ID_QUAD_PCM_EBIT	31
174 #define LPASS_CLK_ID_QUIN_PCM_IBIT	32
175 #define LPASS_CLK_ID_QUIN_PCM_EBIT	33
176 #define LPASS_CLK_ID_QUI_PCM_OSR	34
177 #define LPASS_CLK_ID_PRI_TDM_IBIT	35
178 #define LPASS_CLK_ID_PRI_TDM_EBIT	36
179 #define LPASS_CLK_ID_SEC_TDM_IBIT	37
180 #define LPASS_CLK_ID_SEC_TDM_EBIT	38
181 #define LPASS_CLK_ID_TER_TDM_IBIT	39
182 #define LPASS_CLK_ID_TER_TDM_EBIT	40
183 #define LPASS_CLK_ID_QUAD_TDM_IBIT	41
184 #define LPASS_CLK_ID_QUAD_TDM_EBIT	42
185 #define LPASS_CLK_ID_QUIN_TDM_IBIT	43
186 #define LPASS_CLK_ID_QUIN_TDM_EBIT	44
187 #define LPASS_CLK_ID_QUIN_TDM_OSR	45
188 #define LPASS_CLK_ID_MCLK_1		46
189 #define LPASS_CLK_ID_MCLK_2		47
190 #define LPASS_CLK_ID_MCLK_3		48
191 #define LPASS_CLK_ID_MCLK_4		49
192 #define LPASS_CLK_ID_INTERNAL_DIGITAL_CODEC_CORE	50
193 #define LPASS_CLK_ID_INT_MCLK_0		51
194 #define LPASS_CLK_ID_INT_MCLK_1		52
195 #define LPASS_CLK_ID_MCLK_5		53
196 #define LPASS_CLK_ID_WSA_CORE_MCLK	54
197 #define LPASS_CLK_ID_WSA_CORE_NPL_MCLK	55
198 #define LPASS_CLK_ID_VA_CORE_MCLK	56
199 #define LPASS_CLK_ID_TX_CORE_MCLK	57
200 #define LPASS_CLK_ID_TX_CORE_NPL_MCLK	58
201 #define LPASS_CLK_ID_RX_CORE_MCLK	59
202 #define LPASS_CLK_ID_RX_CORE_NPL_MCLK	60
203 #define LPASS_CLK_ID_VA_CORE_2X_MCLK	61
204 /* Clock ID for MCLK for WSA2 core */
205 #define LPASS_CLK_ID_WSA2_CORE_MCLK	62
206 /* Clock ID for NPL MCLK for WSA2 core */
207 #define LPASS_CLK_ID_WSA2_CORE_2X_MCLK	63
208 /* Clock ID for RX Core TX MCLK */
209 #define LPASS_CLK_ID_RX_CORE_TX_MCLK	64
210 /* Clock ID for RX CORE TX 2X MCLK */
211 #define LPASS_CLK_ID_RX_CORE_TX_2X_MCLK	65
212 /* Clock ID for WSA core TX MCLK */
213 #define LPASS_CLK_ID_WSA_CORE_TX_MCLK	66
214 /* Clock ID for WSA core TX 2X MCLK */
215 #define LPASS_CLK_ID_WSA_CORE_TX_2X_MCLK	67
216 /* Clock ID for WSA2 core TX MCLK */
217 #define LPASS_CLK_ID_WSA2_CORE_TX_MCLK	68
218 /* Clock ID for WSA2 core TX 2X MCLK */
219 #define LPASS_CLK_ID_WSA2_CORE_TX_2X_MCLK	69
220 /* Clock ID for RX CORE MCLK2 2X  MCLK */
221 #define LPASS_CLK_ID_RX_CORE_MCLK2_2X_MCLK	70
222 
223 #define LPASS_HW_AVTIMER_VOTE		101
224 #define LPASS_HW_MACRO_VOTE		102
225 #define LPASS_HW_DCODEC_VOTE		103
226 
227 #define Q6AFE_MAX_CLK_ID			104
228 
229 #define LPASS_CLK_ATTRIBUTE_INVALID		0x0
230 #define LPASS_CLK_ATTRIBUTE_COUPLE_NO		0x1
231 #define LPASS_CLK_ATTRIBUTE_COUPLE_DIVIDEND	0x2
232 #define LPASS_CLK_ATTRIBUTE_COUPLE_DIVISOR	0x3
233 
234 #endif /* __DT_BINDINGS_Q6_AUDIO_PORTS_H__ */
235