Skip to content

Commit c369e8b

Browse files
Merge pull request #202 from QTI-Quill/qcom-6.18.y
Add support for Talos EVK audio
2 parents cdc4617 + 9b6d610 commit c369e8b

2 files changed

Lines changed: 99 additions & 0 deletions

File tree

arch/arm64/boot/dts/qcom/talos-evk.dts

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
/dts-v1/;
66

77
#include "talos-evk-som.dtsi"
8+
#include <dt-bindings/sound/qcom,q6afe.h>
89

910
/ {
1011
model = "Qualcomm QCS615 IQ 615 EVK";
@@ -40,6 +41,46 @@
4041
};
4142
};
4243

44+
sound {
45+
compatible = "qcom,qcs615-sndcard";
46+
model = "TALOS-EVK";
47+
48+
pinctrl-0 = <&mi2s1_pins>;
49+
pinctrl-names = "default";
50+
51+
pri-mi2s-capture-dai-link {
52+
link-name = "Primary MI2S Capture";
53+
54+
codec {
55+
sound-dai = <&codec_da7212>;
56+
};
57+
58+
cpu {
59+
sound-dai = <&q6apmbedai PRIMARY_MI2S_TX>;
60+
};
61+
62+
platform {
63+
sound-dai = <&q6apm>;
64+
};
65+
};
66+
67+
pri-mi2s-playback-dai-link {
68+
link-name = "Primary MI2S Playback";
69+
70+
codec {
71+
sound-dai = <&codec_da7212>;
72+
};
73+
74+
cpu {
75+
sound-dai = <&q6apmbedai PRIMARY_MI2S_RX>;
76+
};
77+
78+
platform {
79+
sound-dai = <&q6apm>;
80+
};
81+
};
82+
};
83+
4384
vreg_v1p8_out: regulator-v1p8-out {
4485
compatible = "regulator-fixed";
4586
regulator-name = "vreg-v1p8-out";
@@ -109,6 +150,17 @@
109150
};
110151
};
111152

153+
&i2c5 {
154+
codec_da7212: codec@1a {
155+
compatible = "dlg,da7212";
156+
reg = <0x1a>;
157+
#sound-dai-cells = <0>;
158+
VDDA-supply = <&vreg_v1p8_out>;
159+
VDDIO-supply = <&vreg_v1p8_out>;
160+
VDDMIC-supply = <&vreg_v3p3_out>;
161+
};
162+
};
163+
112164
&mdss_dsi0_out {
113165
remote-endpoint = <&adv7535_in>;
114166
data-lanes = <0 1 2 3>;

arch/arm64/boot/dts/qcom/talos.dtsi

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
#include <dt-bindings/power/qcom,rpmhpd.h>
2121
#include <dt-bindings/soc/qcom,rpmh-rsc.h>
2222
#include <dt-bindings/thermal/thermal.h>
23+
#include <dt-bindings/soc/qcom,gpr.h>
2324

2425
/ {
2526
interrupt-parent = <&intc>;
@@ -1555,6 +1556,13 @@
15551556
#interrupt-cells = <2>;
15561557
wakeup-parent = <&pdc>;
15571558

1559+
mi2s1_pins: mi2s1-state {
1560+
pins = "gpio108", "gpio109", "gpio110", "gpio111";
1561+
function = "mi2s_1";
1562+
drive-strength = <8>;
1563+
bias-disable;
1564+
};
1565+
15581566
cam0_default: cam0-default-state {
15591567
pins = "gpio28";
15601568
function = "cam_mclk";
@@ -5132,6 +5140,45 @@
51325140
dma-coherent;
51335141
};
51345142
};
5143+
5144+
gpr: gpr {
5145+
compatible = "qcom,gpr";
5146+
qcom,glink-channels = "adsp_apps";
5147+
qcom,domain = <GPR_DOMAIN_ID_ADSP>;
5148+
qcom,intents = <512 20>;
5149+
#address-cells = <1>;
5150+
#size-cells = <0>;
5151+
5152+
q6apm: service@1 {
5153+
compatible = "qcom,q6apm";
5154+
reg = <GPR_APM_MODULE_IID>;
5155+
#sound-dai-cells = <0>;
5156+
qcom,protection-domain = "avs/audio",
5157+
"msm/adsp/audio_pd";
5158+
5159+
q6apmbedai: bedais {
5160+
compatible = "qcom,q6apm-lpass-dais";
5161+
#sound-dai-cells = <1>;
5162+
};
5163+
5164+
q6apmdai: dais {
5165+
compatible = "qcom,q6apm-dais";
5166+
iommus = <&apps_smmu 0x1721 0x0>;
5167+
};
5168+
};
5169+
5170+
q6prm: service@2 {
5171+
compatible = "qcom,q6prm";
5172+
reg = <GPR_PRM_MODULE_IID>;
5173+
qcom,protection-domain = "avs/audio",
5174+
"msm/adsp/audio_pd";
5175+
5176+
q6prmcc: clock-controller {
5177+
compatible = "qcom,q6prm-lpass-clocks";
5178+
#clock-cells = <2>;
5179+
};
5180+
};
5181+
};
51355182
};
51365183
};
51375184

0 commit comments

Comments
 (0)