blob: b0fee57f01621629ec6f3818b01a6350d117e61f [file] [log] [blame]
Mayank Chopra840f71c2018-07-17 15:31:00 -07001/*
2 * Copyright (c) 2018, The Linux Foundation. All rights reserved.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 and
6 * only version 2 as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 */
13
14/* picked up from base file msm8953-audio.dtsi, enables internal codec config */
15
16&soc {
17 &i2c_2 {
18 status = "okay";
19 wsa881x_i2c_f: wsa881x-i2c-codec@f {
20 status = "okay";
21
22 compatible = "qcom,wsa881x-i2c-codec";
23 reg = <0x0f>;
24 qcom,msm-gpios = "wsa_clk",
25 "wsa_reset",
26 "wsa_vi";
27 qcom,pinctrl-names = "all_off",
28 "wsa_clk",
29 "wsa_active",
30 "wsa_clk_active",
31 "wsa_vi",
32 "wsa_clk_vi",
33 "wsa_active_vi",
34 "wsa_all";
35 pinctrl-names = "all_off",
36 "wsa_clk",
37 "wsa_active",
38 "wsa_clk_active",
39 "wsa_vi",
40 "wsa_clk_vi",
41 "wsa_active_vi",
42 "wsa_all";
43 pinctrl-0 = <&wsa_clk_off &wsa_reset_off &wsa_vi_off>;
44 pinctrl-1 = <&wsa_clk_on &wsa_reset_off &wsa_vi_off>;
45 pinctrl-2 = <&wsa_clk_off &wsa_reset_on &wsa_vi_off>;
46 pinctrl-3 = <&wsa_clk_on &wsa_reset_on &wsa_vi_off>;
47 pinctrl-4 = <&wsa_clk_off &wsa_reset_off &wsa_vi_on>;
48 pinctrl-5 = <&wsa_clk_on &wsa_reset_off &wsa_vi_on>;
49 pinctrl-6 = <&wsa_clk_off &wsa_reset_on &wsa_vi_on>;
50 pinctrl-7 = <&wsa_clk_on &wsa_reset_on &wsa_vi_on>;
51 };
52
53 wsa881x_i2c_45: wsa881x-i2c-codec@45 {
54 status = "okay";
55
56 compatible = "qcom,wsa881x-i2c-codec";
57 reg = <0x45>;
58 qcom,msm-gpios = "wsa_clk",
59 "wsa_reset",
60 "wsa_vi";
61 qcom,pinctrl-names = "all_off",
62 "wsa_clk",
63 "wsa_active",
64 "wsa_clk_active",
65 "wsa_vi",
66 "wsa_clk_vi",
67 "wsa_active_vi",
68 "wsa_all";
69 pinctrl-names = "all_off",
70 "wsa_clk",
71 "wsa_active",
72 "wsa_clk_active",
73 "wsa_vi",
74 "wsa_clk_vi",
75 "wsa_active_vi",
76 "wsa_all";
77 pinctrl-0 = <&wsa_clk_off &wsa_reset_off &wsa_vi_off>;
78 pinctrl-1 = <&wsa_clk_on &wsa_reset_off &wsa_vi_off>;
79 pinctrl-2 = <&wsa_clk_off &wsa_reset_on &wsa_vi_off>;
80 pinctrl-3 = <&wsa_clk_on &wsa_reset_on &wsa_vi_off>;
81 pinctrl-4 = <&wsa_clk_off &wsa_reset_off &wsa_vi_on>;
82 pinctrl-5 = <&wsa_clk_on &wsa_reset_off &wsa_vi_on>;
83 pinctrl-6 = <&wsa_clk_off &wsa_reset_on &wsa_vi_on>;
84 pinctrl-7 = <&wsa_clk_on &wsa_reset_on &wsa_vi_on>;
85 };
86 };
87
88 pcm0: qcom,msm-pcm {
89 compatible = "qcom,msm-pcm-dsp";
90 qcom,msm-pcm-dsp-id = <0>;
91 };
92
93 routing: qcom,msm-pcm-routing {
94 compatible = "qcom,msm-pcm-routing";
95 };
96
97 pcm2: qcom,msm-ultra-low-latency {
98 compatible = "qcom,msm-pcm-dsp";
99 qcom,msm-pcm-dsp-id = <2>;
100 qcom,msm-pcm-low-latency;
101 qcom,latency-level = "ultra";
102 };
103
104 pcm1: qcom,msm-pcm-low-latency {
105 compatible = "qcom,msm-pcm-dsp";
106 qcom,msm-pcm-dsp-id = <1>;
107 qcom,msm-pcm-low-latency;
108 qcom,latency-level = "regular";
109 };
110
111 pcm2: qcom,msm-ultra-low-latency {
112 compatible = "qcom,msm-pcm-dsp";
113 qcom,msm-pcm-dsp-id = <2>;
114 qcom,msm-pcm-low-latency;
115 qcom,latency-level = "ultra";
116 };
117
118 cpe: qcom,msm-cpe-lsm {
119 compatible = "qcom,msm-cpe-lsm";
120 };
121
122 lpa: qcom,msm-pcm-lpa {
123 compatible = "qcom,msm-pcm-lpa";
124 };
125
126 compress: qcom,msm-compress-dsp {
127 compatible = "qcom,msm-compress-dsp";
128 };
129
130 voip: qcom,msm-voip-dsp {
131 compatible = "qcom,msm-voip-dsp";
132 };
133
134 voice: qcom,msm-pcm-voice {
135 compatible = "qcom,msm-pcm-voice";
136 qcom,destroy-cvd;
137 };
138
139 stub_codec: qcom,msm-stub-codec {
140 compatible = "qcom,msm-stub-codec";
141 };
142
143 qcom,msm-dai-fe {
144 compatible = "qcom,msm-dai-fe";
145 };
146
147 afe: qcom,msm-pcm-afe {
148 compatible = "qcom,msm-pcm-afe";
149 };
150
151 loopback: qcom,msm-pcm-loopback {
152 compatible = "qcom,msm-pcm-loopback";
153 };
154
155 qcom,msm-dai-mi2s {
156 compatible = "qcom,msm-dai-mi2s";
157 dai_mi2s0: qcom,msm-dai-q6-mi2s-prim {
158 compatible = "qcom,msm-dai-q6-mi2s";
159 qcom,msm-dai-q6-mi2s-dev-id = <0>;
160 qcom,msm-mi2s-rx-lines = <3>;
161 qcom,msm-mi2s-tx-lines = <0>;
162 };
163
164 dai_mi2s1: qcom,msm-dai-q6-mi2s-sec {
165 compatible = "qcom,msm-dai-q6-mi2s";
166 qcom,msm-dai-q6-mi2s-dev-id = <1>;
167 qcom,msm-mi2s-rx-lines = <1>;
168 qcom,msm-mi2s-tx-lines = <0>;
169 };
170
171 dai_mi2s3: qcom,msm-dai-q6-mi2s-quat {
172 compatible = "qcom,msm-dai-q6-mi2s";
173 qcom,msm-dai-q6-mi2s-dev-id = <3>;
174 qcom,msm-mi2s-rx-lines = <1>;
175 qcom,msm-mi2s-tx-lines = <2>;
176 };
177
178 dai_mi2s2: qcom,msm-dai-q6-mi2s-tert {
179 compatible = "qcom,msm-dai-q6-mi2s";
180 qcom,msm-dai-q6-mi2s-dev-id = <2>;
181 qcom,msm-mi2s-rx-lines = <0>;
182 qcom,msm-mi2s-tx-lines = <3>;
183 };
184
185 dai_mi2s5: qcom,msm-dai-q6-mi2s-quin {
186 compatible = "qcom,msm-dai-q6-mi2s";
187 qcom,msm-dai-q6-mi2s-dev-id = <5>;
188 qcom,msm-mi2s-rx-lines = <1>;
189 qcom,msm-mi2s-tx-lines = <2>;
190 };
191
192 dai_mi2s6: qcom,msm-dai-q6-mi2s-senary {
193 compatible = "qcom,msm-dai-q6-mi2s";
194 qcom,msm-dai-q6-mi2s-dev-id = <6>;
195 qcom,msm-mi2s-rx-lines = <0>;
196 qcom,msm-mi2s-tx-lines = <3>;
197 };
198 };
199
200 lsm: qcom,msm-lsm-client {
201 compatible = "qcom,msm-lsm-client";
202 };
203
204 qcom,msm-dai-q6 {
205 compatible = "qcom,msm-dai-q6";
206 sb_0_rx: qcom,msm-dai-q6-sb-0-rx {
207 compatible = "qcom,msm-dai-q6-dev";
208 qcom,msm-dai-q6-dev-id = <16384>;
209 };
210
211 sb_0_tx: qcom,msm-dai-q6-sb-0-tx {
212 compatible = "qcom,msm-dai-q6-dev";
213 qcom,msm-dai-q6-dev-id = <16385>;
214 };
215
216 sb_1_rx: qcom,msm-dai-q6-sb-1-rx {
217 compatible = "qcom,msm-dai-q6-dev";
218 qcom,msm-dai-q6-dev-id = <16386>;
219 };
220
221 sb_1_tx: qcom,msm-dai-q6-sb-1-tx {
222 compatible = "qcom,msm-dai-q6-dev";
223 qcom,msm-dai-q6-dev-id = <16387>;
224 };
225
226 sb_2_rx: qcom,msm-dai-q6-sb-2-rx {
227 compatible = "qcom,msm-dai-q6-dev";
228 qcom,msm-dai-q6-dev-id = <16388>;
229 };
230
231 sb_2_tx: qcom,msm-dai-q6-sb-2-tx {
232 compatible = "qcom,msm-dai-q6-dev";
233 qcom,msm-dai-q6-dev-id = <16389>;
234 };
235
236
237 sb_3_rx: qcom,msm-dai-q6-sb-3-rx {
238 compatible = "qcom,msm-dai-q6-dev";
239 qcom,msm-dai-q6-dev-id = <16390>;
240 };
241
242 sb_3_tx: qcom,msm-dai-q6-sb-3-tx {
243 compatible = "qcom,msm-dai-q6-dev";
244 qcom,msm-dai-q6-dev-id = <16391>;
245 };
246
247 sb_4_rx: qcom,msm-dai-q6-sb-4-rx {
248 compatible = "qcom,msm-dai-q6-dev";
249 qcom,msm-dai-q6-dev-id = <16392>;
250 };
251
252 sb_4_tx: qcom,msm-dai-q6-sb-4-tx {
253 compatible = "qcom,msm-dai-q6-dev";
254 qcom,msm-dai-q6-dev-id = <16393>;
255 };
256
257 sb_5_tx: qcom,msm-dai-q6-sb-5-tx {
258 compatible = "qcom,msm-dai-q6-dev";
259 qcom,msm-dai-q6-dev-id = <16395>;
260 };
261
262 sb_5_rx: qcom,msm-dai-q6-sb-5-rx {
263 compatible = "qcom,msm-dai-q6-dev";
264 qcom,msm-dai-q6-dev-id = <16394>;
265 };
266
267 bt_sco_rx: qcom,msm-dai-q6-bt-sco-rx {
268 compatible = "qcom,msm-dai-q6-dev";
269 qcom,msm-dai-q6-dev-id = <12288>;
270 };
271
272 bt_sco_tx: qcom,msm-dai-q6-bt-sco-tx {
273 compatible = "qcom,msm-dai-q6-dev";
274 qcom,msm-dai-q6-dev-id = <12289>;
275 };
276
277 int_fm_rx: qcom,msm-dai-q6-int-fm-rx {
278 compatible = "qcom,msm-dai-q6-dev";
279 qcom,msm-dai-q6-dev-id = <12292>;
280 };
281
282 int_fm_tx: qcom,msm-dai-q6-int-fm-tx {
283 compatible = "qcom,msm-dai-q6-dev";
284 qcom,msm-dai-q6-dev-id = <12293>;
285 };
286
287 afe_pcm_rx: qcom,msm-dai-q6-be-afe-pcm-rx {
288 compatible = "qcom,msm-dai-q6-dev";
289 qcom,msm-dai-q6-dev-id = <224>;
290 };
291
292 afe_pcm_tx: qcom,msm-dai-q6-be-afe-pcm-tx {
293 compatible = "qcom,msm-dai-q6-dev";
294 qcom,msm-dai-q6-dev-id = <225>;
295 };
296
297 afe_proxy_rx: qcom,msm-dai-q6-afe-proxy-rx {
298 compatible = "qcom,msm-dai-q6-dev";
299 qcom,msm-dai-q6-dev-id = <241>;
300 };
301
302 afe_proxy_tx: qcom,msm-dai-q6-afe-proxy-tx {
303 compatible = "qcom,msm-dai-q6-dev";
304 qcom,msm-dai-q6-dev-id = <240>;
305 };
306
307 incall_record_rx: qcom,msm-dai-q6-incall-record-rx {
308 compatible = "qcom,msm-dai-q6-dev";
309 qcom,msm-dai-q6-dev-id = <32771>;
310 };
311
312 incall_record_tx: qcom,msm-dai-q6-incall-record-tx {
313 compatible = "qcom,msm-dai-q6-dev";
314 qcom,msm-dai-q6-dev-id = <32772>;
315 };
316
317 incall_music_rx: qcom,msm-dai-q6-incall-music-rx {
318 compatible = "qcom,msm-dai-q6-dev";
319 qcom,msm-dai-q6-dev-id = <32773>;
320 };
321
322 incall_music_2_rx: qcom,msm-dai-q6-incall-music-2-rx {
323 compatible = "qcom,msm-dai-q6-dev";
324 qcom,msm-dai-q6-dev-id = <32770>;
325 };
326
327 sb_6_rx: qcom,msm-dai-q6-sb-6-rx {
328 compatible = "qcom,msm-dai-q6-dev";
329 qcom,msm-dai-q6-dev-id = <16396>;
330 };
331 };
332
333 hostless: qcom,msm-pcm-hostless {
334 compatible = "qcom,msm-pcm-hostless";
335 };
336
337 dai_pri_auxpcm: qcom,msm-pri-auxpcm {
338 compatible = "qcom,msm-auxpcm-dev";
339 qcom,msm-cpudai-auxpcm-mode = <0>, <0>;
340 qcom,msm-cpudai-auxpcm-sync = <1>, <1>;
341 qcom,msm-cpudai-auxpcm-frame = <5>, <4>;
342 qcom,msm-cpudai-auxpcm-quant = <2>, <2>;
343 qcom,msm-cpudai-auxpcm-num-slots = <1>, <1>;
344 qcom,msm-cpudai-auxpcm-slot-mapping = <1>, <1>;
345 qcom,msm-cpudai-auxpcm-data = <0>, <0>;
346 qcom,msm-cpudai-auxpcm-pcm-clk-rate = <2048000>, <2048000>;
347 qcom,msm-auxpcm-interface = "primary";
348 };
349
350 hdmi_dba: qcom,msm-hdmi-dba-codec-rx {
351 compatible = "qcom,msm-hdmi-dba-codec-rx";
352 qcom,dba-bridge-chip = "adv7533";
353 };
354
355 qcom,msm-audio-ion {
356 compatible = "qcom,msm-audio-ion";
357 qcom,smmu-version = <1>;
358 qcom,smmu-enabled;
359 iommus = <&adsp_io 1>;
360 };
361
362 qcom,msm-adsp-loader {
363 compatible = "qcom,adsp-loader";
364 qcom,adsp-state = <0>;
365 };
366
367 qcom,avtimer@c0a300c {
368 compatible = "qcom,avtimer";
369 reg = <0x0c0a300c 0x4>,
370 <0x0c0a3010 0x4>;
371 reg-names = "avtimer_lsb_addr", "avtimer_msb_addr";
372 qcom,clk-div = <27>;
373 };
374
375 int_codec: sound {
376 status = "okay";
377 compatible = "qcom,msm8952-audio-codec";
378 qcom,model = "msm8953-snd-card";
379 reg = <0xc051000 0x4>,
380 <0xc051004 0x4>,
381 <0xc055000 0x4>,
382 <0xc052000 0x4>;
383 reg-names = "csr_gp_io_mux_mic_ctl",
384 "csr_gp_io_mux_spkr_ctl",
385 "csr_gp_io_lpaif_pri_pcm_pri_mode_muxsel",
386 "csr_gp_io_mux_quin_ctl";
387
388 qcom,msm-ext-pa = "primary";
389 qcom,msm-mclk-freq = <9600000>;
390 qcom,msm-mbhc-hphl-swh = <0>;
391 qcom,msm-mbhc-gnd-swh = <0>;
392 qcom,msm-hs-micbias-type = "external";
393 qcom,msm-micbias1-ext-cap;
394 qcom,audio-routing =
395 "RX_BIAS", "MCLK",
396 "SPK_RX_BIAS", "MCLK",
397 "INT_LDO_H", "MCLK",
398 "MIC BIAS External", "Handset Mic",
399 "MIC BIAS External2", "Headset Mic",
400 "MIC BIAS External", "Secondary Mic",
401 "AMIC1", "MIC BIAS External",
402 "AMIC2", "MIC BIAS External2",
403 "AMIC3", "MIC BIAS External",
404 "DMIC1", "MIC BIAS Internal1",
405 "MIC BIAS Internal1", "Digital Mic1",
406 "DMIC2", "MIC BIAS Internal1",
407 "MIC BIAS Internal1", "Digital Mic2",
408 "WSA_SPK OUT", "VDD_WSA_SWITCH",
409 "SpkrMono WSA_IN", "WSA_SPK OUT";
410
411 qcom,hdmi-dba-codec-rx;
412
413 qcom,msm-gpios =
414 "pri_i2s",
415 "dmic_gpio",
416 "quin_i2s",
417 "comp_gpio";
418 qcom,pinctrl-names =
419 "all_off",
420 "pri_i2s_act",
421 "dmic_gpio_act",
422 "pri_i2s_dmic_gpio_act",
423 "quin_act",
424 "quin_pri_i2s_act",
425 "quin_dmic_gpio_act",
426 "quin_dmic_gpio_pri_i2s_act",
427 "comp_gpio_act",
428 "comp_gpio_pri_i2s_act",
429 "comp_gpio_dmic_gpio_act",
430 "comp_gpio_pri_i2s_dmic_gpio_act",
431 "comp_gpio_quin_act",
432 "comp_gpio_quin_pri_i2s_act",
433 "comp_gpio_quin_dmic_gpio_act",
434 "comp_gpio_quin_dmic_gpio_pri_i2s_act";
435
436 pinctrl-names =
437 "all_off",
438 "pri_i2s_act",
439 "dmic_gpio_act",
440 "pri_i2s_dmic_gpio_act",
441 "quin_act",
442 "quin_pri_i2s_act",
443 "quin_dmic_gpio_act",
444 "quin_dmic_gpio_pri_i2s_act",
445 "comp_gpio_act",
446 "comp_gpio_pri_i2s_act",
447 "comp_gpio_dmic_gpio_act",
448 "comp_gpio_pri_i2s_dmic_gpio_act",
449 "comp_gpio_quin_act",
450 "comp_gpio_quin_pri_i2s_act",
451 "comp_gpio_quin_dmic_gpio_act",
452 "comp_gpio_quin_dmic_gpio_pri_i2s_act";
453
454 pinctrl-0 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
455 &cdc_pdm_lines_2_sus &cdc_dmic_lines_sus
456 &cdc_dmic_clk_sus &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
457 pinctrl-1 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
458 &cdc_pdm_lines_2_act &cdc_dmic_lines_sus
459 &cdc_dmic_clk_sus &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
460 pinctrl-2 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
461 &cdc_pdm_lines_2_sus &cdc_dmic_lines_act
462 &cdc_dmic_clk_act &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
463 pinctrl-3 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
464 &cdc_pdm_lines_2_act &cdc_dmic_lines_act
465 &cdc_dmic_clk_act &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
466 pinctrl-4 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
467 &cdc_pdm_lines_2_sus &cdc_dmic_lines_sus
468 &cdc_dmic_clk_sus &pri_tlmm_lines_act &pri_tlmm_ws_act>;
469 pinctrl-5 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
470 &cdc_pdm_lines_2_act &cdc_dmic_lines_sus
471 &cdc_dmic_clk_sus &pri_tlmm_lines_act &pri_tlmm_ws_act>;
472 pinctrl-6 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
473 &cdc_pdm_lines_2_sus &cdc_dmic_lines_act
474 &cdc_dmic_clk_act &pri_tlmm_lines_act &pri_tlmm_ws_act>;
475 pinctrl-7 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
476 &cdc_pdm_lines_2_act &cdc_dmic_lines_act
477 &cdc_dmic_clk_act &pri_tlmm_lines_act &pri_tlmm_ws_act>;
478 pinctrl-8 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
479 &cdc_pdm_lines_2_sus &cdc_dmic_lines_sus
480 &cdc_dmic_clk_sus &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
481 pinctrl-9 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
482 &cdc_pdm_lines_2_act &cdc_dmic_lines_sus
483 &cdc_dmic_clk_sus &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
484 pinctrl-10 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
485 &cdc_pdm_lines_2_sus &cdc_dmic_lines_act
486 &cdc_dmic_clk_act &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
487 pinctrl-11 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
488 &cdc_pdm_lines_2_act &cdc_dmic_lines_act
489 &cdc_dmic_clk_act &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
490 pinctrl-12 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
491 &cdc_pdm_lines_2_sus &cdc_dmic_lines_sus
492 &cdc_dmic_clk_sus &pri_tlmm_lines_act &pri_tlmm_ws_act>;
493 pinctrl-13 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
494 &cdc_pdm_lines_2_act &cdc_dmic_lines_sus
495 &cdc_dmic_clk_sus &pri_tlmm_lines_act &pri_tlmm_ws_act>;
496 pinctrl-14 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
497 &cdc_pdm_lines_2_sus &cdc_dmic_lines_act
498 &cdc_dmic_clk_act &pri_tlmm_lines_act &pri_tlmm_ws_act>;
499 pinctrl-15 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
500 &cdc_pdm_lines_2_act &cdc_dmic_lines_act
501 &cdc_dmic_lines_act &pri_tlmm_lines_act
502 &pri_tlmm_ws_act>;
503
504 asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>,
505 <&loopback>, <&compress>, <&hostless>,
506 <&afe>, <&lsm>, <&routing>, <&lpa>;
507 asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1",
508 "msm-pcm-dsp.2", "msm-voip-dsp",
509 "msm-pcm-voice", "msm-pcm-loopback",
510 "msm-compress-dsp", "msm-pcm-hostless",
511 "msm-pcm-afe", "msm-lsm-client",
512 "msm-pcm-routing", "msm-pcm-lpa";
513 asoc-cpu = <&dai_pri_auxpcm>,
514 <&dai_mi2s0>, <&dai_mi2s1>,
515 <&dai_mi2s2>, <&dai_mi2s3>,
516 <&dai_mi2s5>, <&dai_mi2s6>,
517 <&sb_0_rx>, <&sb_0_tx>, <&sb_1_rx>, <&sb_1_tx>,
518 <&sb_3_rx>, <&sb_3_tx>, <&sb_4_rx>, <&sb_4_tx>,
519 <&bt_sco_rx>, <&bt_sco_tx>,
520 <&int_fm_rx>, <&int_fm_tx>,
521 <&afe_pcm_rx>, <&afe_pcm_tx>,
522 <&afe_proxy_rx>, <&afe_proxy_tx>,
523 <&incall_record_rx>, <&incall_record_tx>,
524 <&incall_music_rx>, <&incall_music_2_rx>;
525 asoc-cpu-names = "msm-dai-q6-auxpcm.1",
526 "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
527 "msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
528 "msm-dai-q6-mi2s.5", "msm-dai-q6-mi2s.6",
529 "msm-dai-q6-dev.16384", "msm-dai-q6-dev.16385",
530 "msm-dai-q6-dev.16386", "msm-dai-q6-dev.16387",
531 "msm-dai-q6-dev.16390", "msm-dai-q6-dev.16391",
532 "msm-dai-q6-dev.16392", "msm-dai-q6-dev.16393",
533 "msm-dai-q6-dev.12288", "msm-dai-q6-dev.12289",
534 "msm-dai-q6-dev.12292", "msm-dai-q6-dev.12293",
535 "msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
536 "msm-dai-q6-dev.241", "msm-dai-q6-dev.240",
537 "msm-dai-q6-dev.32771", "msm-dai-q6-dev.32772",
538 "msm-dai-q6-dev.32773", "msm-dai-q6-dev.32770";
539
540 asoc-codec = <&stub_codec>, <&pm8953_diangu_dig>, <&hdmi_dba>;
541 asoc-codec-names = "msm-stub-codec.1", "cajon_codec",
542 "msm-hdmi-dba-codec-rx";
543 asoc-wsa-codec-names = "wsa881x-i2c-codec.2-000f";
544 asoc-wsa-codec-prefixes = "SpkrMono";
545
546 msm-vdd-wsa-switch-supply = <&pm8953_l5>;
547 qcom,msm-vdd-wsa-switch-voltage = <1800000>;
548 qcom,msm-vdd-wsa-switch-current = <10000>;
549 };
550
551 clock_audio: audio_ext_clk {
552 status = "disabled";
553 compatible = "qcom,audio-ref-clk";
554 clock-names = "osr_clk";
555 qcom,node_has_rpm_clock;
556 #clock-cells = <1>;
557 };
558
559};
560
561&adsp_io {
562 qcom,virtual-addr-pool = <0x10000000 0x0fffffff>;
563 #iommu-cells = <1>;
564};
565
566&clock_audio {
567 status = "okay";
568 qcom,audio-ref-clk-gpio = <&pm8953_gpios 1 0>;
569 qcom,lpass-mclk-id = "pri_mclk";
570 clocks = <&clock_gcc clk_div_clk2>;
571 pinctrl-names = "sleep", "active";
572 pinctrl-0 = <&cdc_mclk2_sleep>;
573 pinctrl-1 = <&cdc_mclk2_active>;
574};
575
576&pm8953_1 {
577 status = "okay";
578 pm8953_diangu_dig: 8953_wcd_codec@f000 {
579 status = "okay";
580 compatible = "qcom,msm8x16_wcd_codec";
581 reg = <0xf000 0x100>;
582 interrupt-parent = <&spmi_bus>;
583 interrupts = <0x1 0xf0 0x0>,
584 <0x1 0xf0 0x1>,
585 <0x1 0xf0 0x2>,
586 <0x1 0xf0 0x3>,
587 <0x1 0xf0 0x4>,
588 <0x1 0xf0 0x5>,
589 <0x1 0xf0 0x6>,
590 <0x1 0xf0 0x7>;
591 interrupt-names = "spk_cnp_int",
592 "spk_clip_int",
593 "spk_ocp_int",
594 "ins_rem_det1",
595 "but_rel_det",
596 "but_press_det",
597 "ins_rem_det",
598 "mbhc_int";
599
600 cdc-vdda-cp-supply = <&pm8953_s4>;
601 qcom,cdc-vdda-cp-voltage = <1900000 2050000>;
602 qcom,cdc-vdda-cp-current = <500000>;
603
604 cdc-vdd-io-supply = <&pm8953_l5>;
605 qcom,cdc-vdd-io-voltage = <1800000 1800000>;
606 qcom,cdc-vdd-io-current = <5000>;
607
608 cdc-vdd-pa-supply = <&pm8953_s4>;
609 qcom,cdc-vdd-pa-voltage = <1900000 2050000>;
610 qcom,cdc-vdd-pa-current = <260000>;
611
612 cdc-vdd-mic-bias-supply = <&pm8953_l13>;
613 qcom,cdc-vdd-mic-bias-voltage = <3125000 3125000>;
614 qcom,cdc-vdd-mic-bias-current = <5000>;
615
616 qcom,cdc-mclk-clk-rate = <9600000>;
617
618 qcom,cdc-static-supplies = "cdc-vdd-io",
619 "cdc-vdd-pa",
620 "cdc-vdda-cp";
621
622 qcom,cdc-on-demand-supplies = "cdc-vdd-mic-bias";
623 qcom,dig-cdc-base-addr = <0xc0f0000>;
624 };
625
626 pm8953_diangu_analog: 8953_wcd_codec@f100 {
627 status = "okay";
628 compatible = "qcom,msm8x16_wcd_codec";
629 reg = <0xf100 0x100>;
630 interrupt-parent = <&spmi_bus>;
631 interrupts = <0x1 0xf1 0x0>,
632 <0x1 0xf1 0x1>,
633 <0x1 0xf1 0x2>,
634 <0x1 0xf1 0x3>,
635 <0x1 0xf1 0x4>,
636 <0x1 0xf1 0x5>;
637 interrupt-names = "ear_ocp_int",
638 "hphr_ocp_int",
639 "hphl_ocp_det",
640 "ear_cnp_int",
641 "hphr_cnp_int",
642 "hphl_cnp_int";
643 qcom,dig-cdc-base-addr = <0xc0f0000>;
644 };
645};