arm64: dts: qcom: sdm845-starqltechn: add initial sound support

Add support for sound (headphones and mics only)
Also redefine slpi reserved memory, because adsp_mem overlaps with
slpi_mem inherited from sdm845.dtsi.

Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com>
Link: https://lore.kernel.org/r/20250225-starqltechn_integration_upstream-v9-10-a5d80375cb66@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
Dzmitry Sankouski
2025-02-25 19:39:01 +03:00
committed by Bjorn Andersson
parent 9380e0a1d4
commit 58782c229e

View File

@@ -11,8 +11,16 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/leds/common.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include <dt-bindings/sound/qcom,q6afe.h>
#include <dt-bindings/sound/qcom,q6asm.h>
#include <dt-bindings/sound/qcom,wcd934x.h>
#include "sdm845.dtsi"
#include "pm8998.dtsi"
#include "sdm845-wcd9340.dtsi"
/delete-node/ &adsp_mem;
/delete-node/ &slpi_mem;
/ {
chassis-type = "handset";
@@ -97,6 +105,16 @@
ftrace-size = <0x40000>;
pmsg-size = <0x40000>;
};
slpi_mem: slpi@96700000 {
reg = <0 0x96700000 0 0xf00000>;
no-map;
};
adsp_mem: memory@97800000 {
reg = <0 0x97800000 0 0x2000000>;
no-map;
};
};
i2c21 {
@@ -595,6 +613,211 @@
};
};
&adsp_pas {
firmware-name = "qcom/sdm845/starqltechn/adsp.mbn";
status = "okay";
};
&lpasscc {
status = "okay";
};
&sound {
compatible = "qcom,sdm845-sndcard";
model = "Samsung Galaxy S9";
pinctrl-0 = <&quat_mi2s_active &quat_mi2s_sd0_active &quat_mi2s_sd1_active>;
pinctrl-names = "default";
status = "okay";
audio-routing = "RX_BIAS", "MCLK",
"AMIC2", "MIC BIAS2", /* Headset Mic */
"AMIC3", "MIC BIAS2", /* FM radio left Tx */
"AMIC4", "MIC BIAS2", /* FM radio right Tx */
"DMIC0", "MCLK", /* Bottom Mic */
"DMIC0", "MIC BIAS1",
"DMIC2", "MCLK", /* Top Mic */
"DMIC2", "MIC BIAS3";
mm1-dai-link {
link-name = "MultiMedia1";
cpu {
sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
};
};
mm2-dai-link {
link-name = "MultiMedia2";
cpu {
sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
};
};
mm3-dai-link {
link-name = "MultiMedia3";
cpu {
sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
};
};
mm4-dai-link {
link-name = "MultiMedia4";
cpu {
sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA4>;
};
};
mm5-dai-link {
link-name = "MultiMedia5";
cpu {
sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA5>;
};
};
mm6-dai-link {
link-name = "MultiMedia6";
cpu {
sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA6>;
};
};
slim-dai-link {
link-name = "SLIM Playback 1";
codec {
sound-dai = <&wcd9340 AIF1_PB>;
};
cpu {
sound-dai = <&q6afedai SLIMBUS_0_RX>;
};
platform {
sound-dai = <&q6routing>;
};
};
slimcap-dai-link {
link-name = "SLIM Capture 1";
codec {
sound-dai = <&wcd9340 AIF1_CAP>;
};
cpu {
sound-dai = <&q6afedai SLIMBUS_0_TX>;
};
platform {
sound-dai = <&q6routing>;
};
};
slim2-dai-link {
link-name = "SLIM Playback 2";
codec {
sound-dai = <&wcd9340 AIF2_PB>;
};
cpu {
sound-dai = <&q6afedai SLIMBUS_1_RX>;
};
platform {
sound-dai = <&q6routing>;
};
};
slimcap2-dai-link {
link-name = "SLIM Capture 2";
codec {
sound-dai = <&wcd9340 AIF2_CAP>;
};
cpu {
sound-dai = <&q6afedai SLIMBUS_1_TX>;
};
platform {
sound-dai = <&q6routing>;
};
};
slimcap3-dai-link {
link-name = "SLIM Capture 3";
codec {
sound-dai = <&wcd9340 AIF3_CAP>;
};
cpu {
sound-dai = <&q6afedai SLIMBUS_2_TX>;
};
platform {
sound-dai = <&q6routing>;
};
};
};
&q6afedai {
dai@22 {
reg = <22>;
qcom,sd-lines = <1>;
};
dai@23 {
reg = <23>;
qcom,sd-lines = <0>;
};
};
&q6asmdai {
dai@0 {
reg = <0>;
};
dai@1 {
reg = <1>;
};
dai@2 {
reg = <2>;
};
dai@3 {
reg = <3>;
};
dai@4 {
reg = <4>;
};
dai@5 {
reg = <5>;
};
};
&wcd9340 {
reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
vdd-buck-supply = <&vreg_s4a_1p8>;
vdd-buck-sido-supply = <&vreg_s4a_1p8>;
vdd-tx-supply = <&vreg_s4a_1p8>;
vdd-rx-supply = <&vreg_s4a_1p8>;
vdd-io-supply = <&vreg_s4a_1p8>;
qcom,micbias1-microvolt = <1800000>;
qcom,micbias2-microvolt = <2700000>;
qcom,micbias3-microvolt = <1800000>;
qcom,micbias4-microvolt = <1800000>;
};
&usb_1 {
status = "okay";
};