diff options
author | orenbh <orenbh@marvell.com> | 2018-09-21 18:09:16 +0200 |
---|---|---|
committer | Gregory CLEMENT <gregory.clement@bootlin.com> | 2018-10-02 16:46:52 +0200 |
commit | 8ed46368776b3bc93d74c1f8f2bfb9fd8a9ad805 (patch) | |
tree | 1aa49c3ad7c6ea05394ee575af052baa071d51c9 /arch | |
parent | 92e5d4e9398eabf997075bed2543d7fd783e1ab0 (diff) | |
download | linux-8ed46368776b3bc93d74c1f8f2bfb9fd8a9ad805.tar.gz linux-8ed46368776b3bc93d74c1f8f2bfb9fd8a9ad805.tar.bz2 linux-8ed46368776b3bc93d74c1f8f2bfb9fd8a9ad805.zip |
arm64: dts: marvell: add CPU Idle power state support on Armada 7K/8K
This patch adds CPU deep Idle and Cluster deep Idle states BUT it defines
the idle state for each cpu (defined under cpu-idle-states parameter)
only for the quad version therefore it does NOT activate CPU Idle
capability for the other version.
[gregory: extract from a larger patch]
Signed-off-by: orenbh <orenbh@marvell.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm64/boot/dts/marvell/armada-ap806-quad.dtsi | 4 | ||||
-rw-r--r-- | arch/arm64/boot/dts/marvell/armada-ap806.dtsi | 27 |
2 files changed, 31 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/marvell/armada-ap806-quad.dtsi b/arch/arm64/boot/dts/marvell/armada-ap806-quad.dtsi index 01ea662afba8..64632c873888 100644 --- a/arch/arm64/boot/dts/marvell/armada-ap806-quad.dtsi +++ b/arch/arm64/boot/dts/marvell/armada-ap806-quad.dtsi @@ -20,24 +20,28 @@ compatible = "arm,cortex-a72", "arm,armv8"; reg = <0x000>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0>; }; cpu1: cpu@1 { device_type = "cpu"; compatible = "arm,cortex-a72", "arm,armv8"; reg = <0x001>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0>; }; cpu2: cpu@100 { device_type = "cpu"; compatible = "arm,cortex-a72", "arm,armv8"; reg = <0x100>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0>; }; cpu3: cpu@101 { device_type = "cpu"; compatible = "arm,cortex-a72", "arm,armv8"; reg = <0x101>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0>; }; }; }; diff --git a/arch/arm64/boot/dts/marvell/armada-ap806.dtsi b/arch/arm64/boot/dts/marvell/armada-ap806.dtsi index 9a5abad72b66..3032f04dde78 100644 --- a/arch/arm64/boot/dts/marvell/armada-ap806.dtsi +++ b/arch/arm64/boot/dts/marvell/armada-ap806.dtsi @@ -28,6 +28,33 @@ method = "smc"; }; + cpus { + #address-cells = <1>; + #size-cells = <0>; + + idle_states { + entry_method = "arm,pcsi"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + local-timer-stop; + arm,psci-suspend-param = <0x0010000>; + entry-latency-us = <80>; + exit-latency-us = <160>; + min-residency-us = <320>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + local-timer-stop; + arm,psci-suspend-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1000>; + min-residency-us = <2500>; + }; + }; + }; + ap806 { #address-cells = <2>; #size-cells = <2>; |