diff mbox series

[v4,3/4] arm64: dts: juno: add CoreSight support for Juno r1/r2 variants

Message ID 1484655313-9025-4-git-send-email-sudeep.holla@arm.com
State Accepted
Commit cdc07e96047a89466c52d723a8b62739ad5604eb
Headers show
Series arm64: dts: juno: CoreSight support updates | expand

Commit Message

Sudeep Holla Jan. 17, 2017, 12:15 p.m. UTC
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@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

--
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Suzuki K Poulose Jan. 17, 2017, 1:27 p.m. UTC | #1
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@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@20130000 { /* cssys2 */


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

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


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Sudeep Holla Jan. 17, 2017, 2:07 p.m. UTC | #2
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@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@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
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox series

Patch

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@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@0 {
+				reg = <0>;
+				csys1_funnel_out_port: endpoint {
+					remote-endpoint = <&etf1_in_port>;
+				};
+			};
+
+			/* input port */
+			port@1 {
+				reg = <0>;
+				csys1_funnel_in_port0: endpoint {
+					slave-mode;
+				};
+			};
+
+		};
+	};
+
+	etf@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@0 {
+				reg = <0>;
+				etf1_in_port: endpoint {
+					slave-mode;
+					remote-endpoint = <&csys1_funnel_out_port>;
+				};
+			};
+
+			/* output port */
+			port@1 {
+				reg = <0>;
+				etf1_out_port: endpoint {
+					remote-endpoint = <&csys2_funnel_in_port1>;
+				};
+			};
+		};
+	};
+
+	funnel@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@0 {
+				reg = <0>;
+				csys2_funnel_out_port: endpoint {
+					remote-endpoint = <&replicator_in_port0>;
+				};
+			};
+
+			/* input ports */
+			port@1 {
+				reg = <0>;
+				csys2_funnel_in_port0: endpoint {
+					slave-mode;
+					remote-endpoint = <&etf0_out_port>;
+				};
+			};
+
+			port@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>;
+};