summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLe Qi <le.qi@oss.qualcomm.com>2026-04-09 11:01:56 +0800
committerBjorn Andersson <andersson@kernel.org>2026-05-09 10:30:31 -0500
commit141d7ea5036e70f670aba1e6704be74552a3c964 (patch)
treebf401cab44a5a5440d7f77980baffaae9f921dc4
parentd962cd7c49fa210e53dfeed04028ac9ef112ae70 (diff)
downloadlinux-141d7ea5036e70f670aba1e6704be74552a3c964.tar.gz
linux-141d7ea5036e70f670aba1e6704be74552a3c964.zip
arm64: dts: qcom: talos-evk: Add sound card support with DA7212 codec
Add the sound card node for QCS615 Talos EVK with DA7212 codec connected over the Primary MI2S interface. The configuration enables headphone playback and headset microphone capture, both of which have been tested to work. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Le Qi <le.qi@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260409030156.155455-3-le.qi@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
-rw-r--r--arch/arm64/boot/dts/qcom/talos-evk.dts56
1 files changed, 56 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/qcom/talos-evk.dts b/arch/arm64/boot/dts/qcom/talos-evk.dts
index af100e22beee..b7f514fbc7b2 100644
--- a/arch/arm64/boot/dts/qcom/talos-evk.dts
+++ b/arch/arm64/boot/dts/qcom/talos-evk.dts
@@ -5,6 +5,7 @@
/dts-v1/;
#include "talos-evk-som.dtsi"
+#include <dt-bindings/sound/qcom,q6afe.h>
/ {
model = "Qualcomm QCS615 IQ 615 EVK";
@@ -40,6 +41,46 @@
};
};
+ sound {
+ compatible = "qcom,qcs615-sndcard";
+ model = "TALOS-EVK";
+
+ pinctrl-0 = <&mi2s1_pins>, <&mi2s_mclk>;
+ pinctrl-names = "default";
+
+ pri-mi2s-capture-dai-link {
+ link-name = "Primary MI2S Capture";
+
+ codec {
+ sound-dai = <&codec_da7212>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai PRIMARY_MI2S_TX>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+
+ pri-mi2s-playback-dai-link {
+ link-name = "Primary MI2S Playback";
+
+ codec {
+ sound-dai = <&codec_da7212>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai PRIMARY_MI2S_RX>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+ };
+
vreg_v1p8_out: regulator-v1p8-out {
compatible = "regulator-fixed";
regulator-name = "vreg-v1p8-out";
@@ -109,6 +150,21 @@
};
};
+&i2c5 {
+ status = "okay";
+
+ codec_da7212: codec@1a {
+ compatible = "dlg,da7212";
+ reg = <0x1a>;
+ #sound-dai-cells = <0>;
+ clocks = <&q6prmcc LPASS_CLK_ID_MCLK_2 LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
+ clock-names = "mclk";
+ VDDA-supply = <&vreg_v1p8_out>;
+ VDDIO-supply = <&vreg_v1p8_out>;
+ VDDMIC-supply = <&vreg_v3p3_out>;
+ };
+};
+
&mdss_dsi0_out {
remote-endpoint = <&adv7535_in>;
data-lanes = <0 1 2 3>;