[PATCH 8/9] coresight: Adding DT generic power domain support

mathieu.poirier at linaro.org mathieu.poirier at linaro.org
Tue Jan 6 08:37:12 PST 2015


From: Mathieu Poirier <mathieu.poirier at linaro.org>

ETM and PTM tracers need to hookup to the generic power domain
API in order to make sure their power domain doesn't get switched
off by other system components.

On the vexpress a single entity (the SPC) is responsible for power
management of the A7 and A15 clusters domain.  As such using a single
power domain representation with power-domain-cells to represent the
domains, as required by the generic power domain binding.

Signed-off-by: Mathieu Poirier <mathieu.poirier at linaro.org>
---
 arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
index 33920df03640..8f6fc26b59fb 100644
--- a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
+++ b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
@@ -358,6 +358,11 @@
 		};
 	};
 
+	A7_A15_cluster_pd: A7-A15-cluster-pd {
+		compatible = "arm,vexpress-power-controller";
+		#power-domain-cells = <1>;
+	};
+
 	etb at 0,20010000 {
 		compatible = "arm,coresight-etb10", "arm,primecell";
 		reg = <0 0x20010000 0 0x1000>;
@@ -494,6 +499,7 @@
 		cpu = <&cpu0>;
 		clocks = <&oscclk6a>;
 		clock-names = "apb_pclk";
+		power-domains = <&A7_A15_cluster_pd 0>;
 		port {
 			ptm0_out_port: endpoint {
 				remote-endpoint = <&funnel_in_port0>;
@@ -508,6 +514,7 @@
 		cpu = <&cpu1>;
 		clocks = <&oscclk6a>;
 		clock-names = "apb_pclk";
+		power-domains = <&A7_A15_cluster_pd 0>;
 		port {
 			ptm1_out_port: endpoint {
 				remote-endpoint = <&funnel_in_port1>;
@@ -522,6 +529,7 @@
 		cpu = <&cpu2>;
 		clocks = <&oscclk6a>;
 		clock-names = "apb_pclk";
+		power-domains = <&A7_A15_cluster_pd 1>;
 		port {
 			etm0_out_port: endpoint {
 				remote-endpoint = <&funnel_in_port2>;
@@ -536,6 +544,7 @@
 		cpu = <&cpu3>;
 		clocks = <&oscclk6a>;
 		clock-names = "apb_pclk";
+		power-domains = <&A7_A15_cluster_pd 1>;
 		port {
 			etm1_out_port: endpoint {
 				remote-endpoint = <&funnel_in_port4>;
@@ -550,6 +559,7 @@
 		cpu = <&cpu4>;
 		clocks = <&oscclk6a>;
 		clock-names = "apb_pclk";
+		power-domains = <&A7_A15_cluster_pd 1>;
 		port {
 			etm2_out_port: endpoint {
 				remote-endpoint = <&funnel_in_port5>;
-- 
1.9.1




More information about the linux-arm-kernel mailing list