aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2014-07-09 11:45:12 -0400
committerJason Cooper <jason@lakedaemon.net>2014-07-16 08:54:13 -0400
commit3843607838cc5436d02a6771e661969a54c2fee0 (patch)
tree06ace83aaafc09ced693a1e9246e466d91005bda
parentd7f3ec2b69f692d215deb991d109a3341b0d8da9 (diff)
ARM: mvebu: update Armada XP DT for dynamic frequency scaling
In order to support dynamic frequency scaling: * the cpuclk Device Tree node needs to be updated to describe a second set of registers describing the PMU DFS registers. * the clock-latency property of the CPUs must be filled, otherwise the ondemand and conservative cpufreq governors refuse to work. The latency is high because the cost of a frequency transition is quite high on those CPUs. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Link: https://lkml.kernel.org/r/1404920715-19834-5-git-send-email-thomas.petazzoni@free-electrons.com Signed-off-by: Jason Cooper <jason@lakedaemon.net>
-rw-r--r--arch/arm/boot/dts/armada-xp-mv78230.dtsi2
-rw-r--r--arch/arm/boot/dts/armada-xp-mv78260.dtsi2
-rw-r--r--arch/arm/boot/dts/armada-xp-mv78460.dtsi4
-rw-r--r--arch/arm/boot/dts/armada-xp.dtsi2
4 files changed, 9 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/armada-xp-mv78230.dtsi b/arch/arm/boot/dts/armada-xp-mv78230.dtsi
index 1257ff1ed278..2592e1c13560 100644
--- a/arch/arm/boot/dts/armada-xp-mv78230.dtsi
+++ b/arch/arm/boot/dts/armada-xp-mv78230.dtsi
@@ -34,6 +34,7 @@
34 compatible = "marvell,sheeva-v7"; 34 compatible = "marvell,sheeva-v7";
35 reg = <0>; 35 reg = <0>;
36 clocks = <&cpuclk 0>; 36 clocks = <&cpuclk 0>;
37 clock-latency = <1000000>;
37 }; 38 };
38 39
39 cpu@1 { 40 cpu@1 {
@@ -41,6 +42,7 @@
41 compatible = "marvell,sheeva-v7"; 42 compatible = "marvell,sheeva-v7";
42 reg = <1>; 43 reg = <1>;
43 clocks = <&cpuclk 1>; 44 clocks = <&cpuclk 1>;
45 clock-latency = <1000000>;
44 }; 46 };
45 }; 47 };
46 48
diff --git a/arch/arm/boot/dts/armada-xp-mv78260.dtsi b/arch/arm/boot/dts/armada-xp-mv78260.dtsi
index 3396b25b39e1..480e237a870f 100644
--- a/arch/arm/boot/dts/armada-xp-mv78260.dtsi
+++ b/arch/arm/boot/dts/armada-xp-mv78260.dtsi
@@ -36,6 +36,7 @@
36 compatible = "marvell,sheeva-v7"; 36 compatible = "marvell,sheeva-v7";
37 reg = <0>; 37 reg = <0>;
38 clocks = <&cpuclk 0>; 38 clocks = <&cpuclk 0>;
39 clock-latency = <1000000>;
39 }; 40 };
40 41
41 cpu@1 { 42 cpu@1 {
@@ -43,6 +44,7 @@
43 compatible = "marvell,sheeva-v7"; 44 compatible = "marvell,sheeva-v7";
44 reg = <1>; 45 reg = <1>;
45 clocks = <&cpuclk 1>; 46 clocks = <&cpuclk 1>;
47 clock-latency = <1000000>;
46 }; 48 };
47 }; 49 };
48 50
diff --git a/arch/arm/boot/dts/armada-xp-mv78460.dtsi b/arch/arm/boot/dts/armada-xp-mv78460.dtsi
index 6da84bf40aaf..2c7b1fef4703 100644
--- a/arch/arm/boot/dts/armada-xp-mv78460.dtsi
+++ b/arch/arm/boot/dts/armada-xp-mv78460.dtsi
@@ -37,6 +37,7 @@
37 compatible = "marvell,sheeva-v7"; 37 compatible = "marvell,sheeva-v7";
38 reg = <0>; 38 reg = <0>;
39 clocks = <&cpuclk 0>; 39 clocks = <&cpuclk 0>;
40 clock-latency = <1000000>;
40 }; 41 };
41 42
42 cpu@1 { 43 cpu@1 {
@@ -44,6 +45,7 @@
44 compatible = "marvell,sheeva-v7"; 45 compatible = "marvell,sheeva-v7";
45 reg = <1>; 46 reg = <1>;
46 clocks = <&cpuclk 1>; 47 clocks = <&cpuclk 1>;
48 clock-latency = <1000000>;
47 }; 49 };
48 50
49 cpu@2 { 51 cpu@2 {
@@ -51,6 +53,7 @@
51 compatible = "marvell,sheeva-v7"; 53 compatible = "marvell,sheeva-v7";
52 reg = <2>; 54 reg = <2>;
53 clocks = <&cpuclk 2>; 55 clocks = <&cpuclk 2>;
56 clock-latency = <1000000>;
54 }; 57 };
55 58
56 cpu@3 { 59 cpu@3 {
@@ -58,6 +61,7 @@
58 compatible = "marvell,sheeva-v7"; 61 compatible = "marvell,sheeva-v7";
59 reg = <3>; 62 reg = <3>;
60 clocks = <&cpuclk 3>; 63 clocks = <&cpuclk 3>;
64 clock-latency = <1000000>;
61 }; 65 };
62 }; 66 };
63 67
diff --git a/arch/arm/boot/dts/armada-xp.dtsi b/arch/arm/boot/dts/armada-xp.dtsi
index 5902e8359c91..bff9f6c18db1 100644
--- a/arch/arm/boot/dts/armada-xp.dtsi
+++ b/arch/arm/boot/dts/armada-xp.dtsi
@@ -99,7 +99,7 @@
99 cpuclk: clock-complex@18700 { 99 cpuclk: clock-complex@18700 {
100 #clock-cells = <1>; 100 #clock-cells = <1>;
101 compatible = "marvell,armada-xp-cpu-clock"; 101 compatible = "marvell,armada-xp-cpu-clock";
102 reg = <0x18700 0xA0>; 102 reg = <0x18700 0xA0>, <0x1c054 0x10>;
103 clocks = <&coreclk 1>; 103 clocks = <&coreclk 1>;
104 }; 104 };
105 105