devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/8] Add SC7280 audioreach device tree nodes.
@ 2023-01-05 13:37 Srinivasa Rao Mandadapu
  2023-01-05 13:37 ` [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file Srinivasa Rao Mandadapu
                   ` (7 more replies)
  0 siblings, 8 replies; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Add SC7280 audioreach device tree nodes and extract audio specific
dtsi nodes and add them in new file.

This patch depends on:
    -- https://patchwork.kernel.org/project/linux-clk/list/?series=707713

Srinivasa Rao Mandadapu (8):
  arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi
    file
  arm64: dts: qcom: sc7280: audioreach: Add sound node
  arm64: dts: qcom: sc7280: audioreach: Add lpass pil node
  arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock
    nodes
  arm64: dts: qcom: sc7280: audioreach: Update lpass_tlmm node
  arm64: dts: qcom: sc7280: audioreach: Update lpasscc reg property
  arm64: dts: qcom: sc7280: audioreach: Add CGCR reset property
  arm64: dts: qcom: sc7280: audioreach: Disable legacy path clock nodes

 arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi     | 135 ++++++++++++++
 arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts         |  24 +--
 .../qcom/sc7280-herobrine-audioreach-wcd9385.dtsi  | 204 +++++++++++++++++++++
 arch/arm64/boot/dts/qcom/sc7280-idp.dtsi           | 126 -------------
 arch/arm64/boot/dts/qcom/sc7280.dtsi               |  96 +++++++++-
 5 files changed, 434 insertions(+), 151 deletions(-)
 create mode 100644 arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi

-- 
2.7.4


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-10 10:57   ` Krzysztof Kozlowski
  2023-01-05 13:37 ` [PATCH v2 2/8] arm64: dts: qcom: sc7280: audioreach: Add sound node Srinivasa Rao Mandadapu
                   ` (6 subsequent siblings)
  7 siblings, 1 reply; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Split common idp dtsi file into audio specific dtsi and common
idp dtsi file.

It is required to isolate idp and crd-rev3 platform device tree nodes
and convert crd-rev3 platform device tree nodes into audioreach specific
device tree nodes.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi | 135 +++++++++++++++++++++++++
 arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts     |   1 +
 arch/arm64/boot/dts/qcom/sc7280-idp.dtsi       | 126 -----------------------
 3 files changed, 136 insertions(+), 126 deletions(-)
 create mode 100644 arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi

diff --git a/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi b/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
new file mode 100644
index 0000000..d1aea28
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
@@ -0,0 +1,135 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * sc7280 Audio IDP board device tree source (common between SKU1 and SKU2)
+ *
+ * Copyright (c) 2022, The Linux Foundation. All rights reserved.
+ */
+
+/{
+   /* BOARD-SPECIFIC TOP LEVEL NODES */
+	sound: sound {
+		compatible = "google,sc7280-herobrine";
+		model = "sc7280-wcd938x-max98360a-1mic";
+
+		audio-routing =
+			"IN1_HPHL", "HPHL_OUT",
+			"IN2_HPHR", "HPHR_OUT",
+			"AMIC1", "MIC BIAS1",
+			"AMIC2", "MIC BIAS2",
+			"VA DMIC0", "MIC BIAS3",
+			"VA DMIC1", "MIC BIAS3",
+			"VA DMIC2", "MIC BIAS1",
+			"VA DMIC3", "MIC BIAS1",
+			"TX SWR_ADC0", "ADC1_OUTPUT",
+			"TX SWR_ADC1", "ADC2_OUTPUT",
+			"TX SWR_ADC2", "ADC3_OUTPUT",
+			"TX SWR_DMIC0", "DMIC1_OUTPUT",
+			"TX SWR_DMIC1", "DMIC2_OUTPUT",
+			"TX SWR_DMIC2", "DMIC3_OUTPUT",
+			"TX SWR_DMIC3", "DMIC4_OUTPUT",
+			"TX SWR_DMIC4", "DMIC5_OUTPUT",
+			"TX SWR_DMIC5", "DMIC6_OUTPUT",
+			"TX SWR_DMIC6", "DMIC7_OUTPUT",
+			"TX SWR_DMIC7", "DMIC8_OUTPUT";
+
+		qcom,msm-mbhc-hphl-swh = <1>;
+		qcom,msm-mbhc-gnd-swh = <1>;
+
+		#address-cells = <1>;
+		#size-cells = <0>;
+		#sound-dai-cells = <0>;
+
+		dai-link@0 {
+			link-name = "MAX98360A";
+			reg = <0>;
+
+			cpu {
+				sound-dai = <&lpass_cpu MI2S_SECONDARY>;
+			};
+
+			codec {
+				sound-dai = <&max98360a>;
+			};
+		};
+
+		dai-link@1 {
+			link-name = "DisplayPort";
+			reg = <1>;
+
+			cpu {
+				sound-dai = <&lpass_cpu LPASS_DP_RX>;
+			};
+
+			codec {
+				sound-dai = <&mdss_dp>;
+			};
+		};
+
+		dai-link@2 {
+			link-name = "WCD9385 Playback";
+			reg = <2>;
+
+			cpu {
+				sound-dai = <&lpass_cpu LPASS_CDC_DMA_RX0>;
+			};
+
+			codec {
+				sound-dai = <&wcd9385 0>, <&swr0 0>, <&lpass_rx_macro 0>;
+			};
+		};
+
+		dai-link@3 {
+			link-name = "WCD9385 Capture";
+			reg = <3>;
+
+			cpu {
+				sound-dai = <&lpass_cpu LPASS_CDC_DMA_TX3>;
+			};
+
+			codec {
+				sound-dai = <&wcd9385 1>, <&swr1 0>, <&lpass_tx_macro 0>;
+			};
+		};
+
+		dai-link@4 {
+			link-name = "DMIC";
+			reg = <4>;
+
+			cpu {
+				sound-dai = <&lpass_cpu LPASS_CDC_DMA_VA_TX0>;
+			};
+
+			codec {
+				sound-dai = <&lpass_va_macro 0>;
+			};
+		};
+	};
+};
+
+&lpass_cpu {
+	status = "okay";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&mi2s1_data0>, <&mi2s1_sclk>, <&mi2s1_ws>;
+
+	dai-link@1 {
+		reg = <MI2S_SECONDARY>;
+		qcom,playback-sd-lines = <0>;
+	};
+
+	dai-link@5 {
+		reg = <LPASS_DP_RX>;
+	};
+
+	dai-link@6 {
+		reg = <LPASS_CDC_DMA_RX0>;
+	};
+
+	dai-link@19 {
+		reg = <LPASS_CDC_DMA_TX3>;
+	};
+
+	dai-link@25 {
+		reg = <LPASS_CDC_DMA_VA_TX0>;
+	};
+};
diff --git a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
index 1185141..b024626 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
+++ b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
@@ -8,6 +8,7 @@
 /dts-v1/;
 
 #include "sc7280-idp.dtsi"
+#include "sc7280-audio-idp.dtsi"
 #include "sc7280-idp-ec-h1.dtsi"
 
 / {
diff --git a/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi b/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
index f7efb99..edec3ee 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
@@ -86,104 +86,6 @@
 		pinctrl-names = "default";
 		pinctrl-0 = <&nvme_pwren>;
 	};
-
-	sound: sound {
-		compatible = "google,sc7280-herobrine";
-		model = "sc7280-wcd938x-max98360a-1mic";
-
-		audio-routing =
-			"IN1_HPHL", "HPHL_OUT",
-			"IN2_HPHR", "HPHR_OUT",
-			"AMIC1", "MIC BIAS1",
-			"AMIC2", "MIC BIAS2",
-			"VA DMIC0", "MIC BIAS3",
-			"VA DMIC1", "MIC BIAS3",
-			"VA DMIC2", "MIC BIAS1",
-			"VA DMIC3", "MIC BIAS1",
-			"TX SWR_ADC0", "ADC1_OUTPUT",
-			"TX SWR_ADC1", "ADC2_OUTPUT",
-			"TX SWR_ADC2", "ADC3_OUTPUT",
-			"TX SWR_DMIC0", "DMIC1_OUTPUT",
-			"TX SWR_DMIC1", "DMIC2_OUTPUT",
-			"TX SWR_DMIC2", "DMIC3_OUTPUT",
-			"TX SWR_DMIC3", "DMIC4_OUTPUT",
-			"TX SWR_DMIC4", "DMIC5_OUTPUT",
-			"TX SWR_DMIC5", "DMIC6_OUTPUT",
-			"TX SWR_DMIC6", "DMIC7_OUTPUT",
-			"TX SWR_DMIC7", "DMIC8_OUTPUT";
-
-		qcom,msm-mbhc-hphl-swh = <1>;
-		qcom,msm-mbhc-gnd-swh = <1>;
-
-		#address-cells = <1>;
-		#size-cells = <0>;
-		#sound-dai-cells = <0>;
-
-		dai-link@0 {
-			link-name = "MAX98360A";
-			reg = <0>;
-
-			cpu {
-				sound-dai = <&lpass_cpu MI2S_SECONDARY>;
-			};
-
-			codec {
-				sound-dai = <&max98360a>;
-			};
-		};
-
-		dai-link@1 {
-			link-name = "DisplayPort";
-			reg = <1>;
-
-			cpu {
-				sound-dai = <&lpass_cpu LPASS_DP_RX>;
-			};
-
-			codec {
-				sound-dai = <&mdss_dp>;
-			};
-		};
-
-		dai-link@2 {
-			link-name = "WCD9385 Playback";
-			reg = <2>;
-
-			cpu {
-				sound-dai = <&lpass_cpu LPASS_CDC_DMA_RX0>;
-			};
-
-			codec {
-				sound-dai = <&wcd9385 0>, <&swr0 0>, <&lpass_rx_macro 0>;
-			};
-		};
-
-		dai-link@3 {
-			link-name = "WCD9385 Capture";
-			reg = <3>;
-
-			cpu {
-				sound-dai = <&lpass_cpu LPASS_CDC_DMA_TX3>;
-			};
-
-			codec {
-				sound-dai = <&wcd9385 1>, <&swr1 0>, <&lpass_tx_macro 0>;
-			};
-		};
-
-		dai-link@4 {
-			link-name = "DMIC";
-			reg = <4>;
-
-			cpu {
-				sound-dai = <&lpass_cpu LPASS_CDC_DMA_VA_TX0>;
-			};
-
-			codec {
-				sound-dai = <&lpass_va_macro 0>;
-			};
-		};
-	};
 };
 
 &apps_rsc {
@@ -381,34 +283,6 @@
 	modem-init;
 };
 
-&lpass_cpu {
-	status = "okay";
-
-	pinctrl-names = "default";
-	pinctrl-0 = <&mi2s1_data0>, <&mi2s1_sclk>, <&mi2s1_ws>;
-
-	dai-link@1 {
-		reg = <MI2S_SECONDARY>;
-		qcom,playback-sd-lines = <0>;
-	};
-
-	dai-link@5 {
-		reg = <LPASS_DP_RX>;
-	};
-
-	dai-link@6 {
-		reg = <LPASS_CDC_DMA_RX0>;
-	};
-
-	dai-link@19 {
-		reg = <LPASS_CDC_DMA_TX3>;
-	};
-
-	dai-link@25 {
-		reg = <LPASS_CDC_DMA_VA_TX0>;
-	};
-};
-
 &lpass_rx_macro {
 	status = "okay";
 };
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v2 2/8] arm64: dts: qcom: sc7280: audioreach: Add sound node
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
  2023-01-05 13:37 ` [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-10 11:00   ` Krzysztof Kozlowski
  2023-01-05 13:37 ` [PATCH v2 3/8] arm64: dts: qcom: sc7280: audioreach: Add lpass pil node Srinivasa Rao Mandadapu
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Add sound node for sc7280 based audioreach platforms.

Include audioreach dtsi into crd-rev3 platform specific dts file.
Also remove phandle to sound node, as audio routing is same as
audioreach specific dtsi file.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts         |  25 +----
 .../qcom/sc7280-herobrine-audioreach-wcd9385.dtsi  | 109 +++++++++++++++++++++
 2 files changed, 110 insertions(+), 24 deletions(-)
 create mode 100644 arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi

diff --git a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
index b024626..aea8cbd 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
+++ b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
@@ -8,7 +8,7 @@
 /dts-v1/;
 
 #include "sc7280-idp.dtsi"
-#include "sc7280-audio-idp.dtsi"
+#include "sc7280-herobrine-audioreach-wcd9385.dtsi"
 #include "sc7280-idp-ec-h1.dtsi"
 
 / {
@@ -88,29 +88,6 @@ ap_ts_pen_1v8: &i2c13 {
 	pins = "gpio51";
 };
 
-&sound {
-	audio-routing =
-		"IN1_HPHL", "HPHL_OUT",
-		"IN2_HPHR", "HPHR_OUT",
-		"AMIC1", "MIC BIAS1",
-		"AMIC2", "MIC BIAS2",
-		"VA DMIC0", "MIC BIAS1",
-		"VA DMIC1", "MIC BIAS1",
-		"VA DMIC2", "MIC BIAS3",
-		"VA DMIC3", "MIC BIAS3",
-		"TX SWR_ADC0", "ADC1_OUTPUT",
-		"TX SWR_ADC1", "ADC2_OUTPUT",
-		"TX SWR_ADC2", "ADC3_OUTPUT",
-		"TX SWR_DMIC0", "DMIC1_OUTPUT",
-		"TX SWR_DMIC1", "DMIC2_OUTPUT",
-		"TX SWR_DMIC2", "DMIC3_OUTPUT",
-		"TX SWR_DMIC3", "DMIC4_OUTPUT",
-		"TX SWR_DMIC4", "DMIC5_OUTPUT",
-		"TX SWR_DMIC5", "DMIC6_OUTPUT",
-		"TX SWR_DMIC6", "DMIC7_OUTPUT",
-		"TX SWR_DMIC7", "DMIC8_OUTPUT";
-};
-
 &wcd9385 {
 	pinctrl-names = "default", "sleep";
 	pinctrl-0 = <&wcd_reset_n>, <&us_euro_hs_sel>;
diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
new file mode 100644
index 0000000..e1fe56c
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
@@ -0,0 +1,109 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * sc7280 device tree source for boards using Max98360 and wcd9385 codec
+ * along with ADSP
+ *
+ * Copyright (c) 2022, The Linux Foundation. All rights reserved.
+ */
+
+#include <dt-bindings/sound/qcom,q6afe.h>
+
+/{
+	/* BOARD-SPECIFIC TOP LEVEL NODES */
+	sound: sound {
+		compatible = "google,sc7280-herobrine";
+		model = "SC7280-AUDIOREACH";
+		adsp-mode;
+		audio-routing =
+			"IN1_HPHL", "HPHL_OUT",
+			"IN2_HPHR", "HPHR_OUT",
+			"AMIC1", "MIC BIAS1",
+			"AMIC2", "MIC BIAS2",
+			"VA DMIC0", "MIC BIAS1",
+			"VA DMIC1", "MIC BIAS1",
+			"VA DMIC2", "MIC BIAS3",
+			"VA DMIC3", "MIC BIAS3",
+			"TX SWR_ADC0", "ADC1_OUTPUT",
+			"TX SWR_ADC1", "ADC2_OUTPUT",
+			"TX SWR_ADC2", "ADC3_OUTPUT",
+			"TX SWR_DMIC0", "DMIC1_OUTPUT",
+			"TX SWR_DMIC1", "DMIC2_OUTPUT",
+			"TX SWR_DMIC2", "DMIC3_OUTPUT",
+			"TX SWR_DMIC3", "DMIC4_OUTPUT",
+			"TX SWR_DMIC4", "DMIC5_OUTPUT",
+			"TX SWR_DMIC5", "DMIC6_OUTPUT",
+			"TX SWR_DMIC6", "DMIC7_OUTPUT",
+			"TX SWR_DMIC7", "DMIC8_OUTPUT";
+
+		qcom,msm-mbhc-hphl-swh = <1>;
+		qcom,msm-mbhc-gnd-swh = <1>;
+
+		#address-cells = <1>;
+		#size-cells = <0>;
+		#sound-dai-cells = <0>;
+
+		dai-link@0 {
+			link-name = "WCD9385 Playback";
+			reg = <0>;
+
+			cpu {
+				sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
+			};
+			codec {
+				sound-dai = <&wcd9385 0>, <&swr0 0>, <&lpass_rx_macro 0>;
+			};
+			platform {
+				sound-dai = <&q6apm>;
+			};
+		};
+
+		dai-link@1 {
+			link-name = "WCD9385 Capture";
+			reg = <1>;
+
+			cpu {
+				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
+			};
+			codec {
+				sound-dai = <&wcd9385 1>, <&swr1 0>, <&lpass_tx_macro 0>;
+			};
+			platform {
+				sound-dai = <&q6apm>;
+			};
+		};
+
+		dai-link@2 {
+			link-name = "Amplifier Playback";
+			reg = <3>;
+
+			cpu {
+				sound-dai = <&q6apmbedai SECONDARY_MI2S_RX>;
+			};
+
+			codec {
+				sound-dai = <&max98360a>;
+			};
+
+			platform {
+				sound-dai = <&q6apm>;
+			};
+		};
+
+		dai-link@3 {
+			link-name = "DMIC";
+			reg = <4>;
+
+			cpu {
+				sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
+			};
+
+			codec {
+				sound-dai = <&lpass_va_macro 0>;
+			};
+
+			platform {
+				sound-dai = <&q6apm>;
+			};
+		};
+	};
+};
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v2 3/8] arm64: dts: qcom: sc7280: audioreach: Add lpass pil node
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
  2023-01-05 13:37 ` [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file Srinivasa Rao Mandadapu
  2023-01-05 13:37 ` [PATCH v2 2/8] arm64: dts: qcom: sc7280: audioreach: Add sound node Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-10 11:08   ` Krzysztof Kozlowski
  2023-01-05 13:37 ` [PATCH v2 4/8] arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock nodes Srinivasa Rao Mandadapu
                   ` (4 subsequent siblings)
  7 siblings, 1 reply; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Add lpass pil node for sc7280 based audioreach platforms.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 arch/arm64/boot/dts/qcom/sc7280.dtsi | 90 ++++++++++++++++++++++++++++++++++++
 1 file changed, 90 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
index 0adf133..f10a663 100644
--- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
@@ -8,6 +8,7 @@
 #include <dt-bindings/clock/qcom,dispcc-sc7280.h>
 #include <dt-bindings/clock/qcom,gcc-sc7280.h>
 #include <dt-bindings/clock/qcom,gpucc-sc7280.h>
+#include <dt-bindings/clock/qcom,lpass-sc7280.h>
 #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h>
 #include <dt-bindings/clock/qcom,lpasscorecc-sc7280.h>
 #include <dt-bindings/clock/qcom,rpmh.h>
@@ -21,6 +22,7 @@
 #include <dt-bindings/power/qcom-rpmpd.h>
 #include <dt-bindings/reset/qcom,sdm845-aoss.h>
 #include <dt-bindings/reset/qcom,sdm845-pdc.h>
+#include <dt-bindings/soc/qcom,gpr.h>
 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
 #include <dt-bindings/sound/qcom,lpass.h>
 #include <dt-bindings/thermal/thermal.h>
@@ -3436,6 +3438,94 @@
 			status = "disabled";
 		};
 
+		remoteproc_adsp: remoteproc@3000000 {
+			compatible = "qcom,sc7280-adsp-pil";
+			reg = <0 0x03000000 0 0x5000>, <0 0x0355b000 0 0x10>;
+			reg-names = "qdsp6ss_base", "lpass_efuse";
+
+			interrupts-extended = <&pdc 6 IRQ_TYPE_LEVEL_HIGH>,
+					      <&adsp_smp2p_in 0 IRQ_TYPE_NONE>,
+					      <&adsp_smp2p_in 1 IRQ_TYPE_NONE>,
+					      <&adsp_smp2p_in 2 IRQ_TYPE_NONE>,
+					      <&adsp_smp2p_in 3 IRQ_TYPE_NONE>,
+					      <&adsp_smp2p_in 7 IRQ_TYPE_NONE>;
+
+			interrupt-names = "wdog", "fatal", "ready",
+				"handover", "stop-ack",  "shutdown-ack";
+
+			qcom,qmp = <&aoss_qmp>;
+
+			clocks = <&rpmhcc RPMH_CXO_CLK>,
+				 <&gcc GCC_CFG_NOC_LPASS_CLK>;
+
+			clock-names = "xo", "gcc_cfg_noc_lpass";
+
+			iommus = <&apps_smmu 0x1800 0x0>;
+
+			power-domains =	<&rpmhpd SC7280_CX>;
+			power-domain-names = "cx";
+
+			required-opps = <&rpmhpd_opp_nom>;
+
+			resets = <&pdc_reset PDC_AUDIO_SYNC_RESET>,
+				 <&aoss_reset AOSS_CC_LPASS_RESTART>;
+
+			reset-names =  "pdc_sync", "cc_lpass";
+			qcom,halt-regs = <&tcsr_1 0x3000 0x5000 0x8000 0x13000>;
+
+			memory-region = <&adsp_mem>;
+
+			qcom,smem-states = <&adsp_smp2p_out 0>;
+			qcom,smem-state-names = "stop";
+
+			glink-edge {
+				interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
+						       IPCC_MPROC_SIGNAL_GLINK_QMP
+						       IRQ_TYPE_EDGE_RISING>;
+
+				mboxes = <&ipcc IPCC_CLIENT_LPASS
+					 IPCC_MPROC_SIGNAL_GLINK_QMP>;
+
+				label = "lpass";
+				qcom,remote-pid = <2>;
+
+				gpr {
+					compatible = "qcom,gpr";
+					qcom,glink-channels = "adsp_apps";
+					qcom,domain = <GPR_DOMAIN_ID_ADSP>;
+					#address-cells = <1>;
+					#size-cells = <0>;
+					qcom,intents = <512 20>;
+
+					q6apm: q6apm {
+						reg = <GPR_APM_MODULE_IID>;
+						compatible = "qcom,q6apm";
+						#sound-dai-cells = <0>;
+						q6apmdai: dais {
+							compatible = "qcom,q6apm-dais";
+							#sound-dai-cells = <1>;
+							iommus = <&apps_smmu 0x1801 0x0>;
+						};
+
+						q6apmbedai: bedais {
+							compatible = "qcom,q6apm-lpass-dais";
+							#sound-dai-cells = <1>;
+						};
+					};
+
+					q6prm: q6prm {
+						reg = <GPR_PRM_MODULE_IID>;
+						compatible = "qcom,q6prm";
+						#clock-cells = <2>;
+						q6prmcc: cc {
+							compatible = "qcom,q6prm-lpass-clocks";
+							#clock-cells = <2>;
+						};
+					};
+				};
+			};
+		};
+
 		remoteproc_wpss: remoteproc@8a00000 {
 			compatible = "qcom,sc7280-wpss-pil";
 			reg = <0 0x08a00000 0 0x10000>;
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v2 4/8] arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock nodes
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
                   ` (2 preceding siblings ...)
  2023-01-05 13:37 ` [PATCH v2 3/8] arm64: dts: qcom: sc7280: audioreach: Add lpass pil node Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-10 11:12   ` Krzysztof Kozlowski
  2023-01-05 13:37 ` [PATCH v2 5/8] arm64: dts: qcom: sc7280: audioreach: Update lpass_tlmm node Srinivasa Rao Mandadapu
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Update VA, RX and TX macro and lpass_tlmm clock properties and
enable them.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 .../qcom/sc7280-herobrine-audioreach-wcd9385.dtsi  | 62 ++++++++++++++++++++++
 1 file changed, 62 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
index e1fe56c..8c55753 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
@@ -8,6 +8,10 @@
 
 #include <dt-bindings/sound/qcom,q6afe.h>
 
+/delete-node/ &lpass_rx_macro;
+/delete-node/ &lpass_tx_macro;
+/delete-node/ &lpass_va_macro;
+
 /{
 	/* BOARD-SPECIFIC TOP LEVEL NODES */
 	sound: sound {
@@ -107,3 +111,61 @@
 		};
 	};
 };
+
+&soc {
+	lpass_rx_macro: codec@3200000 {
+		compatible = "qcom,sc7280-lpass-rx-macro";
+		reg = <0 0x03200000 0 0x1000>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&lpass_rx_swr_clk>, <&lpass_rx_swr_data>;
+
+		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK  LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&lpass_va_macro>;
+
+		clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
+
+		#clock-cells = <0>;
+		#sound-dai-cells = <1>;
+	};
+
+	lpass_tx_macro: codec@3220000 {
+		compatible = "qcom,sc7280-lpass-tx-macro";
+		reg = <0 0x03220000 0 0x1000>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&lpass_tx_swr_clk>, <&lpass_tx_swr_data>;
+
+		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK  LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&lpass_va_macro>;
+
+		clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
+
+		#clock-cells = <0>;
+		#sound-dai-cells = <1>;
+
+	};
+
+	lpass_va_macro: codec@3370000 {
+		compatible = "qcom,sc7280-lpass-va-macro";
+		reg = <0 0x03370000 0 0x1000>;
+
+		pinctrl-0 = <&lpass_dmic01_clk>, <&lpass_dmic01_data>;
+		pinctrl-names = "default";
+
+		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
+
+		clock-names = "mclk", "macro", "dcodec";
+
+		#clock-cells = <0>;
+		#sound-dai-cells = <1>;
+	};
+};
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v2 5/8] arm64: dts: qcom: sc7280: audioreach: Update lpass_tlmm node
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
                   ` (3 preceding siblings ...)
  2023-01-05 13:37 ` [PATCH v2 4/8] arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock nodes Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-10 11:13   ` Krzysztof Kozlowski
  2023-01-05 13:37 ` [PATCH v2 6/8] arm64: dts: qcom: sc7280: audioreach: Update lpasscc reg property Srinivasa Rao Mandadapu
                   ` (2 subsequent siblings)
  7 siblings, 1 reply; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Update lpass_tlmm clock properties, as different clock sources
are required in ADSP enabled platforms

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 .../arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
index 8c55753..7583c3c 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
@@ -169,3 +169,12 @@
 		#sound-dai-cells = <1>;
 	};
 };
+
+&lpass_tlmm {
+	clocks = <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
+		 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
+
+	clock-names = "core", "audio";
+	reg = <0 0x033c0000 0x0 0x20000>,
+	      <0 0x03550000 0x0 0xa100>;
+};
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v2 6/8] arm64: dts: qcom: sc7280: audioreach: Update lpasscc reg property
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
                   ` (4 preceding siblings ...)
  2023-01-05 13:37 ` [PATCH v2 5/8] arm64: dts: qcom: sc7280: audioreach: Update lpass_tlmm node Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-05 13:37 ` [PATCH v2 7/8] arm64: dts: qcom: sc7280: audioreach: Add CGCR reset property Srinivasa Rao Mandadapu
  2023-01-05 13:37 ` [PATCH v2 8/8] arm64: dts: qcom: sc7280: audioreach: Disable legacy path clock nodes Srinivasa Rao Mandadapu
  7 siblings, 0 replies; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Add reset control memory region in lpasscc reg property for
ADSP enabled platforms.
Also add "qcom,adsp-pil-mode" for herobrine crd revision 3
board specific device tree.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi | 4 ++++
 arch/arm64/boot/dts/qcom/sc7280.dtsi                              | 6 ++++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
index 7583c3c..2a619b4 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
@@ -178,3 +178,7 @@
 	reg = <0 0x033c0000 0x0 0x20000>,
 	      <0 0x03550000 0x0 0xa100>;
 };
+
+&lpasscc {
+	qcom,adsp-pil-mode;
+};
diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
index f10a663..a52008f 100644
--- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
@@ -2226,11 +2226,13 @@
 		lpasscc: lpasscc@3000000 {
 			compatible = "qcom,sc7280-lpasscc";
 			reg = <0 0x03000000 0 0x40>,
-			      <0 0x03c04000 0 0x4>;
-			reg-names = "qdsp6ss", "top_cc";
+			      <0 0x03c04000 0 0x4>,
+			      <0 0x032a9000 0 0x1000>;
+			reg-names = "qdsp6ss", "top_cc", "reset_cgcr";
 			clocks = <&gcc GCC_CFG_NOC_LPASS_CLK>;
 			clock-names = "iface";
 			#clock-cells = <1>;
+			#reset-cells = <1>;
 		};
 
 		lpass_rx_macro: codec@3200000 {
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v2 7/8] arm64: dts: qcom: sc7280: audioreach: Add CGCR reset property
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
                   ` (5 preceding siblings ...)
  2023-01-05 13:37 ` [PATCH v2 6/8] arm64: dts: qcom: sc7280: audioreach: Update lpasscc reg property Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-05 13:37 ` [PATCH v2 8/8] arm64: dts: qcom: sc7280: audioreach: Disable legacy path clock nodes Srinivasa Rao Mandadapu
  7 siblings, 0 replies; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Add CGCR register reset property for both RX and TX soundwire
slave devices.

This change is required due to clock source change in ADSP enabled
platforms.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
index 2a619b4..175ed9c 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
@@ -182,3 +182,11 @@
 &lpasscc {
 	qcom,adsp-pil-mode;
 };
+
+&swr0 {
+	resets = <&lpasscc LPASS_AUDIO_SWR_RX_CGCR>;
+};
+
+&swr1 {
+	resets = <&lpasscc LPASS_AUDIO_SWR_TX_CGCR>;
+};
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v2 8/8] arm64: dts: qcom: sc7280: audioreach: Disable legacy path clock nodes
  2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
                   ` (6 preceding siblings ...)
  2023-01-05 13:37 ` [PATCH v2 7/8] arm64: dts: qcom: sc7280: audioreach: Add CGCR reset property Srinivasa Rao Mandadapu
@ 2023-01-05 13:37 ` Srinivasa Rao Mandadapu
  2023-01-10 11:13   ` Krzysztof Kozlowski
  7 siblings, 1 reply; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-05 13:37 UTC (permalink / raw)
  To: agross, andersson, robh+dt, krzysztof.kozlowski+dt,
	linux-arm-msm, devicetree, linux-kernel, quic_rohkumar,
	srinivas.kandagatla, dianders, swboyd, judyhsiao, konrad.dybcio,
	mka
  Cc: Srinivasa Rao Mandadapu

Disable legacy path clock nodes to avoid conflicts with audioreach
clock node.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
---
 .../boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi   | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
index 175ed9c..a88b305 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
@@ -190,3 +190,15 @@
 &swr1 {
 	resets = <&lpasscc LPASS_AUDIO_SWR_TX_CGCR>;
 };
+
+&lpass_aon {
+	status = "disabled";
+};
+
+&lpass_audiocc {
+	status = "disabled";
+};
+
+&lpass_core {
+	status = "disabled";
+};
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file
  2023-01-05 13:37 ` [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file Srinivasa Rao Mandadapu
@ 2023-01-10 10:57   ` Krzysztof Kozlowski
  2023-01-19 12:08     ` Srinivasa Rao Mandadapu
  0 siblings, 1 reply; 17+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-10 10:57 UTC (permalink / raw)
  To: Srinivasa Rao Mandadapu, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka

On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
> Split common idp dtsi file into audio specific dtsi and common
> idp dtsi file.
> 
> It is required to isolate idp and crd-rev3 platform device tree nodes
> and convert crd-rev3 platform device tree nodes into audioreach specific
> device tree nodes.
> 
> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
> Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
> ---

Please include a changelog - either per patch or in cover letter.

>  arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi | 135 +++++++++++++++++++++++++
>  arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts     |   1 +
>  arch/arm64/boot/dts/qcom/sc7280-idp.dtsi       | 126 -----------------------
>  3 files changed, 136 insertions(+), 126 deletions(-)
>  create mode 100644 arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi b/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
> new file mode 100644
> index 0000000..d1aea28
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
> @@ -0,0 +1,135 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * sc7280 Audio IDP board device tree source (common between SKU1 and SKU2)
> + *
> + * Copyright (c) 2022, The Linux Foundation. All rights reserved.
> + */
> +
> +/{
> +   /* BOARD-SPECIFIC TOP LEVEL NODES */

Still wrong indentation.

> +	sound: sound {
> +		compatible = "google,sc7280-herobrine";
> +		model = "sc7280-wcd938x-max98360a-1mic";
> +




Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 2/8] arm64: dts: qcom: sc7280: audioreach: Add sound node
  2023-01-05 13:37 ` [PATCH v2 2/8] arm64: dts: qcom: sc7280: audioreach: Add sound node Srinivasa Rao Mandadapu
@ 2023-01-10 11:00   ` Krzysztof Kozlowski
  2023-01-19 12:13     ` Srinivasa Rao Mandadapu
  0 siblings, 1 reply; 17+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-10 11:00 UTC (permalink / raw)
  To: Srinivasa Rao Mandadapu, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka

On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
> Add sound node for sc7280 based audioreach platforms.
> 
> Include audioreach dtsi into crd-rev3 platform specific dts file.
> Also remove phandle to sound node, as audio routing is same as
> audioreach specific dtsi file.
> 

Thank you for your patch. There is something to discuss/improve.

> +#include <dt-bindings/sound/qcom,q6afe.h>
> +
> +/{
> +	/* BOARD-SPECIFIC TOP LEVEL NODES */
> +	sound: sound {
> +		compatible = "google,sc7280-herobrine";
> +		model = "SC7280-AUDIOREACH";
> +		adsp-mode;

There is no such property. Test DTS against your schema, so make
dtbs_check DT_SCHEMA_FILES=google,sc7280-herobrine

> +		audio-routing =
> +			"IN1_HPHL", "HPHL_OUT",
> +			"IN2_HPHR", "HPHR_OUT",
> +			"AMIC1", "MIC BIAS1",
> +			"AMIC2", "MIC BIAS2",
> +			"VA DMIC0", "MIC BIAS1",
> +			"VA DMIC1", "MIC BIAS1",
> +			"VA DMIC2", "MIC BIAS3",
> +			"VA DMIC3", "MIC BIAS3",
> +			"TX SWR_ADC0", "ADC1_OUTPUT",
> +			"TX SWR_ADC1", "ADC2_OUTPUT",
> +			"TX SWR_ADC2", "ADC3_OUTPUT",
> +			"TX SWR_DMIC0", "DMIC1_OUTPUT",
> +			"TX SWR_DMIC1", "DMIC2_OUTPUT",
> +			"TX SWR_DMIC2", "DMIC3_OUTPUT",
> +			"TX SWR_DMIC3", "DMIC4_OUTPUT",
> +			"TX SWR_DMIC4", "DMIC5_OUTPUT",
> +			"TX SWR_DMIC5", "DMIC6_OUTPUT",
> +			"TX SWR_DMIC6", "DMIC7_OUTPUT",
> +			"TX SWR_DMIC7", "DMIC8_OUTPUT";
> +
> +		qcom,msm-mbhc-hphl-swh = <1>;
> +		qcom,msm-mbhc-gnd-swh = <1>;
> +
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		#sound-dai-cells = <0>;
> +
> +		dai-link@0 {
> +			link-name = "WCD9385 Playback";
> +			reg = <0>;
> +
> +			cpu {
> +				sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
> +			};
> +			codec {
> +				sound-dai = <&wcd9385 0>, <&swr0 0>, <&lpass_rx_macro 0>;
> +			};
> +			platform {
> +				sound-dai = <&q6apm>;
> +			};
> +		};
> +
> +		dai-link@1 {
> +			link-name = "WCD9385 Capture";
> +			reg = <1>;
> +
> +			cpu {
> +				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
> +			};
> +			codec {
> +				sound-dai = <&wcd9385 1>, <&swr1 0>, <&lpass_tx_macro 0>;
> +			};
> +			platform {
> +				sound-dai = <&q6apm>;
> +			};
> +		};
> +
> +		dai-link@2 {
> +			link-name = "Amplifier Playback";
> +			reg = <3>;

Missing dtbs W=1 build.

> +
> +			cpu {
> +				sound-dai = <&q6apmbedai SECONDARY_MI2S_RX>;
> +			};
> +

Use consistent style. Either blank line or not between the
cpu/codec/platform nodes.

> +			codec {
> +				sound-dai = <&max98360a>;
> +			};
> +
> +			platform {
> +				sound-dai = <&q6apm>;
> +			};
> +		};
> +
> +		dai-link@3 {
> +			link-name = "DMIC";
> +			reg = <4>;

Same problem, wrong reg.

> +
> +			cpu {
> +				sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
> +			};
> +
> +			codec {
> +				sound-dai = <&lpass_va_macro 0>;
> +			};
> +
> +			platform {
> +				sound-dai = <&q6apm>;
> +			};
> +		};
> +	};
> +};

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 3/8] arm64: dts: qcom: sc7280: audioreach: Add lpass pil node
  2023-01-05 13:37 ` [PATCH v2 3/8] arm64: dts: qcom: sc7280: audioreach: Add lpass pil node Srinivasa Rao Mandadapu
@ 2023-01-10 11:08   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 17+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-10 11:08 UTC (permalink / raw)
  To: Srinivasa Rao Mandadapu, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka

On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
> Add lpass pil node for sc7280 based audioreach platforms.

LPASS PIL - these are acronyms.
> 

Subject: drop "audioreach" from every patch. Not a directory.

Both comments apply to all your patches.

> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
> Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>

Your patchset (with dependency) does not apply. Please rebase.

> ---
>  arch/arm64/boot/dts/qcom/sc7280.dtsi | 90 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 90 insertions(+)

There are several dtbs_check warnings:

/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-herobrine-villager-r1-lte.dtb:
sound: '#sound-dai-cells', 'qcom,msm-mbhc-gnd-swh',
'qcom,msm-mbhc-hphl-swh' do not match any of the regexes:
'^dai-link@[0-9a-f]$', 'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
sound: dai-link@0: 'platform' does not match any of the regexes:
'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
sound: dai-link@1: 'platform' does not match any of the regexes:
'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
sound: dai-link@2: 'platform' does not match any of the regexes:
'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
sound: dai-link@3: 'platform' does not match any of the regexes:
'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
sound: '#sound-dai-cells', 'adsp-mode', 'qcom,msm-mbhc-gnd-swh',
'qcom,msm-mbhc-hphl-swh' do not match any of the regexes:
'^dai-link@[0-9a-f]$', 'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-herobrine-villager-r1.dtb:
sound: '#sound-dai-cells', 'qcom,msm-mbhc-gnd-swh',
'qcom,msm-mbhc-hphl-swh' do not match any of the regexes:
'^dai-link@[0-9a-f]$', 'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-herobrine-crd.dtb:
sound: '#sound-dai-cells', 'qcom,msm-mbhc-gnd-swh',
'qcom,msm-mbhc-hphl-swh' do not match any of the regexes:
'^dai-link@[0-9a-f]$', 'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml
make[1]: Leaving directory '/home/krzk/dev/linux/linux/out'


/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-idp.dtb:
remoteproc@3000000: qcom,halt-regs:0: [228] is too short
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/remoteproc/qcom,sc7280-adsp-pil.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-idp.dtb:
remoteproc@3000000: glink-edge:gpr: 'q6apm', 'q6prm' do not match any of
the regexes: '^service@[1-9a-d]$', 'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/remoteproc/qcom,sc7280-adsp-pil.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-idp.dtb:
remoteproc@3000000: 'power-domain-names', 'reg-names', 'required-opps'
do not match any of the regexes: 'pinctrl-[0-9]+'
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/remoteproc/qcom,sc7280-adsp-pil.yaml


> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> index 0adf133..f10a663 100644
> --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> @@ -8,6 +8,7 @@
>  #include <dt-bindings/clock/qcom,dispcc-sc7280.h>
>  #include <dt-bindings/clock/qcom,gcc-sc7280.h>
>  #include <dt-bindings/clock/qcom,gpucc-sc7280.h>
> +#include <dt-bindings/clock/qcom,lpass-sc7280.h>
>  #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h>
>  #include <dt-bindings/clock/qcom,lpasscorecc-sc7280.h>
>  #include <dt-bindings/clock/qcom,rpmh.h>
> @@ -21,6 +22,7 @@
>  #include <dt-bindings/power/qcom-rpmpd.h>
>  #include <dt-bindings/reset/qcom,sdm845-aoss.h>
>  #include <dt-bindings/reset/qcom,sdm845-pdc.h>
> +#include <dt-bindings/soc/qcom,gpr.h>
>  #include <dt-bindings/soc/qcom,rpmh-rsc.h>
>  #include <dt-bindings/sound/qcom,lpass.h>
>  #include <dt-bindings/thermal/thermal.h>
> @@ -3436,6 +3438,94 @@
>  			status = "disabled";
>  		};
>  
> +		remoteproc_adsp: remoteproc@3000000 {
> +			compatible = "qcom,sc7280-adsp-pil";
> +			reg = <0 0x03000000 0 0x5000>, <0 0x0355b000 0 0x10>;
> +			reg-names = "qdsp6ss_base", "lpass_efuse";
> +
> +			interrupts-extended = <&pdc 6 IRQ_TYPE_LEVEL_HIGH>,
> +					      <&adsp_smp2p_in 0 IRQ_TYPE_NONE>,
> +					      <&adsp_smp2p_in 1 IRQ_TYPE_NONE>,
> +					      <&adsp_smp2p_in 2 IRQ_TYPE_NONE>,
> +					      <&adsp_smp2p_in 3 IRQ_TYPE_NONE>,
> +					      <&adsp_smp2p_in 7 IRQ_TYPE_NONE>;
> +
> +			interrupt-names = "wdog", "fatal", "ready",
> +				"handover", "stop-ack",  "shutdown-ack";
> +
> +			qcom,qmp = <&aoss_qmp>;
> +
> +			clocks = <&rpmhcc RPMH_CXO_CLK>,
> +				 <&gcc GCC_CFG_NOC_LPASS_CLK>;
> +
> +			clock-names = "xo", "gcc_cfg_noc_lpass";
> +
> +			iommus = <&apps_smmu 0x1800 0x0>;
> +
> +			power-domains =	<&rpmhpd SC7280_CX>;
> +			power-domain-names = "cx";
> +
> +			required-opps = <&rpmhpd_opp_nom>;
> +
> +			resets = <&pdc_reset PDC_AUDIO_SYNC_RESET>,
> +				 <&aoss_reset AOSS_CC_LPASS_RESTART>;
> +
> +			reset-names =  "pdc_sync", "cc_lpass";
> +			qcom,halt-regs = <&tcsr_1 0x3000 0x5000 0x8000 0x13000>;
> +
> +			memory-region = <&adsp_mem>;
> +
> +			qcom,smem-states = <&adsp_smp2p_out 0>;
> +			qcom,smem-state-names = "stop";
> +
> +			glink-edge {
> +				interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
> +						       IPCC_MPROC_SIGNAL_GLINK_QMP
> +						       IRQ_TYPE_EDGE_RISING>;
> +
> +				mboxes = <&ipcc IPCC_CLIENT_LPASS
> +					 IPCC_MPROC_SIGNAL_GLINK_QMP>;
> +
> +				label = "lpass";
> +				qcom,remote-pid = <2>;
> +
> +				gpr {
> +					compatible = "qcom,gpr";
> +					qcom,glink-channels = "adsp_apps";
> +					qcom,domain = <GPR_DOMAIN_ID_ADSP>;
> +					#address-cells = <1>;
> +					#size-cells = <0>;
> +					qcom,intents = <512 20>;
> +
> +					q6apm: q6apm {

This is for sure wrong. Please send your code based on newest
submissions. Do not start work on some old DTS full of issues, but the
new one with corrected.

You also did not run automated tools which would point all this out -
wrong name, missing unit address (you have address-cells above, right?)

> +						reg = <GPR_APM_MODULE_IID>;
> +						compatible = "qcom,q6apm";
> +						#sound-dai-cells = <0>;

Blank line

> +						q6apmdai: dais {
> +							compatible = "qcom,q6apm-dais";
> +							#sound-dai-cells = <1>;
> +							iommus = <&apps_smmu 0x1801 0x0>;
> +						};
> +
> +						q6apmbedai: bedais {
> +							compatible = "qcom,q6apm-lpass-dais";
> +							#sound-dai-cells = <1>;
> +						};
> +					};
> +
> +					q6prm: q6prm {
> +						reg = <GPR_PRM_MODULE_IID>;
> +						compatible = "qcom,q6prm";
> +						#clock-cells = <2>;
> +						q6prmcc: cc {
> +							compatible = "qcom,q6prm-lpass-clocks";
> +							#clock-cells = <2>;
> +						};
> +					};
> +				};
> +			};
> +		};
> +
>  		remoteproc_wpss: remoteproc@8a00000 {
>  			compatible = "qcom,sc7280-wpss-pil";
>  			reg = <0 0x08a00000 0 0x10000>;

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/8] arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock nodes
  2023-01-05 13:37 ` [PATCH v2 4/8] arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock nodes Srinivasa Rao Mandadapu
@ 2023-01-10 11:12   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 17+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-10 11:12 UTC (permalink / raw)
  To: Srinivasa Rao Mandadapu, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka

On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
> Update VA, RX and TX macro and lpass_tlmm clock properties and
> enable them.
> 
> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
> Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
> ---
>  .../qcom/sc7280-herobrine-audioreach-wcd9385.dtsi  | 62 ++++++++++++++++++++++
>  1 file changed, 62 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> index e1fe56c..8c55753 100644
> --- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> @@ -8,6 +8,10 @@
>  
>  #include <dt-bindings/sound/qcom,q6afe.h>
>  
> +/delete-node/ &lpass_rx_macro;
> +/delete-node/ &lpass_tx_macro;
> +/delete-node/ &lpass_va_macro;
> +
>  /{
>  	/* BOARD-SPECIFIC TOP LEVEL NODES */
>  	sound: sound {
> @@ -107,3 +111,61 @@
>  		};
>  	};
>  };
> +
> +&soc {
> +	lpass_rx_macro: codec@3200000 {

These should be properties of DTSI. The SoC either has them or not. It's
not conditional or dual-setup...

> +		compatible = "qcom,sc7280-lpass-rx-macro";
> +		reg = <0 0x03200000 0 0x1000>;
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&lpass_rx_swr_clk>, <&lpass_rx_swr_data>;
> +
> +		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK  LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&lpass_va_macro>;
> +
> +		clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
> +
> +		#clock-cells = <0>;
> +		#sound-dai-cells = <1>;
> +	};

/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
codec@3370000: clock-names: 'oneOf' conditional failed, one must be fixed:
	['mclk', 'macro', 'dcodec'] is too long
	'core' was expected
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
codec@3370000: Unevaluated properties are not allowed ('clock-names' was
unexpected)
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
audio@3987000: clocks: [[218, 4], [221, 12], [221, 11], [221, 6], [221,
8], [223, 8], [223, 5], [223, 6], [223, 7], [218, 10]] is too long
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
audio@3987000: clock-names: 'oneOf' conditional failed, one must be fixed:
	['aon_cc_audio_hm_h', 'audio_cc_ext_mclk0',
'core_cc_sysnoc_mport_core', 'core_cc_ext_if0_ibit',
'core_cc_ext_if1_ibit', 'audio_cc_codec_mem', 'audio_cc_codec_mem0',
'audio_cc_codec_mem1', 'audio_cc_codec_mem2', 'aon_cc_va_mem0'] is too long
	'core_cc_sysnoc_mport_core' was expected
	'audio_cc_codec_mem' was expected
	'audio_cc_codec_mem0' was expected
	'audio_cc_codec_mem1' was expected
	'audio_cc_codec_mem2' was expected
	'aon_cc_va_mem0' was expected
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml

I posted recently several fixes, so some of the warnings might be
skipped. But I think you did not test this at all...

> +
> +	lpass_tx_macro: codec@3220000 {
> +		compatible = "qcom,sc7280-lpass-tx-macro";
> +		reg = <0 0x03220000 0 0x1000>;
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&lpass_tx_swr_clk>, <&lpass_tx_swr_data>;
> +
> +		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK  LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&lpass_va_macro>;
> +
> +		clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
> +
> +		#clock-cells = <0>;
> +		#sound-dai-cells = <1>;
> +

Drop blank line

> +	};
> +
> +	lpass_va_macro: codec@3370000 {
> +		compatible = "qcom,sc7280-lpass-va-macro";
> +		reg = <0 0x03370000 0 0x1000>;
> +
> +		pinctrl-0 = <&lpass_dmic01_clk>, <&lpass_dmic01_data>;
> +		pinctrl-names = "default";
> +
> +		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
> +
> +		clock-names = "mclk", "macro", "dcodec";
> +
> +		#clock-cells = <0>;
> +		#sound-dai-cells = <1>;
> +	};
> +};

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 5/8] arm64: dts: qcom: sc7280: audioreach: Update lpass_tlmm node
  2023-01-05 13:37 ` [PATCH v2 5/8] arm64: dts: qcom: sc7280: audioreach: Update lpass_tlmm node Srinivasa Rao Mandadapu
@ 2023-01-10 11:13   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 17+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-10 11:13 UTC (permalink / raw)
  To: Srinivasa Rao Mandadapu, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka

On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
> Update lpass_tlmm clock properties, as different clock sources
> are required in ADSP enabled platforms
> 
> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
> Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
> ---
>  .../arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> index 8c55753..7583c3c 100644
> --- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> @@ -169,3 +169,12 @@
>  		#sound-dai-cells = <1>;
>  	};
>  };
> +
> +&lpass_tlmm {

I don't think order of nodes is kept anymore...

> +	clocks = <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +		 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
> +
> +	clock-names = "core", "audio";
> +	reg = <0 0x033c0000 0x0 0x20000>,
> +	      <0 0x03550000 0x0 0xa100>;
> +};

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 8/8] arm64: dts: qcom: sc7280: audioreach: Disable legacy path clock nodes
  2023-01-05 13:37 ` [PATCH v2 8/8] arm64: dts: qcom: sc7280: audioreach: Disable legacy path clock nodes Srinivasa Rao Mandadapu
@ 2023-01-10 11:13   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 17+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-10 11:13 UTC (permalink / raw)
  To: Srinivasa Rao Mandadapu, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka

On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
> Disable legacy path clock nodes to avoid conflicts with audioreach
> clock node.
> 
> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
> Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
> ---
>  .../boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi   | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> index 175ed9c..a88b305 100644
> --- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> @@ -190,3 +190,15 @@
>  &swr1 {
>  	resets = <&lpasscc LPASS_AUDIO_SWR_TX_CGCR>;
>  };
> +
> +&lpass_aon {

Not ordered.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file
  2023-01-10 10:57   ` Krzysztof Kozlowski
@ 2023-01-19 12:08     ` Srinivasa Rao Mandadapu
  0 siblings, 0 replies; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-19 12:08 UTC (permalink / raw)
  To: Krzysztof Kozlowski, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka


On 1/10/2023 4:27 PM, Krzysztof Kozlowski wrote:
Thanks for your time Krzysztof!!!
> On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
>> Split common idp dtsi file into audio specific dtsi and common
>> idp dtsi file.
>>
>> It is required to isolate idp and crd-rev3 platform device tree nodes
>> and convert crd-rev3 platform device tree nodes into audioreach specific
>> device tree nodes.
>>
>> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
>> Tested-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
>> ---
> Please include a changelog - either per patch or in cover letter.
Okay. Will include and re post it.
>
>>   arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi | 135 +++++++++++++++++++++++++
>>   arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts     |   1 +
>>   arch/arm64/boot/dts/qcom/sc7280-idp.dtsi       | 126 -----------------------
>>   3 files changed, 136 insertions(+), 126 deletions(-)
>>   create mode 100644 arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
>>
>> diff --git a/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi b/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
>> new file mode 100644
>> index 0000000..d1aea28
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/qcom/sc7280-audio-idp.dtsi
>> @@ -0,0 +1,135 @@
>> +// SPDX-License-Identifier: BSD-3-Clause
>> +/*
>> + * sc7280 Audio IDP board device tree source (common between SKU1 and SKU2)
>> + *
>> + * Copyright (c) 2022, The Linux Foundation. All rights reserved.
>> + */
>> +
>> +/{
>> +   /* BOARD-SPECIFIC TOP LEVEL NODES */
> Still wrong indentation.
Okay. Will fix it.
>
>> +	sound: sound {
>> +		compatible = "google,sc7280-herobrine";
>> +		model = "sc7280-wcd938x-max98360a-1mic";
>> +
>
>
>
> Best regards,
> Krzysztof
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 2/8] arm64: dts: qcom: sc7280: audioreach: Add sound node
  2023-01-10 11:00   ` Krzysztof Kozlowski
@ 2023-01-19 12:13     ` Srinivasa Rao Mandadapu
  0 siblings, 0 replies; 17+ messages in thread
From: Srinivasa Rao Mandadapu @ 2023-01-19 12:13 UTC (permalink / raw)
  To: Krzysztof Kozlowski, agross, andersson, robh+dt,
	krzysztof.kozlowski+dt, linux-arm-msm, devicetree, linux-kernel,
	quic_rohkumar, srinivas.kandagatla, dianders, swboyd, judyhsiao,
	konrad.dybcio, mka


On 1/10/2023 4:30 PM, Krzysztof Kozlowski wrote:
Thanks for your time Krzysztof!!!
> On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
>> Add sound node for sc7280 based audioreach platforms.
>>
>> Include audioreach dtsi into crd-rev3 platform specific dts file.
>> Also remove phandle to sound node, as audio routing is same as
>> audioreach specific dtsi file.
>>
> Thank you for your patch. There is something to discuss/improve.
>
>> +#include <dt-bindings/sound/qcom,q6afe.h>
>> +
>> +/{
>> +	/* BOARD-SPECIFIC TOP LEVEL NODES */
>> +	sound: sound {
>> +		compatible = "google,sc7280-herobrine";
>> +		model = "SC7280-AUDIOREACH";
>> +		adsp-mode;
> There is no such property. Test DTS against your schema, so make
> dtbs_check DT_SCHEMA_FILES=google,sc7280-herobrine
Okay. Will fix it.
>
>> +		audio-routing =
>> +			"IN1_HPHL", "HPHL_OUT",
>> +			"IN2_HPHR", "HPHR_OUT",
>> +			"AMIC1", "MIC BIAS1",
>> +			"AMIC2", "MIC BIAS2",
>> +			"VA DMIC0", "MIC BIAS1",
>> +			"VA DMIC1", "MIC BIAS1",
>> +			"VA DMIC2", "MIC BIAS3",
>> +			"VA DMIC3", "MIC BIAS3",
>> +			"TX SWR_ADC0", "ADC1_OUTPUT",
>> +			"TX SWR_ADC1", "ADC2_OUTPUT",
>> +			"TX SWR_ADC2", "ADC3_OUTPUT",
>> +			"TX SWR_DMIC0", "DMIC1_OUTPUT",
>> +			"TX SWR_DMIC1", "DMIC2_OUTPUT",
>> +			"TX SWR_DMIC2", "DMIC3_OUTPUT",
>> +			"TX SWR_DMIC3", "DMIC4_OUTPUT",
>> +			"TX SWR_DMIC4", "DMIC5_OUTPUT",
>> +			"TX SWR_DMIC5", "DMIC6_OUTPUT",
>> +			"TX SWR_DMIC6", "DMIC7_OUTPUT",
>> +			"TX SWR_DMIC7", "DMIC8_OUTPUT";
>> +
>> +		qcom,msm-mbhc-hphl-swh = <1>;
>> +		qcom,msm-mbhc-gnd-swh = <1>;
>> +
>> +		#address-cells = <1>;
>> +		#size-cells = <0>;
>> +		#sound-dai-cells = <0>;
>> +
>> +		dai-link@0 {
>> +			link-name = "WCD9385 Playback";
>> +			reg = <0>;
>> +
>> +			cpu {
>> +				sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
>> +			};
>> +			codec {
>> +				sound-dai = <&wcd9385 0>, <&swr0 0>, <&lpass_rx_macro 0>;
>> +			};
>> +			platform {
>> +				sound-dai = <&q6apm>;
>> +			};
>> +		};
>> +
>> +		dai-link@1 {
>> +			link-name = "WCD9385 Capture";
>> +			reg = <1>;
>> +
>> +			cpu {
>> +				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
>> +			};
>> +			codec {
>> +				sound-dai = <&wcd9385 1>, <&swr1 0>, <&lpass_tx_macro 0>;
>> +			};
>> +			platform {
>> +				sound-dai = <&q6apm>;
>> +			};
>> +		};
>> +
>> +		dai-link@2 {
>> +			link-name = "Amplifier Playback";
>> +			reg = <3>;
> Missing dtbs W=1 build.
Okay. Will fix it.
>
>> +
>> +			cpu {
>> +				sound-dai = <&q6apmbedai SECONDARY_MI2S_RX>;
>> +			};
>> +
> Use consistent style. Either blank line or not between the
> cpu/codec/platform nodes.
Okay. will fix it.
>
>> +			codec {
>> +				sound-dai = <&max98360a>;
>> +			};
>> +
>> +			platform {
>> +				sound-dai = <&q6apm>;
>> +			};
>> +		};
>> +
>> +		dai-link@3 {
>> +			link-name = "DMIC";
>> +			reg = <4>;
> Same problem, wrong reg.
Okay.
>
>> +
>> +			cpu {
>> +				sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
>> +			};
>> +
>> +			codec {
>> +				sound-dai = <&lpass_va_macro 0>;
>> +			};
>> +
>> +			platform {
>> +				sound-dai = <&q6apm>;
>> +			};
>> +		};
>> +	};
>> +};
> Best regards,
> Krzysztof
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2023-01-19 12:13 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-05 13:37 [PATCH v2 0/8] Add SC7280 audioreach device tree nodes Srinivasa Rao Mandadapu
2023-01-05 13:37 ` [PATCH v2 1/8] arm64: dts: qcom: sc7280: Extract audio nodes from common idp dtsi file Srinivasa Rao Mandadapu
2023-01-10 10:57   ` Krzysztof Kozlowski
2023-01-19 12:08     ` Srinivasa Rao Mandadapu
2023-01-05 13:37 ` [PATCH v2 2/8] arm64: dts: qcom: sc7280: audioreach: Add sound node Srinivasa Rao Mandadapu
2023-01-10 11:00   ` Krzysztof Kozlowski
2023-01-19 12:13     ` Srinivasa Rao Mandadapu
2023-01-05 13:37 ` [PATCH v2 3/8] arm64: dts: qcom: sc7280: audioreach: Add lpass pil node Srinivasa Rao Mandadapu
2023-01-10 11:08   ` Krzysztof Kozlowski
2023-01-05 13:37 ` [PATCH v2 4/8] arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock nodes Srinivasa Rao Mandadapu
2023-01-10 11:12   ` Krzysztof Kozlowski
2023-01-05 13:37 ` [PATCH v2 5/8] arm64: dts: qcom: sc7280: audioreach: Update lpass_tlmm node Srinivasa Rao Mandadapu
2023-01-10 11:13   ` Krzysztof Kozlowski
2023-01-05 13:37 ` [PATCH v2 6/8] arm64: dts: qcom: sc7280: audioreach: Update lpasscc reg property Srinivasa Rao Mandadapu
2023-01-05 13:37 ` [PATCH v2 7/8] arm64: dts: qcom: sc7280: audioreach: Add CGCR reset property Srinivasa Rao Mandadapu
2023-01-05 13:37 ` [PATCH v2 8/8] arm64: dts: qcom: sc7280: audioreach: Disable legacy path clock nodes Srinivasa Rao Mandadapu
2023-01-10 11:13   ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).