[PATCH 6/7] arm64: dts: qcom: monaco-arduino-monza: Add sound node
From: Srinivas Kandagatla
Date: Mon Mar 09 2026 - 11:35:41 EST
Add audio support for Arduino VENTUNOQ board, which has Headset, Mic, Ear
and Lineout connected to external Maxim max98091 codec, HDMI audio
via ADV7535 dsi-hdmi bridge.
Co-developed-by: Loic Poulain <loic.poulain@xxxxxxxxxxxxxxxx>
Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxxxxxxxxx>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxxxxxxxx>
---
.../boot/dts/qcom/monaco-arduino-monza.dts | 66 +++++++++++++++++++
arch/arm64/boot/dts/qcom/monaco.dtsi | 55 ++++++++++++++++
2 files changed, 121 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts b/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts
index b6db2a7151f1..be62b3dabbca 100644
--- a/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts
+++ b/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts
@@ -80,6 +80,72 @@ hdmi_connector_in: endpoint {
};
};
+ sound {
+ compatible = "qcom,qcs8275-sndcard";
+ model = "arduino-monza";
+ audio-routing = "IN12", "Headset Mic12",
+ "Headset Mic12", "MICBIAS",
+ "IN56", "Headset Mic56",
+ "Headset Mic56", "MICBIAS",
+ "MIC1", "MICBIAS",
+ "Headphone", "HPL",
+ "Headphone", "HPR",
+ "Receiver", "RCVL",
+ "Receiver", "RCVR",
+ "Speaker", "SPKL",
+ "Speaker", "SPKR";
+
+ pinctrl-0 = <&quad_mi2s_active>, <&quad_mclk_active>, <&lpi_i2s4_active>;
+ pinctrl-names = "default";
+
+ pri-i2s-playback-dai-link {
+ link-name = "Analog Playback";
+
+ codec {
+ sound-dai = <&max98091>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai 137>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+
+ pri-i2s-capture-dai-link {
+ link-name = "Analog Capture";
+
+ codec {
+ sound-dai = <&max98091>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai 138>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+
+ hdmi-mi2s-playback-dai-link {
+ link-name = "HDMI Playback";
+
+ codec {
+ sound-dai = <&adv7535>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai 145>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+ };
vdc_3v3: regulator-vdc-3v3 {
compatible = "regulator-fixed";
diff --git a/arch/arm64/boot/dts/qcom/monaco.dtsi b/arch/arm64/boot/dts/qcom/monaco.dtsi
index 0727dbd44a75..ef2cea0db048 100644
--- a/arch/arm64/boot/dts/qcom/monaco.dtsi
+++ b/arch/arm64/boot/dts/qcom/monaco.dtsi
@@ -2885,6 +2885,61 @@ lpass_tlmm: pinctrl@3440000 {
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&lpass_tlmm 0 0 23>;
+
+ quad_mclk_active: quad-mclk-state {
+ clk-pins {
+ pins = "gpio5";
+ function = "ext_mclk1_c";
+ drive-strength = <8>;
+ bias-disable;
+ };
+ };
+
+ quad_mi2s_active: quad-active-state {
+ data-pins {
+ pins = "gpio2", "gpio3";
+ function = "qua_mi2s_data";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ sclk-pins {
+ pins = "gpio0";
+ function = "qua_mi2s_sclk";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ ws-pins {
+ pins = "gpio1";
+ function = "qua_mi2s_ws";
+ drive-strength = <8>;
+ bias-disable;
+ };
+ };
+
+ lpi_i2s4_active: lpi_i2s4-active-state {
+ data0-pins {
+ pins = "gpio17";
+ function = "i2s4_data";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ clk-pins {
+ pins = "gpio12";
+ function = "i2s4_clk";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ ws-pins {
+ pins = "gpio13";
+ function = "i2s4_ws";
+ drive-strength = <8>;
+ bias-disable;
+ };
+ };
};
lpass_ag_noc: interconnect@3c40000 {
--
2.47.3