linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/4] arm64: dts: juno: CoreSight support updates
@ 2017-01-17 12:15 Sudeep Holla
  2017-01-17 12:15 ` [PATCH v4 1/4] arm64: dts: juno: remove dtsi nesting inside tree structure Sudeep Holla
                   ` (3 more replies)
  0 siblings, 4 replies; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Juno r1/r2 boards have different CoreSight infrastructure outside the
CPU clusters. This patchset adds the additional coreSight components to
separate .dtsi files to support these differences.

v1->v2:
	- moved the addition of the STM component into a separate patch

v2->v3:
	- moved the back the common coreSight components back into
	  juno-base.dtsi

v3->v4:
	- removed dtsi nesting in the existing Juno dts file to avoid
	  further addition of such nesting
	- renamed some of the funnel and etf node names(which were
	  previously named confusing them to the labels

Mike Leach (2):
  arm64: dts: juno: add CoreSight support for Juno r1/r2 variants
  arm64: dts: juno: add missing CoreSight STM component

Sudeep Holla (2):
  arm64: dts: juno: remove dtsi nesting inside tree structure
  arm64: dts: juno: refactor CoreSight support on Juno r0

 arch/arm64/boot/dts/arm/juno-base.dtsi    |  41 ++++++++----
 arch/arm64/boot/dts/arm/juno-clocks.dtsi  |   3 +-
 arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi | 100 ++++++++++++++++++++++++++++++
 arch/arm64/boot/dts/arm/juno-r1.dts       |  16 ++++-
 arch/arm64/boot/dts/arm/juno-r2.dts       |  16 ++++-
 arch/arm64/boot/dts/arm/juno.dts          |  27 +++++++-
 6 files changed, 184 insertions(+), 19 deletions(-)
 create mode 100644 arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi

--
2.7.4

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

* [PATCH v4 1/4] arm64: dts: juno: remove dtsi nesting inside tree structure
  2017-01-17 12:15 [PATCH v4 0/4] arm64: dts: juno: CoreSight support updates Sudeep Holla
@ 2017-01-17 12:15 ` Sudeep Holla
  2017-01-17 12:15 ` [PATCH v4 2/4] arm64: dts: juno: refactor CoreSight support on Juno r0 Sudeep Holla
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Currently juno-clock.dtsi and juno-base.dtsi are nested badly inside
the device tree structure. It's generally good practice to ensure that
individual dtsi stand by themselves at the top of the file.

This patch removes the nesting of the above mentioned dtsi files and
makes them independent.

Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
---
 arch/arm64/boot/dts/arm/juno-base.dtsi   | 6 ++++--
 arch/arm64/boot/dts/arm/juno-clocks.dtsi | 3 ++-
 arch/arm64/boot/dts/arm/juno-r1.dts      | 3 +--
 arch/arm64/boot/dts/arm/juno-r2.dts      | 3 +--
 arch/arm64/boot/dts/arm/juno.dts         | 3 +--
 5 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi
index 7d832247d0db..580afaee978f 100644
--- a/arch/arm64/boot/dts/arm/juno-base.dtsi
+++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
@@ -1,3 +1,6 @@
+#include "juno-clocks.dtsi"
+
+/ {
 	/*
 	 *  Devices shared by all Juno boards
 	 */
@@ -507,8 +510,6 @@
 		};
 	};

-	/include/ "juno-clocks.dtsi"
-
 	smmu_dma: iommu at 7fb00000 {
 		compatible = "arm,mmu-401", "arm,smmu-v1";
 		reg = <0x0 0x7fb00000 0x0 0x10000>;
@@ -719,3 +720,4 @@
 		interrupt-map-mask = <0 0>;
 		interrupt-map = <0 0 &gic 0 0 0 168 IRQ_TYPE_LEVEL_HIGH>;
 	};
+};
diff --git a/arch/arm64/boot/dts/arm/juno-clocks.dtsi b/arch/arm64/boot/dts/arm/juno-clocks.dtsi
index 25352ed943e6..e5e265dfa902 100644
--- a/arch/arm64/boot/dts/arm/juno-clocks.dtsi
+++ b/arch/arm64/boot/dts/arm/juno-clocks.dtsi
@@ -6,7 +6,7 @@
  * This file is licensed under a dual GPLv2 or BSD license.
  *
  */
-
+/ {
 	/* SoC fixed clocks */
 	soc_uartclk: refclk7273800hz {
 		compatible = "fixed-clock";
@@ -42,3 +42,4 @@
 		clock-frequency = <400000000>;
 		clock-output-names = "faxi_clk";
 	};
+};
diff --git a/arch/arm64/boot/dts/arm/juno-r1.dts b/arch/arm64/boot/dts/arm/juno-r1.dts
index eec37feee8fc..b883a8afb6f4 100644
--- a/arch/arm64/boot/dts/arm/juno-r1.dts
+++ b/arch/arm64/boot/dts/arm/juno-r1.dts
@@ -9,6 +9,7 @@
 /dts-v1/;

 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "juno-base.dtsi"

 / {
 	model = "ARM Juno development board (r1)";
@@ -176,8 +177,6 @@
 				     <&A53_2>,
 				     <&A53_3>;
 	};
-
-	#include "juno-base.dtsi"
 };

 &memtimer {
diff --git a/arch/arm64/boot/dts/arm/juno-r2.dts b/arch/arm64/boot/dts/arm/juno-r2.dts
index 28f40ec44090..cfd8150bf30a 100644
--- a/arch/arm64/boot/dts/arm/juno-r2.dts
+++ b/arch/arm64/boot/dts/arm/juno-r2.dts
@@ -9,6 +9,7 @@
 /dts-v1/;

 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "juno-base.dtsi"

 / {
 	model = "ARM Juno development board (r2)";
@@ -176,8 +177,6 @@
 				     <&A53_2>,
 				     <&A53_3>;
 	};
-
-	#include "juno-base.dtsi"
 };

 &memtimer {
diff --git a/arch/arm64/boot/dts/arm/juno.dts b/arch/arm64/boot/dts/arm/juno.dts
index ac5ceb73f45f..9967c808a92d 100644
--- a/arch/arm64/boot/dts/arm/juno.dts
+++ b/arch/arm64/boot/dts/arm/juno.dts
@@ -9,6 +9,7 @@
 /dts-v1/;

 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "juno-base.dtsi"

 / {
 	model = "ARM Juno development board (r0)";
@@ -176,8 +177,6 @@
 				     <&A53_2>,
 				     <&A53_3>;
 	};
-
-	#include "juno-base.dtsi"
 };

 &etm0 {
--
2.7.4

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

* [PATCH v4 2/4] arm64: dts: juno: refactor CoreSight support on Juno r0
  2017-01-17 12:15 [PATCH v4 0/4] arm64: dts: juno: CoreSight support updates Sudeep Holla
  2017-01-17 12:15 ` [PATCH v4 1/4] arm64: dts: juno: remove dtsi nesting inside tree structure Sudeep Holla
@ 2017-01-17 12:15 ` Sudeep Holla
  2017-01-17 12:15 ` [PATCH v4 3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants Sudeep Holla
  2017-01-17 12:15 ` [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component Sudeep Holla
  3 siblings, 0 replies; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Currently the Coresight components are supported only on Juno r0
variant. In preparation to add support to Juno r1/r2 variants, this
patch refactors the existing coresight device nodes so that r1/r2
support can be added easily.

It also cleans up some of the device node names which were previously
named so as they were confused as the labels rather than the node names.

Reviewed-and-Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
---
 arch/arm64/boot/dts/arm/juno-base.dtsi | 20 ++++++++++----------
 arch/arm64/boot/dts/arm/juno.dts       |  8 ++++++++
 2 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi
index 580afaee978f..faedf357db3b 100644
--- a/arch/arm64/boot/dts/arm/juno-base.dtsi
+++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
@@ -86,7 +86,7 @@
 	 * The actual size is just 4K though 64K is reserved. Access to the
 	 * unmapped reserved region results in a DECERR response.
 	 */
-	etf at 20010000 {
+	etf at 20010000 { /* ETF 0 */
 		compatible = "arm,coresight-tmc", "arm,primecell";
 		reg = <0 0x20010000 0 0x1000>;

@@ -100,7 +100,7 @@
 			/* input port */
 			port at 0 {
 				reg = <0>;
-				etf_in_port: endpoint {
+				etf0_in_port: endpoint {
 					slave-mode;
 					remote-endpoint = <&main_funnel_out_port>;
 				};
@@ -109,8 +109,7 @@
 			/* output port */
 			port at 1 {
 				reg = <0>;
-				etf_out_port: endpoint {
-					remote-endpoint = <&replicator_in_port0>;
+				etf0_out_port: endpoint {
 				};
 			};
 		};
@@ -131,7 +130,8 @@
 		};
 	};

-	main-funnel at 20040000 {
+	/* main funnel on Juno r0, cssys0 funnel on Juno r1/r2 as per TRM*/
+	main_funnel: funnel at 20040000 {
 		compatible = "arm,coresight-funnel", "arm,primecell";
 		reg = <0 0x20040000 0 0x1000>;

@@ -142,13 +142,15 @@
 			#address-cells = <1>;
 			#size-cells = <0>;

+			/* output port */
 			port at 0 {
 				reg = <0>;
 				main_funnel_out_port: endpoint {
-					remote-endpoint = <&etf_in_port>;
+					remote-endpoint = <&etf0_in_port>;
 				};
 			};

+			/* input ports */
 			port at 1 {
 				reg = <0>;
 				main_funnel_in_port0: endpoint {
@@ -164,7 +166,6 @@
 					remote-endpoint = <&cluster1_funnel_out_port>;
 				};
 			};
-
 		};
 	};

@@ -198,7 +199,7 @@
 		};
 	};

-	cluster0-funnel at 220c0000 {
+	funnel at 220c0000 { /* cluster0 funnel */
 		compatible = "arm,coresight-funnel", "arm,primecell";
 		reg = <0 0x220c0000 0 0x1000>;

@@ -262,7 +263,7 @@
 		};
 	};

-	cluster1-funnel at 230c0000 {
+	funnel at 230c0000 { /* cluster1 funnel */
 		compatible = "arm,coresight-funnel", "arm,primecell";
 		reg = <0 0x230c0000 0 0x1000>;

@@ -385,7 +386,6 @@
 				reg = <0>;
 				replicator_in_port0: endpoint {
 					slave-mode;
-					remote-endpoint = <&etf_out_port>;
 				};
 			};
 		};
diff --git a/arch/arm64/boot/dts/arm/juno.dts b/arch/arm64/boot/dts/arm/juno.dts
index 9967c808a92d..66fa4388d181 100644
--- a/arch/arm64/boot/dts/arm/juno.dts
+++ b/arch/arm64/boot/dts/arm/juno.dts
@@ -202,3 +202,11 @@
 &etm5 {
 	cpu = <&A53_3>;
 };
+
+&etf0_out_port {
+	remote-endpoint = <&replicator_in_port0>;
+};
+
+&replicator_in_port0 {
+	remote-endpoint = <&etf0_out_port>;
+};
--
2.7.4

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

* [PATCH v4 3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants
  2017-01-17 12:15 [PATCH v4 0/4] arm64: dts: juno: CoreSight support updates Sudeep Holla
  2017-01-17 12:15 ` [PATCH v4 1/4] arm64: dts: juno: remove dtsi nesting inside tree structure Sudeep Holla
  2017-01-17 12:15 ` [PATCH v4 2/4] arm64: dts: juno: refactor CoreSight support on Juno r0 Sudeep Holla
@ 2017-01-17 12:15 ` Sudeep Holla
  2017-01-17 13:27   ` Suzuki K Poulose
  2017-01-17 12:15 ` [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component Sudeep Holla
  3 siblings, 1 reply; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Mike Leach <mike.leach@linaro.org>

The CoreSight support added for Juno is valid for only Juno r0.
The Juno r1 and r2 variants have additional components and alternative
connection routes between trace source and sinks.

This patch builds on top of the existing r0 support and extends it to
Juno r1/r2 variants.

Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Mike Leach <mike.leach@linaro.org>
[sudeep.holla at arm.com: minor changelog update and major reorganisation of
	the common coresight components back into juno-base.dtsi to avoid
	duplication, also renamed funnel node names]
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
---
 arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi | 100 ++++++++++++++++++++++++++++++
 arch/arm64/boot/dts/arm/juno-r1.dts       |   9 +++
 arch/arm64/boot/dts/arm/juno-r2.dts       |   9 +++
 3 files changed, 118 insertions(+)
 create mode 100644 arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi

diff --git a/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
new file mode 100644
index 000000000000..563463ed28c7
--- /dev/null
+++ b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
@@ -0,0 +1,100 @@
+/ {
+	funnel at 20130000 { /* cssys2 */
+		compatible = "arm,coresight-funnel", "arm,primecell";
+		reg = <0 0x20130000 0 0x1000>;
+
+		clocks = <&soc_smc50mhz>;
+		clock-names = "apb_pclk";
+		power-domains = <&scpi_devpd 0>;
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			/* output port */
+			port at 0 {
+				reg = <0>;
+				csys1_funnel_out_port: endpoint {
+					remote-endpoint = <&etf1_in_port>;
+				};
+			};
+
+			/* input port */
+			port at 1 {
+				reg = <0>;
+				csys1_funnel_in_port0: endpoint {
+					slave-mode;
+				};
+			};
+
+		};
+	};
+
+	etf at 20140000 { /* ETF 1 */
+		compatible = "arm,coresight-tmc", "arm,primecell";
+		reg = <0 0x20140000 0 0x1000>;
+
+		clocks = <&soc_smc50mhz>;
+		clock-names = "apb_pclk";
+		power-domains = <&scpi_devpd 0>;
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			/* input port */
+			port at 0 {
+				reg = <0>;
+				etf1_in_port: endpoint {
+					slave-mode;
+					remote-endpoint = <&csys1_funnel_out_port>;
+				};
+			};
+
+			/* output port */
+			port at 1 {
+				reg = <0>;
+				etf1_out_port: endpoint {
+					remote-endpoint = <&csys2_funnel_in_port1>;
+				};
+			};
+		};
+	};
+
+	funnel at 20150000 { /* cssys2 */
+		compatible = "arm,coresight-funnel", "arm,primecell";
+		reg = <0 0x20150000 0 0x1000>;
+
+		clocks = <&soc_smc50mhz>;
+		clock-names = "apb_pclk";
+		power-domains = <&scpi_devpd 0>;
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			/* output port */
+			port at 0 {
+				reg = <0>;
+				csys2_funnel_out_port: endpoint {
+					remote-endpoint = <&replicator_in_port0>;
+				};
+			};
+
+			/* input ports */
+			port at 1 {
+				reg = <0>;
+				csys2_funnel_in_port0: endpoint {
+					slave-mode;
+					remote-endpoint = <&etf0_out_port>;
+				};
+			};
+
+			port at 2 {
+				reg = <1>;
+				csys2_funnel_in_port1: endpoint {
+					slave-mode;
+					remote-endpoint = <&etf1_out_port>;
+				};
+			};
+
+		};
+	};
+};
diff --git a/arch/arm64/boot/dts/arm/juno-r1.dts b/arch/arm64/boot/dts/arm/juno-r1.dts
index b883a8afb6f4..aef138aa5765 100644
--- a/arch/arm64/boot/dts/arm/juno-r1.dts
+++ b/arch/arm64/boot/dts/arm/juno-r1.dts
@@ -10,6 +10,7 @@

 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include "juno-base.dtsi"
+#include "juno-cs-r1r2.dtsi"

 / {
 	model = "ARM Juno development board (r1)";
@@ -226,3 +227,11 @@
 &gpu1_thermal_zone {
 	status = "okay";
 };
+
+&etf0_out_port {
+	remote-endpoint = <&csys2_funnel_in_port0>;
+};
+
+&replicator_in_port0 {
+	remote-endpoint = <&csys2_funnel_out_port>;
+};
diff --git a/arch/arm64/boot/dts/arm/juno-r2.dts b/arch/arm64/boot/dts/arm/juno-r2.dts
index cfd8150bf30a..827da7c92607 100644
--- a/arch/arm64/boot/dts/arm/juno-r2.dts
+++ b/arch/arm64/boot/dts/arm/juno-r2.dts
@@ -10,6 +10,7 @@

 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include "juno-base.dtsi"
+#include "juno-cs-r1r2.dtsi"

 / {
 	model = "ARM Juno development board (r2)";
@@ -226,3 +227,11 @@
 &gpu1_thermal_zone {
 	status = "okay";
 };
+
+&etf0_out_port {
+	remote-endpoint = <&csys2_funnel_in_port0>;
+};
+
+&replicator_in_port0 {
+	remote-endpoint = <&csys2_funnel_out_port>;
+};
--
2.7.4

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

* [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component
  2017-01-17 12:15 [PATCH v4 0/4] arm64: dts: juno: CoreSight support updates Sudeep Holla
                   ` (2 preceding siblings ...)
  2017-01-17 12:15 ` [PATCH v4 3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants Sudeep Holla
@ 2017-01-17 12:15 ` Sudeep Holla
  2017-01-17 13:39   ` Suzuki K Poulose
  3 siblings, 1 reply; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Mike Leach <mike.leach@linaro.org>

This patch adds the missing CoreSight STM component definition to the
device tree of all the juno variants(r0,r1,r2)

STM component is connected to different funnels depending on Juno
platform variant.

Reviewed-and-Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Mike Leach <mike.leach@linaro.org>
[sudeep.holla at arm.com: minor changelog update and reorganising the STM
	node back into juno-base.dtsi to avoid duplication]
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
---
 arch/arm64/boot/dts/arm/juno-base.dtsi | 15 +++++++++++++++
 arch/arm64/boot/dts/arm/juno-r1.dts    |  4 ++++
 arch/arm64/boot/dts/arm/juno-r2.dts    |  4 ++++
 arch/arm64/boot/dts/arm/juno.dts       | 16 ++++++++++++++++
 4 files changed, 39 insertions(+)

diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi
index faedf357db3b..58c1773c3aa4 100644
--- a/arch/arm64/boot/dts/arm/juno-base.dtsi
+++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
@@ -185,6 +185,21 @@
 		};
 	};

+	stm at 20100000 {
+		compatible = "arm,coresight-stm", "arm,primecell";
+		reg = <0 0x20100000 0 0x1000>,
+		      <0 0x28000000 0 0x180000>;
+		reg-names = "stm-base", "stm-stimulus-base";
+
+		clocks = <&soc_smc50mhz>;
+		clock-names = "apb_pclk";
+		power-domains = <&scpi_devpd 0>;
+		port {
+			stm_out_port: endpoint {
+			};
+		};
+	};
+
 	etm0: etm at 22040000 {
 		compatible = "arm,coresight-etm4x", "arm,primecell";
 		reg = <0 0x22040000 0 0x1000>;
diff --git a/arch/arm64/boot/dts/arm/juno-r1.dts b/arch/arm64/boot/dts/arm/juno-r1.dts
index aef138aa5765..0033c59a64b5 100644
--- a/arch/arm64/boot/dts/arm/juno-r1.dts
+++ b/arch/arm64/boot/dts/arm/juno-r1.dts
@@ -235,3 +235,7 @@
 &replicator_in_port0 {
 	remote-endpoint = <&csys2_funnel_out_port>;
 };
+
+&stm_out_port {
+	remote-endpoint = <&csys1_funnel_in_port0>;
+};
diff --git a/arch/arm64/boot/dts/arm/juno-r2.dts b/arch/arm64/boot/dts/arm/juno-r2.dts
index 827da7c92607..218d0e4736a8 100644
--- a/arch/arm64/boot/dts/arm/juno-r2.dts
+++ b/arch/arm64/boot/dts/arm/juno-r2.dts
@@ -235,3 +235,7 @@
 &replicator_in_port0 {
 	remote-endpoint = <&csys2_funnel_out_port>;
 };
+
+&stm_out_port {
+	remote-endpoint = <&csys1_funnel_in_port0>;
+};
diff --git a/arch/arm64/boot/dts/arm/juno.dts b/arch/arm64/boot/dts/arm/juno.dts
index 66fa4388d181..bb2820ef3d5b 100644
--- a/arch/arm64/boot/dts/arm/juno.dts
+++ b/arch/arm64/boot/dts/arm/juno.dts
@@ -210,3 +210,19 @@
 &replicator_in_port0 {
 	remote-endpoint = <&etf0_out_port>;
 };
+
+&stm_out_port {
+	remote-endpoint = <&main_funnel_in_port2>;
+};
+
+&main_funnel {
+	ports {
+		port at 3 {
+			reg = <2>;
+			main_funnel_in_port2: endpoint {
+				slave-mode;
+				remote-endpoint = <&stm_out_port>;
+			};
+		};
+	};
+};
--
2.7.4

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

* [PATCH v4 3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants
  2017-01-17 12:15 ` [PATCH v4 3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants Sudeep Holla
@ 2017-01-17 13:27   ` Suzuki K Poulose
  2017-01-17 14:07     ` Sudeep Holla
  0 siblings, 1 reply; 11+ messages in thread
From: Suzuki K Poulose @ 2017-01-17 13:27 UTC (permalink / raw)
  To: linux-arm-kernel

On 17/01/17 12:15, Sudeep Holla wrote:
> From: Mike Leach <mike.leach@linaro.org>
>
> The CoreSight support added for Juno is valid for only Juno r0.
> The Juno r1 and r2 variants have additional components and alternative
> connection routes between trace source and sinks.
>
> This patch builds on top of the existing r0 support and extends it to
> Juno r1/r2 variants.
>
> Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
> Signed-off-by: Mike Leach <mike.leach@linaro.org>
> [sudeep.holla at arm.com: minor changelog update and major reorganisation of
> 	the common coresight components back into juno-base.dtsi to avoid
> 	duplication, also renamed funnel node names]
> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
> ---
>  arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi | 100 ++++++++++++++++++++++++++++++
>  arch/arm64/boot/dts/arm/juno-r1.dts       |   9 +++
>  arch/arm64/boot/dts/arm/juno-r2.dts       |   9 +++
>  3 files changed, 118 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
>
> diff --git a/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
> new file mode 100644
> index 000000000000..563463ed28c7
> --- /dev/null
> +++ b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
> @@ -0,0 +1,100 @@
> +/ {
> +	funnel at 20130000 { /* cssys2 */

Typo, that should be csys1. Rest looks good to me.

Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>

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

* [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component
  2017-01-17 12:15 ` [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component Sudeep Holla
@ 2017-01-17 13:39   ` Suzuki K Poulose
  2017-01-17 14:01     ` Sudeep Holla
  0 siblings, 1 reply; 11+ messages in thread
From: Suzuki K Poulose @ 2017-01-17 13:39 UTC (permalink / raw)
  To: linux-arm-kernel

On 17/01/17 12:15, Sudeep Holla wrote:
> From: Mike Leach <mike.leach@linaro.org>
>
> This patch adds the missing CoreSight STM component definition to the
> device tree of all the juno variants(r0,r1,r2)
>
> STM component is connected to different funnels depending on Juno
> platform variant.
>
> Reviewed-and-Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org>
> Signed-off-by: Mike Leach <mike.leach@linaro.org>
> [sudeep.holla at arm.com: minor changelog update and reorganising the STM
> 	node back into juno-base.dtsi to avoid duplication]
> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
> ---
>  arch/arm64/boot/dts/arm/juno-base.dtsi | 15 +++++++++++++++
>  arch/arm64/boot/dts/arm/juno-r1.dts    |  4 ++++
>  arch/arm64/boot/dts/arm/juno-r2.dts    |  4 ++++
>  arch/arm64/boot/dts/arm/juno.dts       | 16 ++++++++++++++++
>  4 files changed, 39 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi
> index faedf357db3b..58c1773c3aa4 100644
> --- a/arch/arm64/boot/dts/arm/juno-base.dtsi
> +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
> @@ -185,6 +185,21 @@
>  		};
>  	};
>
> +	stm at 20100000 {
> +		compatible = "arm,coresight-stm", "arm,primecell";
> +		reg = <0 0x20100000 0 0x1000>,
> +		      <0 0x28000000 0 0x180000>;

The size of the stimulus base is 16MB (as per TRM), implies => 0x1000000.

with that fixed :

Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>

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

* [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component
  2017-01-17 13:39   ` Suzuki K Poulose
@ 2017-01-17 14:01     ` Sudeep Holla
  2017-01-17 14:52       ` Mike Leach
  0 siblings, 1 reply; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 14:01 UTC (permalink / raw)
  To: linux-arm-kernel



On 17/01/17 13:39, Suzuki K Poulose wrote:
> On 17/01/17 12:15, Sudeep Holla wrote:
>> From: Mike Leach <mike.leach@linaro.org>
>>
>> This patch adds the missing CoreSight STM component definition to the
>> device tree of all the juno variants(r0,r1,r2)
>>
>> STM component is connected to different funnels depending on Juno
>> platform variant.
>>
>> Reviewed-and-Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org>
>> Signed-off-by: Mike Leach <mike.leach@linaro.org>
>> [sudeep.holla at arm.com: minor changelog update and reorganising the STM
>>     node back into juno-base.dtsi to avoid duplication]
>> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
>> ---
>>  arch/arm64/boot/dts/arm/juno-base.dtsi | 15 +++++++++++++++
>>  arch/arm64/boot/dts/arm/juno-r1.dts    |  4 ++++
>>  arch/arm64/boot/dts/arm/juno-r2.dts    |  4 ++++
>>  arch/arm64/boot/dts/arm/juno.dts       | 16 ++++++++++++++++
>>  4 files changed, 39 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi
>> b/arch/arm64/boot/dts/arm/juno-base.dtsi
>> index faedf357db3b..58c1773c3aa4 100644
>> --- a/arch/arm64/boot/dts/arm/juno-base.dtsi
>> +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
>> @@ -185,6 +185,21 @@
>>          };
>>      };
>>
>> +    stm at 20100000 {
>> +        compatible = "arm,coresight-stm", "arm,primecell";
>> +        reg = <0 0x20100000 0 0x1000>,
>> +              <0 0x28000000 0 0x180000>;
> 
> The size of the stimulus base is 16MB (as per TRM), implies => 0x1000000.
> 

Fixed locally.

Mike,

Can you confirm ? I know TRM had some issues with size of other
coresight components.

> with that fixed :
> 
> Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> 

Thanks.

-- 
Regards,
Sudeep

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

* [PATCH v4 3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants
  2017-01-17 13:27   ` Suzuki K Poulose
@ 2017-01-17 14:07     ` Sudeep Holla
  0 siblings, 0 replies; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 14:07 UTC (permalink / raw)
  To: linux-arm-kernel



On 17/01/17 13:27, Suzuki K Poulose wrote:
> On 17/01/17 12:15, Sudeep Holla wrote:
>> From: Mike Leach <mike.leach@linaro.org>
>>
>> The CoreSight support added for Juno is valid for only Juno r0.
>> The Juno r1 and r2 variants have additional components and alternative
>> connection routes between trace source and sinks.
>>
>> This patch builds on top of the existing r0 support and extends it to
>> Juno r1/r2 variants.
>>
>> Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
>> Signed-off-by: Mike Leach <mike.leach@linaro.org>
>> [sudeep.holla at arm.com: minor changelog update and major reorganisation of
>>     the common coresight components back into juno-base.dtsi to avoid
>>     duplication, also renamed funnel node names]
>> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
>> ---
>>  arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi | 100
>> ++++++++++++++++++++++++++++++
>>  arch/arm64/boot/dts/arm/juno-r1.dts       |   9 +++
>>  arch/arm64/boot/dts/arm/juno-r2.dts       |   9 +++
>>  3 files changed, 118 insertions(+)
>>  create mode 100644 arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
>>
>> diff --git a/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
>> b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
>> new file mode 100644
>> index 000000000000..563463ed28c7
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi
>> @@ -0,0 +1,100 @@
>> +/ {
>> +    funnel at 20130000 { /* cssys2 */
> 
> Typo, that should be csys1. Rest looks good to me.
> 

Fixed locally.

> Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>

Thanks again.

-- 
Regards,
Sudeep

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

* [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component
  2017-01-17 14:01     ` Sudeep Holla
@ 2017-01-17 14:52       ` Mike Leach
  2017-01-17 14:55         ` Sudeep Holla
  0 siblings, 1 reply; 11+ messages in thread
From: Mike Leach @ 2017-01-17 14:52 UTC (permalink / raw)
  To: linux-arm-kernel



----------------------------------------------------------------
Mike Leach                           +44 (0)1254 893911 (Direct)
Principal Engineer                   +44 (0)1254 893900 (Main)
Arm Blackburn Design Centre          +44 (0)1254 893901 (Fax)
Belthorn House
Walker Rd                            mailto:mike.leach at arm.com
Guide
Blackburn
BB1 2QE
----------------------------------------------------------------


> -----Original Message-----
> From: Sudeep Holla [mailto:sudeep.holla at arm.com]
> Sent: 17 January 2017 14:01
> To: Suzuki Poulose; linux-arm-kernel at lists.infradead.org; Mike Leach; Mike
> Leach
> Cc: Sudeep Holla; Mathieu Poirier; Lorenzo Pieralisi; coresight at lists.linaro.org;
> Liviu Dudau; devicetree at vger.kernel.org; Olof Johansson
> Subject: Re: [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM
> component
>
>
>
> On 17/01/17 13:39, Suzuki K Poulose wrote:
> > On 17/01/17 12:15, Sudeep Holla wrote:
> >> From: Mike Leach <mike.leach@linaro.org>
> >>
> >> This patch adds the missing CoreSight STM component definition to the
> >> device tree of all the juno variants(r0,r1,r2)
> >>
> >> STM component is connected to different funnels depending on Juno
> >> platform variant.
> >>
> >> Reviewed-and-Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org>
> >> Signed-off-by: Mike Leach <mike.leach@linaro.org>
> >> [sudeep.holla at arm.com: minor changelog update and reorganising the STM
> >>     node back into juno-base.dtsi to avoid duplication]
> >> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
> >> ---
> >>  arch/arm64/boot/dts/arm/juno-base.dtsi | 15 +++++++++++++++
> >>  arch/arm64/boot/dts/arm/juno-r1.dts    |  4 ++++
> >>  arch/arm64/boot/dts/arm/juno-r2.dts    |  4 ++++
> >>  arch/arm64/boot/dts/arm/juno.dts       | 16 ++++++++++++++++
> >>  4 files changed, 39 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi
> >> b/arch/arm64/boot/dts/arm/juno-base.dtsi
> >> index faedf357db3b..58c1773c3aa4 100644
> >> --- a/arch/arm64/boot/dts/arm/juno-base.dtsi
> >> +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
> >> @@ -185,6 +185,21 @@
> >>          };
> >>      };
> >>
> >> +    stm at 20100000 {
> >> +        compatible = "arm,coresight-stm", "arm,primecell";
> >> +        reg = <0 0x20100000 0 0x1000>,
> >> +              <0 0x28000000 0 0x180000>;
> >
> > The size of the stimulus base is 16MB (as per TRM), implies => 0x1000000.
> >
>
> Fixed locally.
>
> Mike,
>
> Can you confirm ? I know TRM had some issues with size of other
> coresight components.
>
Checked both Juno and STM arch manuals - these are in agreement that the STM memory stimulus area is 16MB in size.
Thus for Juno specifically with all masters seeing the same area @ base 0x28000000, <0 0x28000000 0 0x1000000 >  would be the correct description.

Mike

> > with that fixed :
> >
> > Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> >
>
> Thanks.
>
> --
> Regards,
> Sudeep
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

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

* [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component
  2017-01-17 14:52       ` Mike Leach
@ 2017-01-17 14:55         ` Sudeep Holla
  0 siblings, 0 replies; 11+ messages in thread
From: Sudeep Holla @ 2017-01-17 14:55 UTC (permalink / raw)
  To: linux-arm-kernel



On 17/01/17 14:52, Mike Leach wrote:

[...]

>> 
>> Mike,
>> 
>> Can you confirm ? I know TRM had some issues with size of other 
>> coresight components.
>> 
> Checked both Juno and STM arch manuals - these are in agreement that
> the STM memory stimulus area is 16MB in size. Thus for Juno
> specifically with all masters seeing the same area @ base 0x28000000,
> <0 0x28000000 0 0x1000000 >  would be the correct description.
> 

Thanks for the confirmation, I have already made the changes in [1]

-- 
Regards,
Sudeep

[1] git.kernel.org/sudeep.holla/linux/h/for-next/updates/juno

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

end of thread, other threads:[~2017-01-17 14:55 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-17 12:15 [PATCH v4 0/4] arm64: dts: juno: CoreSight support updates Sudeep Holla
2017-01-17 12:15 ` [PATCH v4 1/4] arm64: dts: juno: remove dtsi nesting inside tree structure Sudeep Holla
2017-01-17 12:15 ` [PATCH v4 2/4] arm64: dts: juno: refactor CoreSight support on Juno r0 Sudeep Holla
2017-01-17 12:15 ` [PATCH v4 3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants Sudeep Holla
2017-01-17 13:27   ` Suzuki K Poulose
2017-01-17 14:07     ` Sudeep Holla
2017-01-17 12:15 ` [PATCH v4 4/4] arm64: dts: juno: add missing CoreSight STM component Sudeep Holla
2017-01-17 13:39   ` Suzuki K Poulose
2017-01-17 14:01     ` Sudeep Holla
2017-01-17 14:52       ` Mike Leach
2017-01-17 14:55         ` Sudeep Holla

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