linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] Add coresight support for SM8150 and few changes to SC7180
@ 2020-06-09 13:30 Sai Prakash Ranjan
  2020-06-09 13:30 ` [PATCH 1/4] arm64: dts: qcom: sc7180: Add support to skip powering up of ETM Sai Prakash Ranjan
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-06-09 13:30 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson
  Cc: Stephen Boyd, linux-arm-kernel, linux-kernel, linux-arm-msm,
	devicetree, Mathieu Poirier, Suzuki K Poulose, mike.leach,
	Jonathan Marek, Sai Prakash Ranjan

This series adds coresight support for SM8150 SoC and some coresight
DT changes to SC7180 SoC.

Patch 1 depends on coresight etm driver change:
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=159e248e75b1b548276b6571d7740a35cab1f5be

Patch 3 depends on coresight replicator driver change:
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=1b6cddfb7ebb5ed293124698f147e914b15315a1
 
Patch 4 depends on following coresight driver changes and SMMU DT node for SM8150
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=159e248e75b1b548276b6571d7740a35cab1f5be
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=1b6cddfb7ebb5ed293124698f147e914b15315a1
 - https://lore.kernel.org/lkml/20200524023815.21789-2-jonathan@marek.ca/

Tested this series on SM8150 and SC7180.

Sai Prakash Ranjan (4):
  arm64: dts: qcom: sc7180: Add support to skip powering up of ETM
  arm64: dts: qcom: sc7180: Add iommus property to ETR
  arm64: dts: qcom: sc7180: Add support for context losing replicator
  arm64: dts: qcom: sm8150: Add Coresight support

 arch/arm64/boot/dts/qcom/sc7180.dtsi |  10 +
 arch/arm64/boot/dts/qcom/sm8150.dtsi | 591 +++++++++++++++++++++++++++
 2 files changed, 601 insertions(+)


base-commit: 98cfcf1a9c542d6bec7b29915d838caaf72da737
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation


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

* [PATCH 1/4] arm64: dts: qcom: sc7180: Add support to skip powering up of ETM
  2020-06-09 13:30 [PATCH 0/4] Add coresight support for SM8150 and few changes to SC7180 Sai Prakash Ranjan
@ 2020-06-09 13:30 ` Sai Prakash Ranjan
  2020-06-15 17:17   ` Mathieu Poirier
  2020-06-09 13:30 ` [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR Sai Prakash Ranjan
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-06-09 13:30 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson
  Cc: Stephen Boyd, linux-arm-kernel, linux-kernel, linux-arm-msm,
	devicetree, Mathieu Poirier, Suzuki K Poulose, mike.leach,
	Jonathan Marek, Sai Prakash Ranjan

Add "qcom,skip-power-up" property to skip powering up ETM
on SC7180 SoC to workaround a hardware errata where CPU
watchdog counter is stopped when ETM power up bit is set
(i.e., when TRCPDCR.PU = 1).

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
---

Depends on ETM driver change here:
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=159e248e75b1b548276b6571d7740a35cab1f5be 

---
 arch/arm64/boot/dts/qcom/sc7180.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
index 7c2b79dda3d7..f684a0b87848 100644
--- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
@@ -1810,6 +1810,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
@@ -1829,6 +1830,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
@@ -1848,6 +1850,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
@@ -1867,6 +1870,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
@@ -1886,6 +1890,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
@@ -1905,6 +1910,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
@@ -1924,6 +1930,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
@@ -1943,6 +1950,7 @@
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
 			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
 
 			out-ports {
 				port {
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation


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

* [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-06-09 13:30 [PATCH 0/4] Add coresight support for SM8150 and few changes to SC7180 Sai Prakash Ranjan
  2020-06-09 13:30 ` [PATCH 1/4] arm64: dts: qcom: sc7180: Add support to skip powering up of ETM Sai Prakash Ranjan
@ 2020-06-09 13:30 ` Sai Prakash Ranjan
  2020-06-21  7:22   ` Bjorn Andersson
  2020-06-09 13:30 ` [PATCH 3/4] arm64: dts: qcom: sc7180: Add support for context losing replicator Sai Prakash Ranjan
  2020-06-09 13:30 ` [PATCH 4/4] arm64: dts: qcom: sm8150: Add Coresight support Sai Prakash Ranjan
  3 siblings, 1 reply; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-06-09 13:30 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson
  Cc: Stephen Boyd, linux-arm-kernel, linux-kernel, linux-arm-msm,
	devicetree, Mathieu Poirier, Suzuki K Poulose, mike.leach,
	Jonathan Marek, Sai Prakash Ranjan

Define iommus property for Coresight ETR component in
SC7180 SoC with the SID and mask to enable SMMU
translation for this master.

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
---
 arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
index f684a0b87848..9b38867740ca 100644
--- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
@@ -1711,6 +1711,7 @@
 		etr@6048000 {
 			compatible = "arm,coresight-tmc", "arm,primecell";
 			reg = <0 0x06048000 0 0x1000>;
+			iommus = <&apps_smmu 0x04a0 0x20>;
 
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation


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

* [PATCH 3/4] arm64: dts: qcom: sc7180: Add support for context losing replicator
  2020-06-09 13:30 [PATCH 0/4] Add coresight support for SM8150 and few changes to SC7180 Sai Prakash Ranjan
  2020-06-09 13:30 ` [PATCH 1/4] arm64: dts: qcom: sc7180: Add support to skip powering up of ETM Sai Prakash Ranjan
  2020-06-09 13:30 ` [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR Sai Prakash Ranjan
@ 2020-06-09 13:30 ` Sai Prakash Ranjan
  2020-06-15 17:19   ` Mathieu Poirier
  2020-06-09 13:30 ` [PATCH 4/4] arm64: dts: qcom: sm8150: Add Coresight support Sai Prakash Ranjan
  3 siblings, 1 reply; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-06-09 13:30 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson
  Cc: Stephen Boyd, linux-arm-kernel, linux-kernel, linux-arm-msm,
	devicetree, Mathieu Poirier, Suzuki K Poulose, mike.leach,
	Jonathan Marek, Sai Prakash Ranjan

Add "qcom,replicator-loses-context" property to the replicator
in Always-on domain in SC7180 SoC to enable coresight replicator
driver to handle this variation of replicator designs.

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
---

Depends on coresight replicator change here:
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=1b6cddfb7ebb5ed293124698f147e914b15315a1

---
 arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
index 9b38867740ca..0cbe322a30c9 100644
--- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
@@ -1784,6 +1784,7 @@
 
 			clocks = <&aoss_qmp>;
 			clock-names = "apb_pclk";
+			qcom,replicator-loses-context;
 
 			out-ports {
 				port {
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation


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

* [PATCH 4/4] arm64: dts: qcom: sm8150: Add Coresight support
  2020-06-09 13:30 [PATCH 0/4] Add coresight support for SM8150 and few changes to SC7180 Sai Prakash Ranjan
                   ` (2 preceding siblings ...)
  2020-06-09 13:30 ` [PATCH 3/4] arm64: dts: qcom: sc7180: Add support for context losing replicator Sai Prakash Ranjan
@ 2020-06-09 13:30 ` Sai Prakash Ranjan
  2020-06-15 17:35   ` Mathieu Poirier
  3 siblings, 1 reply; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-06-09 13:30 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson
  Cc: Stephen Boyd, linux-arm-kernel, linux-kernel, linux-arm-msm,
	devicetree, Mathieu Poirier, Suzuki K Poulose, mike.leach,
	Jonathan Marek, Sai Prakash Ranjan

Add coresight components found on Qualcomm SM8150 SoC.

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
---

Depends on following coresight driver and SM8150 SMMU support:
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=159e248e75b1b548276b6571d7740a35cab1f5be
 - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=1b6cddfb7ebb5ed293124698f147e914b15315a1
 - https://lore.kernel.org/lkml/20200524023815.21789-2-jonathan@marek.ca/

---
 arch/arm64/boot/dts/qcom/sm8150.dtsi | 591 +++++++++++++++++++++++++++
 1 file changed, 591 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sm8150.dtsi b/arch/arm64/boot/dts/qcom/sm8150.dtsi
index 141c21dfa68c..a2fc77211cc3 100644
--- a/arch/arm64/boot/dts/qcom/sm8150.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8150.dtsi
@@ -538,6 +538,597 @@
 			};
 		};
 
+		stm@6002000 {
+			compatible = "arm,coresight-stm", "arm,primecell";
+			reg = <0 0x06002000 0 0x1000>,
+			      <0 0x16280000 0 0x180000>;
+			reg-names = "stm-base", "stm-stimulus-base";
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					stm_out: endpoint {
+						remote-endpoint = <&funnel0_in7>;
+					};
+				};
+			};
+		};
+
+		funnel@6041000 {
+			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+			reg = <0 0x06041000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					funnel0_out: endpoint {
+						remote-endpoint = <&merge_funnel_in0>;
+					};
+				};
+			};
+
+			in-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@7 {
+					reg = <7>;
+					funnel0_in7: endpoint {
+						remote-endpoint = <&stm_out>;
+					};
+				};
+			};
+		};
+
+		funnel@6042000 {
+			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+			reg = <0 0x06042000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					funnel1_out: endpoint {
+						remote-endpoint = <&merge_funnel_in1>;
+					};
+				};
+			};
+
+			in-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@4 {
+					reg = <4>;
+					funnel1_in4: endpoint {
+						remote-endpoint = <&swao_replicator_out>;
+					};
+				};
+			};
+		};
+
+		funnel@6043000 {
+			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+			reg = <0 0x06043000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					funnel2_out: endpoint {
+						remote-endpoint = <&merge_funnel_in2>;
+					};
+				};
+			};
+
+			in-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@2 {
+					reg = <2>;
+					funnel2_in2: endpoint {
+						remote-endpoint = <&apss_merge_funnel_out>;
+					};
+				};
+			};
+		};
+
+		funnel@6045000 {
+			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+			reg = <0 0x06045000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					merge_funnel_out: endpoint {
+						remote-endpoint = <&etf_in>;
+					};
+				};
+			};
+
+			in-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@0 {
+					reg = <0>;
+					merge_funnel_in0: endpoint {
+						remote-endpoint = <&funnel0_out>;
+					};
+				};
+
+				port@1 {
+					reg = <1>;
+					merge_funnel_in1: endpoint {
+						remote-endpoint = <&funnel1_out>;
+					};
+				};
+
+				port@2 {
+					reg = <2>;
+					merge_funnel_in2: endpoint {
+						remote-endpoint = <&funnel2_out>;
+					};
+				};
+			};
+		};
+
+		replicator@6046000 {
+			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
+			reg = <0 0x06046000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@0 {
+					reg = <0>;
+					replicator_out0: endpoint {
+						remote-endpoint = <&etr_in>;
+					};
+				};
+
+				port@1 {
+					reg = <1>;
+					replicator_out1: endpoint {
+						remote-endpoint = <&replicator1_in>;
+					};
+				};
+			};
+
+			in-ports {
+				port {
+					replicator_in0: endpoint {
+						remote-endpoint = <&etf_out>;
+					};
+				};
+			};
+		};
+
+		etf@6047000 {
+			compatible = "arm,coresight-tmc", "arm,primecell";
+			reg = <0 0x06047000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					etf_out: endpoint {
+						remote-endpoint = <&replicator_in0>;
+					};
+				};
+			};
+
+			in-ports {
+				port {
+					etf_in: endpoint {
+						remote-endpoint = <&merge_funnel_out>;
+					};
+				};
+			};
+		};
+
+		etr@6048000 {
+			compatible = "arm,coresight-tmc", "arm,primecell";
+			reg = <0 0x06048000 0 0x1000>;
+			iommus = <&apps_smmu 0x05e0 0x0>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,scatter-gather;
+
+			in-ports {
+				port {
+					etr_in: endpoint {
+						remote-endpoint = <&replicator_out0>;
+					};
+				};
+			};
+		};
+
+		replicator@604a000 {
+			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
+			reg = <0 0x0604a000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@1 {
+					reg = <1>;
+					replicator1_out: endpoint {
+						remote-endpoint = <&swao_funnel_in>;
+					};
+				};
+			};
+
+			in-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@1 {
+					reg = <1>;
+					replicator1_in: endpoint {
+						remote-endpoint = <&replicator_out1>;
+					};
+				};
+			};
+		};
+
+		funnel@6b08000 {
+			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+			reg = <0 0x06b08000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					swao_funnel_out: endpoint {
+						remote-endpoint = <&swao_etf_in>;
+					};
+				};
+			};
+
+			in-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@6 {
+					reg = <6>;
+					swao_funnel_in: endpoint {
+						remote-endpoint = <&replicator1_out>;
+					};
+				};
+			};
+		};
+
+		etf@6b09000 {
+			compatible = "arm,coresight-tmc", "arm,primecell";
+			reg = <0 0x06b09000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					swao_etf_out: endpoint {
+						remote-endpoint = <&swao_replicator_in>;
+					};
+				};
+			};
+
+			in-ports {
+				port {
+					swao_etf_in: endpoint {
+						remote-endpoint = <&swao_funnel_out>;
+					};
+				};
+			};
+		};
+
+		replicator@6b0a000 {
+			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
+			reg = <0 0x06b0a000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			qcom,replicator-loses-context;
+
+			out-ports {
+				port {
+					swao_replicator_out: endpoint {
+						remote-endpoint = <&funnel1_in4>;
+					};
+				};
+			};
+
+			in-ports {
+				port {
+					swao_replicator_in: endpoint {
+						remote-endpoint = <&swao_etf_out>;
+					};
+				};
+			};
+		};
+
+		etm@7040000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07040000 0 0x1000>;
+
+			cpu = <&CPU0>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm0_out: endpoint {
+						remote-endpoint = <&apss_funnel_in0>;
+					};
+				};
+			};
+		};
+
+		etm@7140000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07140000 0 0x1000>;
+
+			cpu = <&CPU1>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm1_out: endpoint {
+						remote-endpoint = <&apss_funnel_in1>;
+					};
+				};
+			};
+		};
+
+		etm@7240000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07240000 0 0x1000>;
+
+			cpu = <&CPU2>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm2_out: endpoint {
+						remote-endpoint = <&apss_funnel_in2>;
+					};
+				};
+			};
+		};
+
+		etm@7340000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07340000 0 0x1000>;
+
+			cpu = <&CPU3>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm3_out: endpoint {
+						remote-endpoint = <&apss_funnel_in3>;
+					};
+				};
+			};
+		};
+
+		etm@7440000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07440000 0 0x1000>;
+
+			cpu = <&CPU4>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm4_out: endpoint {
+						remote-endpoint = <&apss_funnel_in4>;
+					};
+				};
+			};
+		};
+
+		etm@7540000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07540000 0 0x1000>;
+
+			cpu = <&CPU5>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm5_out: endpoint {
+						remote-endpoint = <&apss_funnel_in5>;
+					};
+				};
+			};
+		};
+
+		etm@7640000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07640000 0 0x1000>;
+
+			cpu = <&CPU6>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm6_out: endpoint {
+						remote-endpoint = <&apss_funnel_in6>;
+					};
+				};
+			};
+		};
+
+		etm@7740000 {
+			compatible = "arm,coresight-etm4x", "arm,primecell";
+			reg = <0 0x07740000 0 0x1000>;
+
+			cpu = <&CPU7>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+			arm,coresight-loses-context-with-cpu;
+			qcom,skip-power-up;
+
+			out-ports {
+				port {
+					etm7_out: endpoint {
+						remote-endpoint = <&apss_funnel_in7>;
+					};
+				};
+			};
+		};
+
+		funnel@7800000 { /* APSS Funnel */
+			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+			reg = <0 0x07800000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					apss_funnel_out: endpoint {
+						remote-endpoint = <&apss_merge_funnel_in>;
+					};
+				};
+			};
+
+			in-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@0 {
+					reg = <0>;
+					apss_funnel_in0: endpoint {
+						remote-endpoint = <&etm0_out>;
+					};
+				};
+
+				port@1 {
+					reg = <1>;
+					apss_funnel_in1: endpoint {
+						remote-endpoint = <&etm1_out>;
+					};
+				};
+
+				port@2 {
+					reg = <2>;
+					apss_funnel_in2: endpoint {
+						remote-endpoint = <&etm2_out>;
+					};
+				};
+
+				port@3 {
+					reg = <3>;
+					apss_funnel_in3: endpoint {
+						remote-endpoint = <&etm3_out>;
+					};
+				};
+
+				port@4 {
+					reg = <4>;
+					apss_funnel_in4: endpoint {
+						remote-endpoint = <&etm4_out>;
+					};
+				};
+
+				port@5 {
+					reg = <5>;
+					apss_funnel_in5: endpoint {
+						remote-endpoint = <&etm5_out>;
+					};
+				};
+
+				port@6 {
+					reg = <6>;
+					apss_funnel_in6: endpoint {
+						remote-endpoint = <&etm6_out>;
+					};
+				};
+
+				port@7 {
+					reg = <7>;
+					apss_funnel_in7: endpoint {
+						remote-endpoint = <&etm7_out>;
+					};
+				};
+			};
+		};
+
+		funnel@7810000 {
+			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+			reg = <0 0x07810000 0 0x1000>;
+
+			clocks = <&aoss_qmp>;
+			clock-names = "apb_pclk";
+
+			out-ports {
+				port {
+					apss_merge_funnel_out: endpoint {
+						remote-endpoint = <&funnel2_in2>;
+					};
+				};
+			};
+
+			in-ports {
+				port {
+					apss_merge_funnel_in: endpoint {
+						remote-endpoint = <&apss_funnel_out>;
+					};
+				};
+			};
+		};
+
 		tlmm: pinctrl@3100000 {
 			compatible = "qcom,sm8150-pinctrl";
 			reg = <0x0 0x03100000 0x0 0x300000>,
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation


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

* Re: [PATCH 1/4] arm64: dts: qcom: sc7180: Add support to skip powering up of ETM
  2020-06-09 13:30 ` [PATCH 1/4] arm64: dts: qcom: sc7180: Add support to skip powering up of ETM Sai Prakash Ranjan
@ 2020-06-15 17:17   ` Mathieu Poirier
  0 siblings, 0 replies; 15+ messages in thread
From: Mathieu Poirier @ 2020-06-15 17:17 UTC (permalink / raw)
  To: Sai Prakash Ranjan
  Cc: Andy Gross, Bjorn Andersson, Stephen Boyd, linux-arm-kernel,
	linux-kernel, linux-arm-msm, devicetree, Suzuki K Poulose,
	mike.leach, Jonathan Marek

On Tue, Jun 09, 2020 at 07:00:28PM +0530, Sai Prakash Ranjan wrote:
> Add "qcom,skip-power-up" property to skip powering up ETM
> on SC7180 SoC to workaround a hardware errata where CPU
> watchdog counter is stopped when ETM power up bit is set
> (i.e., when TRCPDCR.PU = 1).
> 
> Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
> ---
> 
> Depends on ETM driver change here:
>  - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=159e248e75b1b548276b6571d7740a35cab1f5be 
> 
> ---
>  arch/arm64/boot/dts/qcom/sc7180.dtsi | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
> index 7c2b79dda3d7..f684a0b87848 100644
> --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
> @@ -1810,6 +1810,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
>  
>  			out-ports {
>  				port {
> @@ -1829,6 +1830,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
>  
>  			out-ports {
>  				port {
> @@ -1848,6 +1850,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
>  
>  			out-ports {
>  				port {
> @@ -1867,6 +1870,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
>  
>  			out-ports {
>  				port {
> @@ -1886,6 +1890,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
>  
>  			out-ports {
>  				port {
> @@ -1905,6 +1910,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
>  
>  			out-ports {
>  				port {
> @@ -1924,6 +1930,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
>  
>  			out-ports {
>  				port {
> @@ -1943,6 +1950,7 @@
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
>  			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;

Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>

>  
>  			out-ports {
>  				port {
> -- 
> QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
> of Code Aurora Forum, hosted by The Linux Foundation
> 

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

* Re: [PATCH 3/4] arm64: dts: qcom: sc7180: Add support for context losing replicator
  2020-06-09 13:30 ` [PATCH 3/4] arm64: dts: qcom: sc7180: Add support for context losing replicator Sai Prakash Ranjan
@ 2020-06-15 17:19   ` Mathieu Poirier
  0 siblings, 0 replies; 15+ messages in thread
From: Mathieu Poirier @ 2020-06-15 17:19 UTC (permalink / raw)
  To: Sai Prakash Ranjan
  Cc: Andy Gross, Bjorn Andersson, Stephen Boyd, linux-arm-kernel,
	linux-kernel, linux-arm-msm, devicetree, Suzuki K Poulose,
	mike.leach, Jonathan Marek

On Tue, Jun 09, 2020 at 07:00:30PM +0530, Sai Prakash Ranjan wrote:
> Add "qcom,replicator-loses-context" property to the replicator
> in Always-on domain in SC7180 SoC to enable coresight replicator
> driver to handle this variation of replicator designs.
> 
> Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
> ---
> 
> Depends on coresight replicator change here:
>  - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=1b6cddfb7ebb5ed293124698f147e914b15315a1
> 
> ---
>  arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
> index 9b38867740ca..0cbe322a30c9 100644
> --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
> @@ -1784,6 +1784,7 @@
>  
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
> +			qcom,replicator-loses-context;

Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>

>  
>  			out-ports {
>  				port {
> -- 
> QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
> of Code Aurora Forum, hosted by The Linux Foundation
> 

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

* Re: [PATCH 4/4] arm64: dts: qcom: sm8150: Add Coresight support
  2020-06-09 13:30 ` [PATCH 4/4] arm64: dts: qcom: sm8150: Add Coresight support Sai Prakash Ranjan
@ 2020-06-15 17:35   ` Mathieu Poirier
  0 siblings, 0 replies; 15+ messages in thread
From: Mathieu Poirier @ 2020-06-15 17:35 UTC (permalink / raw)
  To: Sai Prakash Ranjan
  Cc: Andy Gross, Bjorn Andersson, devicetree, Jonathan Marek,
	Suzuki K Poulose, linux-arm-msm, linux-kernel, Stephen Boyd,
	linux-arm-kernel, mike.leach

On Tue, Jun 09, 2020 at 07:00:31PM +0530, Sai Prakash Ranjan wrote:
> Add coresight components found on Qualcomm SM8150 SoC.
> 
> Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
> ---
> 
> Depends on following coresight driver and SM8150 SMMU support:
>  - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=159e248e75b1b548276b6571d7740a35cab1f5be
>  - https://git.linaro.org/kernel/coresight.git/commit/?h=next-v5.8-rc1&id=1b6cddfb7ebb5ed293124698f147e914b15315a1
>  - https://lore.kernel.org/lkml/20200524023815.21789-2-jonathan@marek.ca/
> 
> ---
>  arch/arm64/boot/dts/qcom/sm8150.dtsi | 591 +++++++++++++++++++++++++++
>  1 file changed, 591 insertions(+)

Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>

> 
> diff --git a/arch/arm64/boot/dts/qcom/sm8150.dtsi b/arch/arm64/boot/dts/qcom/sm8150.dtsi
> index 141c21dfa68c..a2fc77211cc3 100644
> --- a/arch/arm64/boot/dts/qcom/sm8150.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sm8150.dtsi
> @@ -538,6 +538,597 @@
>  			};
>  		};
>  
> +		stm@6002000 {
> +			compatible = "arm,coresight-stm", "arm,primecell";
> +			reg = <0 0x06002000 0 0x1000>,
> +			      <0 0x16280000 0 0x180000>;
> +			reg-names = "stm-base", "stm-stimulus-base";
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					stm_out: endpoint {
> +						remote-endpoint = <&funnel0_in7>;
> +					};
> +				};
> +			};
> +		};
> +
> +		funnel@6041000 {
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> +			reg = <0 0x06041000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					funnel0_out: endpoint {
> +						remote-endpoint = <&merge_funnel_in0>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@7 {
> +					reg = <7>;
> +					funnel0_in7: endpoint {
> +						remote-endpoint = <&stm_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		funnel@6042000 {
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> +			reg = <0 0x06042000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					funnel1_out: endpoint {
> +						remote-endpoint = <&merge_funnel_in1>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@4 {
> +					reg = <4>;
> +					funnel1_in4: endpoint {
> +						remote-endpoint = <&swao_replicator_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		funnel@6043000 {
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> +			reg = <0 0x06043000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					funnel2_out: endpoint {
> +						remote-endpoint = <&merge_funnel_in2>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@2 {
> +					reg = <2>;
> +					funnel2_in2: endpoint {
> +						remote-endpoint = <&apss_merge_funnel_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		funnel@6045000 {
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> +			reg = <0 0x06045000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					merge_funnel_out: endpoint {
> +						remote-endpoint = <&etf_in>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +					merge_funnel_in0: endpoint {
> +						remote-endpoint = <&funnel0_out>;
> +					};
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +					merge_funnel_in1: endpoint {
> +						remote-endpoint = <&funnel1_out>;
> +					};
> +				};
> +
> +				port@2 {
> +					reg = <2>;
> +					merge_funnel_in2: endpoint {
> +						remote-endpoint = <&funnel2_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		replicator@6046000 {
> +			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
> +			reg = <0 0x06046000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +					replicator_out0: endpoint {
> +						remote-endpoint = <&etr_in>;
> +					};
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +					replicator_out1: endpoint {
> +						remote-endpoint = <&replicator1_in>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				port {
> +					replicator_in0: endpoint {
> +						remote-endpoint = <&etf_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etf@6047000 {
> +			compatible = "arm,coresight-tmc", "arm,primecell";
> +			reg = <0 0x06047000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					etf_out: endpoint {
> +						remote-endpoint = <&replicator_in0>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				port {
> +					etf_in: endpoint {
> +						remote-endpoint = <&merge_funnel_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etr@6048000 {
> +			compatible = "arm,coresight-tmc", "arm,primecell";
> +			reg = <0 0x06048000 0 0x1000>;
> +			iommus = <&apps_smmu 0x05e0 0x0>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,scatter-gather;
> +
> +			in-ports {
> +				port {
> +					etr_in: endpoint {
> +						remote-endpoint = <&replicator_out0>;
> +					};
> +				};
> +			};
> +		};
> +
> +		replicator@604a000 {
> +			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
> +			reg = <0 0x0604a000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@1 {
> +					reg = <1>;
> +					replicator1_out: endpoint {
> +						remote-endpoint = <&swao_funnel_in>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@1 {
> +					reg = <1>;
> +					replicator1_in: endpoint {
> +						remote-endpoint = <&replicator_out1>;
> +					};
> +				};
> +			};
> +		};
> +
> +		funnel@6b08000 {
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> +			reg = <0 0x06b08000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					swao_funnel_out: endpoint {
> +						remote-endpoint = <&swao_etf_in>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@6 {
> +					reg = <6>;
> +					swao_funnel_in: endpoint {
> +						remote-endpoint = <&replicator1_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etf@6b09000 {
> +			compatible = "arm,coresight-tmc", "arm,primecell";
> +			reg = <0 0x06b09000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					swao_etf_out: endpoint {
> +						remote-endpoint = <&swao_replicator_in>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				port {
> +					swao_etf_in: endpoint {
> +						remote-endpoint = <&swao_funnel_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		replicator@6b0a000 {
> +			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
> +			reg = <0 0x06b0a000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			qcom,replicator-loses-context;
> +
> +			out-ports {
> +				port {
> +					swao_replicator_out: endpoint {
> +						remote-endpoint = <&funnel1_in4>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				port {
> +					swao_replicator_in: endpoint {
> +						remote-endpoint = <&swao_etf_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7040000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07040000 0 0x1000>;
> +
> +			cpu = <&CPU0>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm0_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in0>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7140000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07140000 0 0x1000>;
> +
> +			cpu = <&CPU1>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm1_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in1>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7240000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07240000 0 0x1000>;
> +
> +			cpu = <&CPU2>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm2_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in2>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7340000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07340000 0 0x1000>;
> +
> +			cpu = <&CPU3>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm3_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in3>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7440000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07440000 0 0x1000>;
> +
> +			cpu = <&CPU4>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm4_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in4>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7540000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07540000 0 0x1000>;
> +
> +			cpu = <&CPU5>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm5_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in5>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7640000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07640000 0 0x1000>;
> +
> +			cpu = <&CPU6>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm6_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in6>;
> +					};
> +				};
> +			};
> +		};
> +
> +		etm@7740000 {
> +			compatible = "arm,coresight-etm4x", "arm,primecell";
> +			reg = <0 0x07740000 0 0x1000>;
> +
> +			cpu = <&CPU7>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +			arm,coresight-loses-context-with-cpu;
> +			qcom,skip-power-up;
> +
> +			out-ports {
> +				port {
> +					etm7_out: endpoint {
> +						remote-endpoint = <&apss_funnel_in7>;
> +					};
> +				};
> +			};
> +		};
> +
> +		funnel@7800000 { /* APSS Funnel */
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> +			reg = <0 0x07800000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					apss_funnel_out: endpoint {
> +						remote-endpoint = <&apss_merge_funnel_in>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +					apss_funnel_in0: endpoint {
> +						remote-endpoint = <&etm0_out>;
> +					};
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +					apss_funnel_in1: endpoint {
> +						remote-endpoint = <&etm1_out>;
> +					};
> +				};
> +
> +				port@2 {
> +					reg = <2>;
> +					apss_funnel_in2: endpoint {
> +						remote-endpoint = <&etm2_out>;
> +					};
> +				};
> +
> +				port@3 {
> +					reg = <3>;
> +					apss_funnel_in3: endpoint {
> +						remote-endpoint = <&etm3_out>;
> +					};
> +				};
> +
> +				port@4 {
> +					reg = <4>;
> +					apss_funnel_in4: endpoint {
> +						remote-endpoint = <&etm4_out>;
> +					};
> +				};
> +
> +				port@5 {
> +					reg = <5>;
> +					apss_funnel_in5: endpoint {
> +						remote-endpoint = <&etm5_out>;
> +					};
> +				};
> +
> +				port@6 {
> +					reg = <6>;
> +					apss_funnel_in6: endpoint {
> +						remote-endpoint = <&etm6_out>;
> +					};
> +				};
> +
> +				port@7 {
> +					reg = <7>;
> +					apss_funnel_in7: endpoint {
> +						remote-endpoint = <&etm7_out>;
> +					};
> +				};
> +			};
> +		};
> +
> +		funnel@7810000 {
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> +			reg = <0 0x07810000 0 0x1000>;
> +
> +			clocks = <&aoss_qmp>;
> +			clock-names = "apb_pclk";
> +
> +			out-ports {
> +				port {
> +					apss_merge_funnel_out: endpoint {
> +						remote-endpoint = <&funnel2_in2>;
> +					};
> +				};
> +			};
> +
> +			in-ports {
> +				port {
> +					apss_merge_funnel_in: endpoint {
> +						remote-endpoint = <&apss_funnel_out>;
> +					};
> +				};
> +			};
> +		};
> +
>  		tlmm: pinctrl@3100000 {
>  			compatible = "qcom,sm8150-pinctrl";
>  			reg = <0x0 0x03100000 0x0 0x300000>,
> -- 
> QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
> of Code Aurora Forum, hosted by The Linux Foundation
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-06-09 13:30 ` [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR Sai Prakash Ranjan
@ 2020-06-21  7:22   ` Bjorn Andersson
  2020-06-21  8:09     ` Sai Prakash Ranjan
  0 siblings, 1 reply; 15+ messages in thread
From: Bjorn Andersson @ 2020-06-21  7:22 UTC (permalink / raw)
  To: Sai Prakash Ranjan
  Cc: Andy Gross, Stephen Boyd, linux-arm-kernel, linux-kernel,
	linux-arm-msm, devicetree, Mathieu Poirier, Suzuki K Poulose,
	mike.leach, Jonathan Marek

On Tue 09 Jun 06:30 PDT 2020, Sai Prakash Ranjan wrote:

> Define iommus property for Coresight ETR component in
> SC7180 SoC with the SID and mask to enable SMMU
> translation for this master.
> 

We don't have &apps_smmu in linux-next, as we've yet to figure out how
to disable the boot splash or support the stream mapping handover.

So I'm not able to apply this.

Regards,
Bjorn

> Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
> ---
>  arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
> index f684a0b87848..9b38867740ca 100644
> --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
> @@ -1711,6 +1711,7 @@
>  		etr@6048000 {
>  			compatible = "arm,coresight-tmc", "arm,primecell";
>  			reg = <0 0x06048000 0 0x1000>;
> +			iommus = <&apps_smmu 0x04a0 0x20>;
>  
>  			clocks = <&aoss_qmp>;
>  			clock-names = "apb_pclk";
> -- 
> QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
> of Code Aurora Forum, hosted by The Linux Foundation
> 

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

* Re: [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-06-21  7:22   ` Bjorn Andersson
@ 2020-06-21  8:09     ` Sai Prakash Ranjan
  2020-06-24  6:56       ` Sai Prakash Ranjan
  0 siblings, 1 reply; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-06-21  8:09 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Stephen Boyd, linux-arm-kernel, linux-kernel,
	linux-arm-msm, devicetree, Mathieu Poirier, Suzuki K Poulose,
	mike.leach, Jonathan Marek

Hi Bjorn,

On 2020-06-21 12:52, Bjorn Andersson wrote:
> On Tue 09 Jun 06:30 PDT 2020, Sai Prakash Ranjan wrote:
> 
>> Define iommus property for Coresight ETR component in
>> SC7180 SoC with the SID and mask to enable SMMU
>> translation for this master.
>> 
> 
> We don't have &apps_smmu in linux-next, as we've yet to figure out how
> to disable the boot splash or support the stream mapping handover.
> 
> So I'm not able to apply this.
> 

This is for SC7180 which has apps_smmu not SM8150.

Thanks,
Sai

-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a 
member
of Code Aurora Forum, hosted by The Linux Foundation

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

* Re: [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-06-21  8:09     ` Sai Prakash Ranjan
@ 2020-06-24  6:56       ` Sai Prakash Ranjan
  2020-07-27 20:58         ` Bjorn Andersson
  0 siblings, 1 reply; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-06-24  6:56 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Stephen Boyd, linux-arm-kernel, linux-kernel,
	linux-arm-msm, devicetree, Mathieu Poirier, Suzuki K Poulose,
	mike.leach, Jonathan Marek

Hi Bjorn,

On 2020-06-21 13:39, Sai Prakash Ranjan wrote:
> Hi Bjorn,
> 
> On 2020-06-21 12:52, Bjorn Andersson wrote:
>> On Tue 09 Jun 06:30 PDT 2020, Sai Prakash Ranjan wrote:
>> 
>>> Define iommus property for Coresight ETR component in
>>> SC7180 SoC with the SID and mask to enable SMMU
>>> translation for this master.
>>> 
>> 
>> We don't have &apps_smmu in linux-next, as we've yet to figure out how
>> to disable the boot splash or support the stream mapping handover.
>> 
>> So I'm not able to apply this.
>> 
> 
> This is for SC7180 which has apps_smmu not SM8150.
> 

Please let me know if this needs further explanation.

Thanks,
Sai

-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a 
member
of Code Aurora Forum, hosted by The Linux Foundation

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

* Re: [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-06-24  6:56       ` Sai Prakash Ranjan
@ 2020-07-27 20:58         ` Bjorn Andersson
  2020-07-28  4:40           ` Sai Prakash Ranjan
  0 siblings, 1 reply; 15+ messages in thread
From: Bjorn Andersson @ 2020-07-27 20:58 UTC (permalink / raw)
  To: Sai Prakash Ranjan
  Cc: Andy Gross, Stephen Boyd, linux-arm-kernel, linux-kernel,
	linux-arm-msm, devicetree, Mathieu Poirier, Suzuki K Poulose,
	mike.leach, Jonathan Marek

On Tue 23 Jun 23:56 PDT 2020, Sai Prakash Ranjan wrote:

> Hi Bjorn,
> 
> On 2020-06-21 13:39, Sai Prakash Ranjan wrote:
> > Hi Bjorn,
> > 
> > On 2020-06-21 12:52, Bjorn Andersson wrote:
> > > On Tue 09 Jun 06:30 PDT 2020, Sai Prakash Ranjan wrote:
> > > 
> > > > Define iommus property for Coresight ETR component in
> > > > SC7180 SoC with the SID and mask to enable SMMU
> > > > translation for this master.
> > > > 
> > > 
> > > We don't have &apps_smmu in linux-next, as we've yet to figure out how
> > > to disable the boot splash or support the stream mapping handover.
> > > 
> > > So I'm not able to apply this.
> > > 
> > 
> > This is for SC7180 which has apps_smmu not SM8150.
> > 
> 
> Please let me know if this needs further explanation.
> 

I must have commented on the wrong patch, sorry about that. The SM8150
patch in this series does not compile due to the lack of &apps_smmu.

I've picked the other 3 patches.

Thanks,
Bjorn

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

* Re: [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-07-27 20:58         ` Bjorn Andersson
@ 2020-07-28  4:40           ` Sai Prakash Ranjan
  2020-07-28  6:28             ` Bjorn Andersson
  0 siblings, 1 reply; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-07-28  4:40 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Stephen Boyd, linux-arm-kernel, linux-kernel,
	linux-arm-msm, devicetree, Mathieu Poirier, Suzuki K Poulose,
	mike.leach, Jonathan Marek

On 2020-07-28 02:28, Bjorn Andersson wrote:
> On Tue 23 Jun 23:56 PDT 2020, Sai Prakash Ranjan wrote:
> 
>> Hi Bjorn,
>> 
>> On 2020-06-21 13:39, Sai Prakash Ranjan wrote:
>> > Hi Bjorn,
>> >
>> > On 2020-06-21 12:52, Bjorn Andersson wrote:
>> > > On Tue 09 Jun 06:30 PDT 2020, Sai Prakash Ranjan wrote:
>> > >
>> > > > Define iommus property for Coresight ETR component in
>> > > > SC7180 SoC with the SID and mask to enable SMMU
>> > > > translation for this master.
>> > > >
>> > >
>> > > We don't have &apps_smmu in linux-next, as we've yet to figure out how
>> > > to disable the boot splash or support the stream mapping handover.
>> > >
>> > > So I'm not able to apply this.
>> > >
>> >
>> > This is for SC7180 which has apps_smmu not SM8150.
>> >
>> 
>> Please let me know if this needs further explanation.
>> 
> 
> I must have commented on the wrong patch, sorry about that. The SM8150
> patch in this series does not compile due to the lack of &apps_smmu.
> 
> I've picked the other 3 patches.
> 

Thanks Bjorn, I can resend SM8150 coresight change when SMMU support 
lands for it
since coresight ETR won't work without it on android bootloaders.

As for the other 3 patches, Patch 1 and Patch 2 will apply cleanly to 
the right coresight
nodes but due to the missing unique context in Patch 3, it could be 
applied to some other node.
We had to upload this change 3 times in chromium tree to get it applied 
to the right replicator node :)
and this property in Patch 3 is important to fix a hard lockup. I'm not 
sure why this patch is missing
the proper context :/

I couldn't find the changes yet in qcom/for-next or other branches to 
see if it is
applied to right replicator node. In case you haven't applied it yet, 
Patch 3 change
should be applied to "replicator@6b06000" node.

Thanks,
Sai

-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a 
member
of Code Aurora Forum, hosted by The Linux Foundation

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

* Re: [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-07-28  4:40           ` Sai Prakash Ranjan
@ 2020-07-28  6:28             ` Bjorn Andersson
  2020-07-28  7:20               ` Sai Prakash Ranjan
  0 siblings, 1 reply; 15+ messages in thread
From: Bjorn Andersson @ 2020-07-28  6:28 UTC (permalink / raw)
  To: Sai Prakash Ranjan
  Cc: Andy Gross, Stephen Boyd, linux-arm-kernel, linux-kernel,
	linux-arm-msm, devicetree, Mathieu Poirier, Suzuki K Poulose,
	mike.leach, Jonathan Marek

On Mon 27 Jul 21:40 PDT 2020, Sai Prakash Ranjan wrote:

> On 2020-07-28 02:28, Bjorn Andersson wrote:
> > On Tue 23 Jun 23:56 PDT 2020, Sai Prakash Ranjan wrote:
> > 
> > > Hi Bjorn,
> > > 
> > > On 2020-06-21 13:39, Sai Prakash Ranjan wrote:
> > > > Hi Bjorn,
> > > >
> > > > On 2020-06-21 12:52, Bjorn Andersson wrote:
> > > > > On Tue 09 Jun 06:30 PDT 2020, Sai Prakash Ranjan wrote:
> > > > >
> > > > > > Define iommus property for Coresight ETR component in
> > > > > > SC7180 SoC with the SID and mask to enable SMMU
> > > > > > translation for this master.
> > > > > >
> > > > >
> > > > > We don't have &apps_smmu in linux-next, as we've yet to figure out how
> > > > > to disable the boot splash or support the stream mapping handover.
> > > > >
> > > > > So I'm not able to apply this.
> > > > >
> > > >
> > > > This is for SC7180 which has apps_smmu not SM8150.
> > > >
> > > 
> > > Please let me know if this needs further explanation.
> > > 
> > 
> > I must have commented on the wrong patch, sorry about that. The SM8150
> > patch in this series does not compile due to the lack of &apps_smmu.
> > 
> > I've picked the other 3 patches.
> > 
> 
> Thanks Bjorn, I can resend SM8150 coresight change when SMMU support lands
> for it
> since coresight ETR won't work without it on android bootloaders.
> 
> As for the other 3 patches, Patch 1 and Patch 2 will apply cleanly to the
> right coresight
> nodes but due to the missing unique context in Patch 3, it could be applied
> to some other node.
> We had to upload this change 3 times in chromium tree to get it applied to
> the right replicator node :)
> and this property in Patch 3 is important to fix a hard lockup. I'm not sure
> why this patch is missing
> the proper context :/
> 
> I couldn't find the changes yet in qcom/for-next or other branches to see if
> it is
> applied to right replicator node. In case you haven't applied it yet, Patch
> 3 change
> should be applied to "replicator@6b06000" node.
> 

Thanks for pointing that out, I've fixed up the incorrectly applied
change. (Still not published the branch)


For the future I believe you can pass -U <n> to git format-patch to get
<n> number of lines of context. Making that bigger than the default 3
should help for the coresight patches.

Thanks,
Bjorn

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

* Re: [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR
  2020-07-28  6:28             ` Bjorn Andersson
@ 2020-07-28  7:20               ` Sai Prakash Ranjan
  0 siblings, 0 replies; 15+ messages in thread
From: Sai Prakash Ranjan @ 2020-07-28  7:20 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Stephen Boyd, linux-arm-kernel, linux-kernel,
	linux-arm-msm, devicetree, Mathieu Poirier, Suzuki K Poulose,
	mike.leach, Jonathan Marek

On 2020-07-28 11:58, Bjorn Andersson wrote:
> On Mon 27 Jul 21:40 PDT 2020, Sai Prakash Ranjan wrote:
> 
>> On 2020-07-28 02:28, Bjorn Andersson wrote:
>> > On Tue 23 Jun 23:56 PDT 2020, Sai Prakash Ranjan wrote:
>> >
>> > > Hi Bjorn,
>> > >
>> > > On 2020-06-21 13:39, Sai Prakash Ranjan wrote:
>> > > > Hi Bjorn,
>> > > >
>> > > > On 2020-06-21 12:52, Bjorn Andersson wrote:
>> > > > > On Tue 09 Jun 06:30 PDT 2020, Sai Prakash Ranjan wrote:
>> > > > >
>> > > > > > Define iommus property for Coresight ETR component in
>> > > > > > SC7180 SoC with the SID and mask to enable SMMU
>> > > > > > translation for this master.
>> > > > > >
>> > > > >
>> > > > > We don't have &apps_smmu in linux-next, as we've yet to figure out how
>> > > > > to disable the boot splash or support the stream mapping handover.
>> > > > >
>> > > > > So I'm not able to apply this.
>> > > > >
>> > > >
>> > > > This is for SC7180 which has apps_smmu not SM8150.
>> > > >
>> > >
>> > > Please let me know if this needs further explanation.
>> > >
>> >
>> > I must have commented on the wrong patch, sorry about that. The SM8150
>> > patch in this series does not compile due to the lack of &apps_smmu.
>> >
>> > I've picked the other 3 patches.
>> >
>> 
>> Thanks Bjorn, I can resend SM8150 coresight change when SMMU support 
>> lands
>> for it
>> since coresight ETR won't work without it on android bootloaders.
>> 
>> As for the other 3 patches, Patch 1 and Patch 2 will apply cleanly to 
>> the
>> right coresight
>> nodes but due to the missing unique context in Patch 3, it could be 
>> applied
>> to some other node.
>> We had to upload this change 3 times in chromium tree to get it 
>> applied to
>> the right replicator node :)
>> and this property in Patch 3 is important to fix a hard lockup. I'm 
>> not sure
>> why this patch is missing
>> the proper context :/
>> 
>> I couldn't find the changes yet in qcom/for-next or other branches to 
>> see if
>> it is
>> applied to right replicator node. In case you haven't applied it yet, 
>> Patch
>> 3 change
>> should be applied to "replicator@6b06000" node.
>> 
> 
> Thanks for pointing that out, I've fixed up the incorrectly applied
> change. (Still not published the branch)
> 
> 
> For the future I believe you can pass -U <n> to git format-patch to get
> <n> number of lines of context. Making that bigger than the default 3
> should help for the coresight patches.
> 

Thanks Bjorn, will use this option going forward.

Thanks,
Sai

-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a 
member
of Code Aurora Forum, hosted by The Linux Foundation

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

end of thread, other threads:[~2020-07-28  7:20 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-09 13:30 [PATCH 0/4] Add coresight support for SM8150 and few changes to SC7180 Sai Prakash Ranjan
2020-06-09 13:30 ` [PATCH 1/4] arm64: dts: qcom: sc7180: Add support to skip powering up of ETM Sai Prakash Ranjan
2020-06-15 17:17   ` Mathieu Poirier
2020-06-09 13:30 ` [PATCH 2/4] arm64: dts: qcom: sc7180: Add iommus property to ETR Sai Prakash Ranjan
2020-06-21  7:22   ` Bjorn Andersson
2020-06-21  8:09     ` Sai Prakash Ranjan
2020-06-24  6:56       ` Sai Prakash Ranjan
2020-07-27 20:58         ` Bjorn Andersson
2020-07-28  4:40           ` Sai Prakash Ranjan
2020-07-28  6:28             ` Bjorn Andersson
2020-07-28  7:20               ` Sai Prakash Ranjan
2020-06-09 13:30 ` [PATCH 3/4] arm64: dts: qcom: sc7180: Add support for context losing replicator Sai Prakash Ranjan
2020-06-15 17:19   ` Mathieu Poirier
2020-06-09 13:30 ` [PATCH 4/4] arm64: dts: qcom: sm8150: Add Coresight support Sai Prakash Ranjan
2020-06-15 17:35   ` Mathieu Poirier

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