linux-remoteproc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64)
@ 2024-04-24 16:23 Luca Weiss
  2024-04-24 16:23 ` [PATCH 1/7] rpmsg: qcom_smd: Don't print error during probe deferral Luca Weiss
                   ` (8 more replies)
  0 siblings, 9 replies; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:23 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

The first patch is for removing a bogus error warning I've noticed while
developing this on msm8226 - there the patches are also coming later for
this SoC since apcs is getting hooked up to cpufreq there also.

Apart from usages from the qcom,smsm driver (patches coming!) all other
usages of the apcs mailbox now go via the mailbox driver - where one is
used, so some arm32 boards will continue using "qcom,ipc*" properties in
the short or long term.

Only compile-tested apart from msm8953 (tested on sdm632-fairphone-fp3)
and msm8974 (tested on msm8974pro-fairphone-fp2), but I don't expect any
complications with this.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
Luca Weiss (7):
      rpmsg: qcom_smd: Don't print error during probe deferral
      ARM: dts: qcom: msm8974: Use mboxes properties for APCS
      arm64: dts: qcom: msm8916: Use mboxes properties for APCS
      arm64: dts: qcom: msm8939: Use mboxes properties for APCS
      arm64: dts: qcom: msm8953: Use mboxes properties for APCS
      arm64: dts: qcom: msm8976: Use mboxes properties for APCS
      arm64: dts: qcom: msm8994: Use mboxes properties for APCS

 arch/arm/boot/dts/qcom/qcom-msm8974.dtsi | 14 +++++++-------
 arch/arm64/boot/dts/qcom/msm8916.dtsi    | 10 +++++-----
 arch/arm64/boot/dts/qcom/msm8939.dtsi    |  4 ++--
 arch/arm64/boot/dts/qcom/msm8953.dtsi    | 10 +++++-----
 arch/arm64/boot/dts/qcom/msm8976.dtsi    |  8 ++++----
 arch/arm64/boot/dts/qcom/msm8994.dtsi    |  6 +++---
 drivers/rpmsg/qcom_smd.c                 |  3 ++-
 7 files changed, 28 insertions(+), 27 deletions(-)
---
base-commit: 43173e6dbaa227f3107310d4df4a3bacd5e0df33
change-id: 20240423-apcs-mboxes-12ee6c01a5b3

Best regards,
-- 
Luca Weiss <luca@z3ntu.xyz>


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

* [PATCH 1/7] rpmsg: qcom_smd: Don't print error during probe deferral
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
@ 2024-04-24 16:23 ` Luca Weiss
  2024-04-24 16:54   ` Bjorn Andersson
  2024-04-24 16:23 ` [PATCH 2/7] ARM: dts: qcom: msm8974: Use mboxes properties for APCS Luca Weiss
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:23 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

When the mailbox driver has not probed yet, skip printing the error
message since it's just going to confuse users.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 drivers/rpmsg/qcom_smd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c
index 43f601c84b4f..6fc299657adf 100644
--- a/drivers/rpmsg/qcom_smd.c
+++ b/drivers/rpmsg/qcom_smd.c
@@ -1502,7 +1502,8 @@ struct qcom_smd_edge *qcom_smd_register_edge(struct device *parent,
 
 	ret = qcom_smd_parse_edge(&edge->dev, node, edge);
 	if (ret) {
-		dev_err(&edge->dev, "failed to parse smd edge\n");
+		if (ret != -EPROBE_DEFER)
+			dev_err(&edge->dev, "failed to parse smd edge\n");
 		goto unregister_dev;
 	}
 

-- 
2.44.0


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

* [PATCH 2/7] ARM: dts: qcom: msm8974: Use mboxes properties for APCS
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
  2024-04-24 16:23 ` [PATCH 1/7] rpmsg: qcom_smd: Don't print error during probe deferral Luca Weiss
@ 2024-04-24 16:23 ` Luca Weiss
  2024-04-24 20:13   ` Konrad Dybcio
  2024-04-24 16:23 ` [PATCH 3/7] arm64: dts: qcom: msm8916: " Luca Weiss
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:23 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

Instead of passing the syscon to the various nodes, use the mbox
interface using the mboxes property.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 arch/arm/boot/dts/qcom/qcom-msm8974.dtsi | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/arm/boot/dts/qcom/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8974.dtsi
index 20958c47ff3a..0f1dc4355c7a 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-msm8974.dtsi
@@ -130,7 +130,7 @@ master-stats {
 
 		smd-edge {
 			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
-			qcom,ipc = <&apcs 8 0>;
+			mboxes = <&apcs 0>;
 			qcom,smd-edge = <15>;
 
 			rpm_requests: rpm-requests {
@@ -217,7 +217,7 @@ smp2p-adsp {
 		interrupt-parent = <&intc>;
 		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 10>;
+		mboxes = <&apcs 10>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <2>;
@@ -242,7 +242,7 @@ smp2p-modem {
 		interrupt-parent = <&intc>;
 		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 14>;
+		mboxes = <&apcs 14>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <1>;
@@ -267,7 +267,7 @@ smp2p-wcnss {
 		interrupt-parent = <&intc>;
 		interrupts = <GIC_SPI 143 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 18>;
+		mboxes = <&apcs 18>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <4>;
@@ -757,7 +757,7 @@ iris {
 			smd-edge {
 				interrupts = <GIC_SPI 142 IRQ_TYPE_EDGE_RISING>;
 
-				qcom,ipc = <&apcs 8 17>;
+				mboxes = <&apcs 17>;
 				qcom,smd-edge = <6>;
 
 				wcnss {
@@ -1576,7 +1576,7 @@ bam_dmux: bam-dmux {
 			smd-edge {
 				interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>;
 
-				qcom,ipc = <&apcs 8 12>;
+				mboxes = <&apcs 12>;
 				qcom,smd-edge = <0>;
 
 				label = "modem";
@@ -2213,7 +2213,7 @@ remoteproc_adsp: remoteproc@fe200000 {
 			smd-edge {
 				interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
 
-				qcom,ipc = <&apcs 8 8>;
+				mboxes = <&apcs 8>;
 				qcom,smd-edge = <1>;
 				label = "lpass";
 			};

-- 
2.44.0


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

* [PATCH 3/7] arm64: dts: qcom: msm8916: Use mboxes properties for APCS
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
  2024-04-24 16:23 ` [PATCH 1/7] rpmsg: qcom_smd: Don't print error during probe deferral Luca Weiss
  2024-04-24 16:23 ` [PATCH 2/7] ARM: dts: qcom: msm8974: Use mboxes properties for APCS Luca Weiss
@ 2024-04-24 16:23 ` Luca Weiss
  2024-04-24 20:14   ` Konrad Dybcio
  2024-04-24 16:23 ` [PATCH 4/7] arm64: dts: qcom: msm8939: " Luca Weiss
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:23 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

Instead of passing the syscon to the various nodes, use the mbox
interface using the mboxes property.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 arch/arm64/boot/dts/qcom/msm8916.dtsi | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index cedff4166bfb..46bb322ae133 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -308,7 +308,7 @@ rpm: remoteproc {
 
 		smd-edge {
 			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
-			qcom,ipc = <&apcs 8 0>;
+			mboxes = <&apcs 0>;
 			qcom,smd-edge = <15>;
 
 			rpm_requests: rpm-requests {
@@ -360,7 +360,7 @@ smp2p-hexagon {
 
 		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 14>;
+		mboxes = <&apcs 14>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <1>;
@@ -385,7 +385,7 @@ smp2p-wcnss {
 
 		interrupts = <GIC_SPI 143 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 18>;
+		mboxes = <&apcs 18>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <4>;
@@ -1978,7 +1978,7 @@ smd-edge {
 				interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>;
 
 				qcom,smd-edge = <0>;
-				qcom,ipc = <&apcs 8 12>;
+				mboxes = <&apcs 12>;
 				qcom,remote-pid = <1>;
 
 				label = "hexagon";
@@ -2459,7 +2459,7 @@ wcnss_iris: iris {
 			smd-edge {
 				interrupts = <GIC_SPI 142 IRQ_TYPE_EDGE_RISING>;
 
-				qcom,ipc = <&apcs 8 17>;
+				mboxes = <&apcs 17>;
 				qcom,smd-edge = <6>;
 				qcom,remote-pid = <4>;
 

-- 
2.44.0


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

* [PATCH 4/7] arm64: dts: qcom: msm8939: Use mboxes properties for APCS
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
                   ` (2 preceding siblings ...)
  2024-04-24 16:23 ` [PATCH 3/7] arm64: dts: qcom: msm8916: " Luca Weiss
@ 2024-04-24 16:23 ` Luca Weiss
  2024-04-24 20:14   ` Konrad Dybcio
  2024-04-24 16:23 ` [PATCH 5/7] arm64: dts: qcom: msm8953: " Luca Weiss
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:23 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

Instead of passing the syscon to the various nodes, use the mbox
interface using the mboxes property.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 arch/arm64/boot/dts/qcom/msm8939.dtsi | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8939.dtsi b/arch/arm64/boot/dts/qcom/msm8939.dtsi
index dd45975682b2..95487de2ca6a 100644
--- a/arch/arm64/boot/dts/qcom/msm8939.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8939.dtsi
@@ -248,7 +248,7 @@ rpm: remoteproc {
 
 		smd-edge {
 			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
-			qcom,ipc = <&apcs1_mbox 8 0>;
+			mboxes = <&apcs1_mbox 0>;
 			qcom,smd-edge = <15>;
 
 			rpm_requests: rpm-requests {
@@ -2067,7 +2067,7 @@ wcnss_iris: iris {
 
 			smd-edge {
 				interrupts = <GIC_SPI 142 IRQ_TYPE_EDGE_RISING>;
-				qcom,ipc = <&apcs1_mbox 8 17>;
+				mboxes = <&apcs1_mbox 17>;
 				qcom,smd-edge = <6>;
 				qcom,remote-pid = <4>;
 

-- 
2.44.0


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

* [PATCH 5/7] arm64: dts: qcom: msm8953: Use mboxes properties for APCS
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
                   ` (3 preceding siblings ...)
  2024-04-24 16:23 ` [PATCH 4/7] arm64: dts: qcom: msm8939: " Luca Weiss
@ 2024-04-24 16:23 ` Luca Weiss
  2024-04-24 20:14   ` Konrad Dybcio
  2024-04-24 16:23 ` [PATCH 6/7] arm64: dts: qcom: msm8976: " Luca Weiss
                   ` (3 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:23 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

Instead of passing the syscon to the various nodes, use the mbox
interface using the mboxes property.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 arch/arm64/boot/dts/qcom/msm8953.dtsi | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8953.dtsi b/arch/arm64/boot/dts/qcom/msm8953.dtsi
index f1011bb641c6..650ad75923f8 100644
--- a/arch/arm64/boot/dts/qcom/msm8953.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8953.dtsi
@@ -195,7 +195,7 @@ rpm: remoteproc {
 
 		smd-edge {
 			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
-			qcom,ipc = <&apcs 8 0>;
+			mboxes = <&apcs 0>;
 			qcom,smd-edge = <15>;
 
 			rpm_requests: rpm-requests {
@@ -361,7 +361,7 @@ smp2p-modem {
 
 		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 14>;
+		mboxes = <&apcs 14>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <1>;
@@ -386,7 +386,7 @@ smp2p-wcnss {
 
 		interrupts = <GIC_SPI 143 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 18>;
+		mboxes = <&apcs 18>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <4>;
@@ -1267,7 +1267,7 @@ smd-edge {
 				interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>;
 
 				qcom,smd-edge = <0>;
-				qcom,ipc = <&apcs 8 12>;
+				mboxes = <&apcs 12>;
 				qcom,remote-pid = <1>;
 
 				label = "modem";
@@ -1734,7 +1734,7 @@ wcnss_iris: iris {
 			smd-edge {
 				interrupts = <GIC_SPI 142 IRQ_TYPE_EDGE_RISING>;
 
-				qcom,ipc = <&apcs 8 17>;
+				mboxes = <&apcs 17>;
 				qcom,smd-edge = <6>;
 				qcom,remote-pid = <4>;
 

-- 
2.44.0


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

* [PATCH 6/7] arm64: dts: qcom: msm8976: Use mboxes properties for APCS
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
                   ` (4 preceding siblings ...)
  2024-04-24 16:23 ` [PATCH 5/7] arm64: dts: qcom: msm8953: " Luca Weiss
@ 2024-04-24 16:23 ` Luca Weiss
  2024-04-24 20:14   ` Konrad Dybcio
  2024-04-24 16:24 ` [PATCH 7/7] arm64: dts: qcom: msm8994: " Luca Weiss
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:23 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

Instead of passing the syscon to the various nodes, use the mbox
interface using the mboxes property.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 arch/arm64/boot/dts/qcom/msm8976.dtsi | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8976.dtsi b/arch/arm64/boot/dts/qcom/msm8976.dtsi
index d2bb1ada361a..9ca0867e45ba 100644
--- a/arch/arm64/boot/dts/qcom/msm8976.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8976.dtsi
@@ -237,7 +237,7 @@ rpm: remoteproc {
 
 		smd-edge {
 			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
-			qcom,ipc = <&apcs 8 0>;
+			mboxes = <&apcs 0>;
 			qcom,smd-edge = <15>;
 
 			rpm_requests: rpm-requests {
@@ -361,7 +361,7 @@ tz-apps@8dd00000 {
 	smp2p-hexagon {
 		compatible = "qcom,smp2p";
 		interrupts = <GIC_SPI 291 IRQ_TYPE_EDGE_RISING>;
-		qcom,ipc = <&apcs 8 10>;
+		mboxes = <&apcs 10>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <2>;
@@ -384,7 +384,7 @@ adsp_smp2p_in: slave-kernel {
 	smp2p-modem {
 		compatible = "qcom,smp2p";
 		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
-		qcom,ipc = <&apcs 8 14>;
+		mboxes = <&apcs 14>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <1>;
@@ -407,7 +407,7 @@ modem_smp2p_in: slave-kernel {
 	smp2p-wcnss {
 		compatible = "qcom,smp2p";
 		interrupts = <GIC_SPI 143 IRQ_TYPE_EDGE_RISING>;
-		qcom,ipc = <&apcs 8 18>;
+		mboxes = <&apcs 18>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <4>;

-- 
2.44.0


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

* [PATCH 7/7] arm64: dts: qcom: msm8994: Use mboxes properties for APCS
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
                   ` (5 preceding siblings ...)
  2024-04-24 16:23 ` [PATCH 6/7] arm64: dts: qcom: msm8976: " Luca Weiss
@ 2024-04-24 16:24 ` Luca Weiss
  2024-04-24 20:15   ` Konrad Dybcio
  2024-04-24 16:37 ` [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
  2024-04-24 16:55 ` Bjorn Andersson
  8 siblings, 1 reply; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:24 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree, Luca Weiss

Instead of passing the syscon to the various nodes, use the mbox
interface using the mboxes property.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 arch/arm64/boot/dts/qcom/msm8994.dtsi | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8994.dtsi b/arch/arm64/boot/dts/qcom/msm8994.dtsi
index 695e541832ad..9949d2cd23d8 100644
--- a/arch/arm64/boot/dts/qcom/msm8994.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8994.dtsi
@@ -183,7 +183,7 @@ rpm: remoteproc {
 
 		smd-edge {
 			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
-			qcom,ipc = <&apcs 8 0>;
+			mboxes = <&apcs 0>;
 			qcom,smd-edge = <15>;
 			qcom,remote-pid = <6>;
 
@@ -300,7 +300,7 @@ smp2p-lpass {
 
 		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 10>;
+		mboxes = <&apcs 10>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <2>;
@@ -325,7 +325,7 @@ smp2p-modem {
 		interrupt-parent = <&intc>;
 		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
 
-		qcom,ipc = <&apcs 8 14>;
+		mboxes = <&apcs 14>;
 
 		qcom,local-pid = <0>;
 		qcom,remote-pid = <1>;

-- 
2.44.0


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

* Re: [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64)
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
                   ` (6 preceding siblings ...)
  2024-04-24 16:24 ` [PATCH 7/7] arm64: dts: qcom: msm8994: " Luca Weiss
@ 2024-04-24 16:37 ` Luca Weiss
  2024-04-24 16:55 ` Bjorn Andersson
  8 siblings, 0 replies; 17+ messages in thread
From: Luca Weiss @ 2024-04-24 16:37 UTC (permalink / raw)
  To: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree

On Mittwoch, 24. April 2024 18:23:53 MESZ Luca Weiss wrote:
> The first patch is for removing a bogus error warning I've noticed while
> developing this on msm8226 - there the patches are also coming later for
> this SoC since apcs is getting hooked up to cpufreq there also.
> 
> Apart from usages from the qcom,smsm driver (patches coming!) all other
> usages of the apcs mailbox now go via the mailbox driver - where one is
> used, so some arm32 boards will continue using "qcom,ipc*" properties in
> the short or long term.
> 
> Only compile-tested apart from msm8953 (tested on sdm632-fairphone-fp3)
> and msm8974 (tested on msm8974pro-fairphone-fp2), but I don't expect any
> complications with this.

I think I forgot to mention this, but the msm8974 patch depends on
this series:
https://lore.kernel.org/linux-arm-msm/20240408-msm8974-apcs-v1-0-90cb7368836e@z3ntu.xyz/

> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---
> Luca Weiss (7):
>       rpmsg: qcom_smd: Don't print error during probe deferral
>       ARM: dts: qcom: msm8974: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8916: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8939: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8953: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8976: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8994: Use mboxes properties for APCS
> 
>  arch/arm/boot/dts/qcom/qcom-msm8974.dtsi | 14 +++++++-------
>  arch/arm64/boot/dts/qcom/msm8916.dtsi    | 10 +++++-----
>  arch/arm64/boot/dts/qcom/msm8939.dtsi    |  4 ++--
>  arch/arm64/boot/dts/qcom/msm8953.dtsi    | 10 +++++-----
>  arch/arm64/boot/dts/qcom/msm8976.dtsi    |  8 ++++----
>  arch/arm64/boot/dts/qcom/msm8994.dtsi    |  6 +++---
>  drivers/rpmsg/qcom_smd.c                 |  3 ++-
>  7 files changed, 28 insertions(+), 27 deletions(-)
> ---
> base-commit: 43173e6dbaa227f3107310d4df4a3bacd5e0df33
> change-id: 20240423-apcs-mboxes-12ee6c01a5b3
> 
> Best regards,
> 





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

* Re: [PATCH 1/7] rpmsg: qcom_smd: Don't print error during probe deferral
  2024-04-24 16:23 ` [PATCH 1/7] rpmsg: qcom_smd: Don't print error during probe deferral Luca Weiss
@ 2024-04-24 16:54   ` Bjorn Andersson
  0 siblings, 0 replies; 17+ messages in thread
From: Bjorn Andersson @ 2024-04-24 16:54 UTC (permalink / raw)
  To: Luca Weiss
  Cc: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, linux-arm-msm, linux-remoteproc, linux-kernel,
	devicetree

On Wed, Apr 24, 2024 at 06:23:54PM +0200, Luca Weiss wrote:
> When the mailbox driver has not probed yet, skip printing the error
> message since it's just going to confuse users.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---
>  drivers/rpmsg/qcom_smd.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c
> index 43f601c84b4f..6fc299657adf 100644
> --- a/drivers/rpmsg/qcom_smd.c
> +++ b/drivers/rpmsg/qcom_smd.c
> @@ -1502,7 +1502,8 @@ struct qcom_smd_edge *qcom_smd_register_edge(struct device *parent,
>  
>  	ret = qcom_smd_parse_edge(&edge->dev, node, edge);
>  	if (ret) {
> -		dev_err(&edge->dev, "failed to parse smd edge\n");
> +		if (ret != -EPROBE_DEFER)
> +			dev_err(&edge->dev, "failed to parse smd edge\n");

In the described case, this error message would not be entirely
accurate, and the cause is not accurately captured in devices_deferred.

Unless I'm mistaken, it seems like qcom_smd_parse_edge() will also print
a more useful error in every other case, except after the mbox_chan !=
-ENODEV check..

How about making that:

	if (PTR_ERR(edge->mbox_chan) != -ENODEV) {
		ret = dev_err_probe(dev, PTR_ERR(edge->mbox_chan),
				    "failed to acquire IPC mailbox\n");
		goto put_node;
	}

And then drop the error print here in qcom_smd_register_edge().

It would bring us the devices_deferred tracking, and it would avoid the
double print in all other cases.

Regards,
Bjorn

>  		goto unregister_dev;
>  	}
>  
> 
> -- 
> 2.44.0
> 

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

* Re: [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64)
  2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
                   ` (7 preceding siblings ...)
  2024-04-24 16:37 ` [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
@ 2024-04-24 16:55 ` Bjorn Andersson
  8 siblings, 0 replies; 17+ messages in thread
From: Bjorn Andersson @ 2024-04-24 16:55 UTC (permalink / raw)
  To: Luca Weiss
  Cc: ~postmarketos/upstreaming, phone-devel, Bjorn Andersson,
	Mathieu Poirier, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, linux-arm-msm, linux-remoteproc, linux-kernel,
	devicetree

On Wed, Apr 24, 2024 at 06:23:53PM +0200, Luca Weiss wrote:
> The first patch is for removing a bogus error warning I've noticed while
> developing this on msm8226 - there the patches are also coming later for
> this SoC since apcs is getting hooked up to cpufreq there also.
> 
> Apart from usages from the qcom,smsm driver (patches coming!) all other
> usages of the apcs mailbox now go via the mailbox driver - where one is
> used, so some arm32 boards will continue using "qcom,ipc*" properties in
> the short or long term.
> 

Very nice, thank you for cleaning this up.

Regards,
Bjorn

> Only compile-tested apart from msm8953 (tested on sdm632-fairphone-fp3)
> and msm8974 (tested on msm8974pro-fairphone-fp2), but I don't expect any
> complications with this.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---
> Luca Weiss (7):
>       rpmsg: qcom_smd: Don't print error during probe deferral
>       ARM: dts: qcom: msm8974: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8916: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8939: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8953: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8976: Use mboxes properties for APCS
>       arm64: dts: qcom: msm8994: Use mboxes properties for APCS
> 
>  arch/arm/boot/dts/qcom/qcom-msm8974.dtsi | 14 +++++++-------
>  arch/arm64/boot/dts/qcom/msm8916.dtsi    | 10 +++++-----
>  arch/arm64/boot/dts/qcom/msm8939.dtsi    |  4 ++--
>  arch/arm64/boot/dts/qcom/msm8953.dtsi    | 10 +++++-----
>  arch/arm64/boot/dts/qcom/msm8976.dtsi    |  8 ++++----
>  arch/arm64/boot/dts/qcom/msm8994.dtsi    |  6 +++---
>  drivers/rpmsg/qcom_smd.c                 |  3 ++-
>  7 files changed, 28 insertions(+), 27 deletions(-)
> ---
> base-commit: 43173e6dbaa227f3107310d4df4a3bacd5e0df33
> change-id: 20240423-apcs-mboxes-12ee6c01a5b3
> 
> Best regards,
> -- 
> Luca Weiss <luca@z3ntu.xyz>
> 

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

* Re: [PATCH 2/7] ARM: dts: qcom: msm8974: Use mboxes properties for APCS
  2024-04-24 16:23 ` [PATCH 2/7] ARM: dts: qcom: msm8974: Use mboxes properties for APCS Luca Weiss
@ 2024-04-24 20:13   ` Konrad Dybcio
  0 siblings, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2024-04-24 20:13 UTC (permalink / raw)
  To: Luca Weiss, ~postmarketos/upstreaming, phone-devel,
	Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree



On 4/24/24 18:23, Luca Weiss wrote:
> Instead of passing the syscon to the various nodes, use the mbox
> interface using the mboxes property.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad

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

* Re: [PATCH 3/7] arm64: dts: qcom: msm8916: Use mboxes properties for APCS
  2024-04-24 16:23 ` [PATCH 3/7] arm64: dts: qcom: msm8916: " Luca Weiss
@ 2024-04-24 20:14   ` Konrad Dybcio
  0 siblings, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2024-04-24 20:14 UTC (permalink / raw)
  To: Luca Weiss, ~postmarketos/upstreaming, phone-devel,
	Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree



On 4/24/24 18:23, Luca Weiss wrote:
> Instead of passing the syscon to the various nodes, use the mbox
> interface using the mboxes property.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad

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

* Re: [PATCH 4/7] arm64: dts: qcom: msm8939: Use mboxes properties for APCS
  2024-04-24 16:23 ` [PATCH 4/7] arm64: dts: qcom: msm8939: " Luca Weiss
@ 2024-04-24 20:14   ` Konrad Dybcio
  0 siblings, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2024-04-24 20:14 UTC (permalink / raw)
  To: Luca Weiss, ~postmarketos/upstreaming, phone-devel,
	Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree



On 4/24/24 18:23, Luca Weiss wrote:
> Instead of passing the syscon to the various nodes, use the mbox
> interface using the mboxes property.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad

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

* Re: [PATCH 5/7] arm64: dts: qcom: msm8953: Use mboxes properties for APCS
  2024-04-24 16:23 ` [PATCH 5/7] arm64: dts: qcom: msm8953: " Luca Weiss
@ 2024-04-24 20:14   ` Konrad Dybcio
  0 siblings, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2024-04-24 20:14 UTC (permalink / raw)
  To: Luca Weiss, ~postmarketos/upstreaming, phone-devel,
	Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree



On 4/24/24 18:23, Luca Weiss wrote:
> Instead of passing the syscon to the various nodes, use the mbox
> interface using the mboxes property.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad

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

* Re: [PATCH 6/7] arm64: dts: qcom: msm8976: Use mboxes properties for APCS
  2024-04-24 16:23 ` [PATCH 6/7] arm64: dts: qcom: msm8976: " Luca Weiss
@ 2024-04-24 20:14   ` Konrad Dybcio
  0 siblings, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2024-04-24 20:14 UTC (permalink / raw)
  To: Luca Weiss, ~postmarketos/upstreaming, phone-devel,
	Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree



On 4/24/24 18:23, Luca Weiss wrote:
> Instead of passing the syscon to the various nodes, use the mbox
> interface using the mboxes property.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad

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

* Re: [PATCH 7/7] arm64: dts: qcom: msm8994: Use mboxes properties for APCS
  2024-04-24 16:24 ` [PATCH 7/7] arm64: dts: qcom: msm8994: " Luca Weiss
@ 2024-04-24 20:15   ` Konrad Dybcio
  0 siblings, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2024-04-24 20:15 UTC (permalink / raw)
  To: Luca Weiss, ~postmarketos/upstreaming, phone-devel,
	Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, linux-remoteproc, linux-kernel, devicetree



On 4/24/24 18:24, Luca Weiss wrote:
> Instead of passing the syscon to the various nodes, use the mbox
> interface using the mboxes property.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad

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

end of thread, other threads:[~2024-04-24 20:15 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-24 16:23 [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
2024-04-24 16:23 ` [PATCH 1/7] rpmsg: qcom_smd: Don't print error during probe deferral Luca Weiss
2024-04-24 16:54   ` Bjorn Andersson
2024-04-24 16:23 ` [PATCH 2/7] ARM: dts: qcom: msm8974: Use mboxes properties for APCS Luca Weiss
2024-04-24 20:13   ` Konrad Dybcio
2024-04-24 16:23 ` [PATCH 3/7] arm64: dts: qcom: msm8916: " Luca Weiss
2024-04-24 20:14   ` Konrad Dybcio
2024-04-24 16:23 ` [PATCH 4/7] arm64: dts: qcom: msm8939: " Luca Weiss
2024-04-24 20:14   ` Konrad Dybcio
2024-04-24 16:23 ` [PATCH 5/7] arm64: dts: qcom: msm8953: " Luca Weiss
2024-04-24 20:14   ` Konrad Dybcio
2024-04-24 16:23 ` [PATCH 6/7] arm64: dts: qcom: msm8976: " Luca Weiss
2024-04-24 20:14   ` Konrad Dybcio
2024-04-24 16:24 ` [PATCH 7/7] arm64: dts: qcom: msm8994: " Luca Weiss
2024-04-24 20:15   ` Konrad Dybcio
2024-04-24 16:37 ` [PATCH 0/7] Use mboxes instead of syscon for APCS (arm32 & arm64) Luca Weiss
2024-04-24 16:55 ` Bjorn Andersson

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).