diff options
author | Leo Yan <leo.yan@linaro.org> | 2018-01-04 11:04:27 +0800 |
---|---|---|
committer | Leo Yan <leo.yan@linaro.org> | 2018-01-10 12:49:25 +0800 |
commit | 1d8b8ca450ef7f7bc6dcbe14690c5c4b4cae66ff (patch) | |
tree | bce99662375909833afc961b756c57795aff4fde | |
parent | 6c3ffeccc44b0fbdc942a83843d87930143d5b5c (diff) |
arm64: dts: Hi3660: Remove 'CPU_NAP' idle state
Thanks a lot for Vincent Guittot careful work to find bug for 'CPU_NAP'
idle state. At early time, the CPU CA73 CPU_NAP idle state has been
supported on Hikey960. Later we found the system has the hang issue
and for resolving this issue Hisilicon released new MCU firmware, but
unfortunately the new MCU firmware has side effect and results in the
CA73 CPU cannot really enter CPU_NAP state and roll back to WFI state.
After discussion we cannot see the possibility to enable CA73 CPU_NAP
state anymore on Hikey960, based on this conclusion we should remove
this state from DT binding.
This commit also updates energy model parameters to reflect removing
CPU_NAP state.
Change-Id: Ibbceca9d6b0b328f0b15befa5238f34c5a9db829
Signed-off-by: Leo Yan <leo.yan@linaro.org>
-rw-r--r-- | arch/arm64/boot/dts/hisilicon/hi3660-sched-energy.dtsi | 2 | ||||
-rw-r--r-- | arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 32 |
2 files changed, 4 insertions, 30 deletions
diff --git a/arch/arm64/boot/dts/hisilicon/hi3660-sched-energy.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660-sched-energy.dtsi index 08b6a2bfbc43..0d98077da5c9 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3660-sched-energy.dtsi +++ b/arch/arm64/boot/dts/hisilicon/hi3660-sched-energy.dtsi @@ -18,7 +18,6 @@ energy-costs { idle-cost-data = < 18 18 - 3 0 0 >; @@ -50,7 +49,6 @@ energy-costs { 102 102 102 - 102 0 >; }; diff --git a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi index 12544c3a1752..9491c8fb507a 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi +++ b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi @@ -112,11 +112,7 @@ reg = <0x0 0x100>; enable-method = "psci"; next-level-cache = <&A73_L2>; - cpu-idle-states = < - &CPU_NAP - &CPU_SLEEP - &CLUSTER_SLEEP_1 - >; + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP_1>; clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; operating-points-v2 = <&cluster1_opp>; cooling-min-level = <4>; @@ -132,11 +128,7 @@ reg = <0x0 0x101>; enable-method = "psci"; next-level-cache = <&A73_L2>; - cpu-idle-states = < - &CPU_NAP - &CPU_SLEEP - &CLUSTER_SLEEP_1 - >; + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP_1>; clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; operating-points-v2 = <&cluster1_opp>; sched-energy-costs = <&CPU_COST_A72 &CLUSTER_COST_A72>; @@ -148,11 +140,7 @@ reg = <0x0 0x102>; enable-method = "psci"; next-level-cache = <&A73_L2>; - cpu-idle-states = < - &CPU_NAP - &CPU_SLEEP - &CLUSTER_SLEEP_1 - >; + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP_1>; clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; operating-points-v2 = <&cluster1_opp>; sched-energy-costs = <&CPU_COST_A72 &CLUSTER_COST_A72>; @@ -164,11 +152,7 @@ reg = <0x0 0x103>; enable-method = "psci"; next-level-cache = <&A73_L2>; - cpu-idle-states = < - &CPU_NAP - &CPU_SLEEP - &CLUSTER_SLEEP_1 - >; + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP_1>; clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; operating-points-v2 = <&cluster1_opp>; sched-energy-costs = <&CPU_COST_A72 &CLUSTER_COST_A72>; @@ -177,14 +161,6 @@ idle-states { entry-method = "psci"; - CPU_NAP: cpu-nap { - compatible = "arm,idle-state"; - arm,psci-suspend-param = <0x0000001>; - entry-latency-us = <7>; - exit-latency-us = <2>; - min-residency-us = <15>; - }; - CPU_SLEEP: cpu-sleep { compatible = "arm,idle-state"; local-timer-stop; |