xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/msm8916-modem-qdsp6.dtsi (revision ec71f661a572a770d7c861cd52a50cbbb0e1a8d1)
18abbd235SStephan Gerhold// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
28abbd235SStephan Gerhold/*
38abbd235SStephan Gerhold * msm8916-modem-qdsp6.dtsi describes the typical modem setup on MSM8916 devices
48abbd235SStephan Gerhold * (or similar SoCs) with audio routed via the QDSP6 services provided by the
58abbd235SStephan Gerhold * modem firmware. The digital/analog codec in the SoC/PMIC is used by default,
68abbd235SStephan Gerhold * but boards can define additional codecs by adding additional backend DAI links.
78abbd235SStephan Gerhold */
88abbd235SStephan Gerhold
98abbd235SStephan Gerhold#include <dt-bindings/sound/qcom,q6afe.h>
108abbd235SStephan Gerhold#include <dt-bindings/sound/qcom,q6asm.h>
118abbd235SStephan Gerhold
128abbd235SStephan Gerhold&apr {
138abbd235SStephan Gerhold	status = "okay";
148abbd235SStephan Gerhold};
158abbd235SStephan Gerhold
168abbd235SStephan Gerhold&bam_dmux {
178abbd235SStephan Gerhold	status = "okay";
188abbd235SStephan Gerhold};
198abbd235SStephan Gerhold
208abbd235SStephan Gerhold&bam_dmux_dma {
218abbd235SStephan Gerhold	status = "okay";
228abbd235SStephan Gerhold};
238abbd235SStephan Gerhold
248abbd235SStephan Gerhold&lpass {
258abbd235SStephan Gerhold	status = "reserved"; /* Controlled by QDSP6 */
268abbd235SStephan Gerhold};
278abbd235SStephan Gerhold
288abbd235SStephan Gerhold&lpass_codec {
298abbd235SStephan Gerhold	status = "okay";
308abbd235SStephan Gerhold};
318abbd235SStephan Gerhold
328abbd235SStephan Gerhold&mba_mem {
338abbd235SStephan Gerhold	status = "okay";
348abbd235SStephan Gerhold};
358abbd235SStephan Gerhold
368abbd235SStephan Gerhold&mpss {
378abbd235SStephan Gerhold	status = "okay";
388abbd235SStephan Gerhold};
398abbd235SStephan Gerhold
408abbd235SStephan Gerhold&mpss_mem {
418abbd235SStephan Gerhold	status = "okay";
428abbd235SStephan Gerhold};
438abbd235SStephan Gerhold
448abbd235SStephan Gerhold&pm8916_codec {
458abbd235SStephan Gerhold	status = "okay";
468abbd235SStephan Gerhold};
478abbd235SStephan Gerhold
488abbd235SStephan Gerhold&q6afedai {
498abbd235SStephan Gerhold	dai@16 {
508abbd235SStephan Gerhold		reg = <PRIMARY_MI2S_RX>;
518abbd235SStephan Gerhold		qcom,sd-lines = <0 1>;
528abbd235SStephan Gerhold	};
538abbd235SStephan Gerhold	dai@20 {
548abbd235SStephan Gerhold		reg = <TERTIARY_MI2S_TX>;
558abbd235SStephan Gerhold		qcom,sd-lines = <0 1>;
568abbd235SStephan Gerhold	};
578abbd235SStephan Gerhold};
588abbd235SStephan Gerhold
598abbd235SStephan Gerhold&q6asmdai {
608abbd235SStephan Gerhold	dai@0 {
61*0c5b5976SLuca Weiss		reg = <MSM_FRONTEND_DAI_MULTIMEDIA1>;
628abbd235SStephan Gerhold		direction = <Q6ASM_DAI_RX>;
638abbd235SStephan Gerhold	};
648abbd235SStephan Gerhold	dai@1 {
65*0c5b5976SLuca Weiss		reg = <MSM_FRONTEND_DAI_MULTIMEDIA2>;
668abbd235SStephan Gerhold		direction = <Q6ASM_DAI_TX>;
678abbd235SStephan Gerhold	};
688abbd235SStephan Gerhold	dai@2 {
69*0c5b5976SLuca Weiss		reg = <MSM_FRONTEND_DAI_MULTIMEDIA3>;
708abbd235SStephan Gerhold		direction = <Q6ASM_DAI_RX>;
718abbd235SStephan Gerhold	};
728abbd235SStephan Gerhold	dai@3 {
73*0c5b5976SLuca Weiss		reg = <MSM_FRONTEND_DAI_MULTIMEDIA4>;
748abbd235SStephan Gerhold		direction = <Q6ASM_DAI_RX>;
758abbd235SStephan Gerhold		is-compress-dai;
768abbd235SStephan Gerhold	};
778abbd235SStephan Gerhold};
788abbd235SStephan Gerhold
798abbd235SStephan Gerhold&sound {
808abbd235SStephan Gerhold	compatible = "qcom,msm8916-qdsp6-sndcard";
818abbd235SStephan Gerhold	model = "msm8916";
828abbd235SStephan Gerhold
838abbd235SStephan Gerhold	pinctrl-0 = <&cdc_pdm_default>;
848abbd235SStephan Gerhold	pinctrl-1 = <&cdc_pdm_sleep>;
858abbd235SStephan Gerhold	pinctrl-names = "default", "sleep";
868abbd235SStephan Gerhold
878abbd235SStephan Gerhold	status = "okay";
888abbd235SStephan Gerhold
898abbd235SStephan Gerhold	frontend0-dai-link {
908abbd235SStephan Gerhold		link-name = "MultiMedia1";
918abbd235SStephan Gerhold
928abbd235SStephan Gerhold		cpu {
938abbd235SStephan Gerhold			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
948abbd235SStephan Gerhold		};
958abbd235SStephan Gerhold	};
968abbd235SStephan Gerhold
978abbd235SStephan Gerhold	frontend1-dai-link {
988abbd235SStephan Gerhold		link-name = "MultiMedia2";
998abbd235SStephan Gerhold
1008abbd235SStephan Gerhold		cpu {
1018abbd235SStephan Gerhold			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
1028abbd235SStephan Gerhold		};
1038abbd235SStephan Gerhold	};
1048abbd235SStephan Gerhold
1058abbd235SStephan Gerhold	frontend2-dai-link {
1068abbd235SStephan Gerhold		link-name = "MultiMedia3";
1078abbd235SStephan Gerhold
1088abbd235SStephan Gerhold		cpu {
1098abbd235SStephan Gerhold			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
1108abbd235SStephan Gerhold		};
1118abbd235SStephan Gerhold	};
1128abbd235SStephan Gerhold
1138abbd235SStephan Gerhold	frontend3-dai-link {
1148abbd235SStephan Gerhold		link-name = "MultiMedia4";
1158abbd235SStephan Gerhold
1168abbd235SStephan Gerhold		cpu {
1178abbd235SStephan Gerhold			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA4>;
1188abbd235SStephan Gerhold		};
1198abbd235SStephan Gerhold	};
1208abbd235SStephan Gerhold
1218abbd235SStephan Gerhold	sound_link_backend0: backend0-dai-link {
1228abbd235SStephan Gerhold		link-name = "Primary MI2S";
1238abbd235SStephan Gerhold
1248abbd235SStephan Gerhold		cpu {
1258abbd235SStephan Gerhold			sound-dai = <&q6afedai PRIMARY_MI2S_RX>;
1268abbd235SStephan Gerhold		};
1278abbd235SStephan Gerhold		platform {
1288abbd235SStephan Gerhold			sound-dai = <&q6routing>;
1298abbd235SStephan Gerhold		};
1308abbd235SStephan Gerhold		codec {
1318abbd235SStephan Gerhold			sound-dai = <&lpass_codec 0>, <&pm8916_codec 0>;
1328abbd235SStephan Gerhold		};
1338abbd235SStephan Gerhold	};
1348abbd235SStephan Gerhold
1358abbd235SStephan Gerhold	sound_link_backend1: backend1-dai-link {
1368abbd235SStephan Gerhold		link-name = "Tertiary MI2S";
1378abbd235SStephan Gerhold
1388abbd235SStephan Gerhold		cpu {
1398abbd235SStephan Gerhold			sound-dai = <&q6afedai TERTIARY_MI2S_TX>;
1408abbd235SStephan Gerhold		};
1418abbd235SStephan Gerhold		platform {
1428abbd235SStephan Gerhold			sound-dai = <&q6routing>;
1438abbd235SStephan Gerhold		};
1448abbd235SStephan Gerhold		codec {
1458abbd235SStephan Gerhold			sound-dai = <&lpass_codec 1>, <&pm8916_codec 1>;
1468abbd235SStephan Gerhold		};
1478abbd235SStephan Gerhold	};
1488abbd235SStephan Gerhold};
149