Commit 0ef5463c authored by Maulik Shah's avatar Maulik Shah Committed by Bjorn Andersson

arm64: dts: qcom: sc7280: Add cpuidle states

Add cpuidle states for little and big cpus.
The latency values are preliminary placeholders and will be updated
once testing provides the real numbers.
Signed-off-by: default avatarMaulik Shah <mkshah@codeaurora.org>
Signed-off-by: default avatarRajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: default avatarStephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/1615461961-17716-14-git-send-email-rnayak@codeaurora.orgSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
parent 14abf8df
...@@ -63,6 +63,9 @@ CPU0: cpu@0 { ...@@ -63,6 +63,9 @@ CPU0: cpu@0 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x0>; reg = <0x0 0x0>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&LITTLE_CPU_SLEEP_0
&LITTLE_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_0>; next-level-cache = <&L2_0>;
L2_0: l2-cache { L2_0: l2-cache {
compatible = "cache"; compatible = "cache";
...@@ -78,6 +81,9 @@ CPU1: cpu@100 { ...@@ -78,6 +81,9 @@ CPU1: cpu@100 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x100>; reg = <0x0 0x100>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&LITTLE_CPU_SLEEP_0
&LITTLE_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_100>; next-level-cache = <&L2_100>;
L2_100: l2-cache { L2_100: l2-cache {
compatible = "cache"; compatible = "cache";
...@@ -90,6 +96,9 @@ CPU2: cpu@200 { ...@@ -90,6 +96,9 @@ CPU2: cpu@200 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x200>; reg = <0x0 0x200>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&LITTLE_CPU_SLEEP_0
&LITTLE_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_200>; next-level-cache = <&L2_200>;
L2_200: l2-cache { L2_200: l2-cache {
compatible = "cache"; compatible = "cache";
...@@ -102,6 +111,9 @@ CPU3: cpu@300 { ...@@ -102,6 +111,9 @@ CPU3: cpu@300 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x300>; reg = <0x0 0x300>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&LITTLE_CPU_SLEEP_0
&LITTLE_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_300>; next-level-cache = <&L2_300>;
L2_300: l2-cache { L2_300: l2-cache {
compatible = "cache"; compatible = "cache";
...@@ -114,6 +126,9 @@ CPU4: cpu@400 { ...@@ -114,6 +126,9 @@ CPU4: cpu@400 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x400>; reg = <0x0 0x400>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&BIG_CPU_SLEEP_0
&BIG_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_400>; next-level-cache = <&L2_400>;
L2_400: l2-cache { L2_400: l2-cache {
compatible = "cache"; compatible = "cache";
...@@ -126,6 +141,9 @@ CPU5: cpu@500 { ...@@ -126,6 +141,9 @@ CPU5: cpu@500 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x500>; reg = <0x0 0x500>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&BIG_CPU_SLEEP_0
&BIG_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_500>; next-level-cache = <&L2_500>;
L2_500: l2-cache { L2_500: l2-cache {
compatible = "cache"; compatible = "cache";
...@@ -138,6 +156,9 @@ CPU6: cpu@600 { ...@@ -138,6 +156,9 @@ CPU6: cpu@600 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x600>; reg = <0x0 0x600>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&BIG_CPU_SLEEP_0
&BIG_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_600>; next-level-cache = <&L2_600>;
L2_600: l2-cache { L2_600: l2-cache {
compatible = "cache"; compatible = "cache";
...@@ -150,12 +171,69 @@ CPU7: cpu@700 { ...@@ -150,12 +171,69 @@ CPU7: cpu@700 {
compatible = "arm,kryo"; compatible = "arm,kryo";
reg = <0x0 0x700>; reg = <0x0 0x700>;
enable-method = "psci"; enable-method = "psci";
cpu-idle-states = <&BIG_CPU_SLEEP_0
&BIG_CPU_SLEEP_1
&CLUSTER_SLEEP_0>;
next-level-cache = <&L2_700>; next-level-cache = <&L2_700>;
L2_700: l2-cache { L2_700: l2-cache {
compatible = "cache"; compatible = "cache";
next-level-cache = <&L3_0>; next-level-cache = <&L3_0>;
}; };
}; };
idle-states {
entry-method = "psci";
LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
compatible = "arm,idle-state";
idle-state-name = "little-power-down";
arm,psci-suspend-param = <0x40000003>;
entry-latency-us = <549>;
exit-latency-us = <901>;
min-residency-us = <1774>;
local-timer-stop;
};
LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 {
compatible = "arm,idle-state";
idle-state-name = "little-rail-power-down";
arm,psci-suspend-param = <0x40000004>;
entry-latency-us = <702>;
exit-latency-us = <915>;
min-residency-us = <4001>;
local-timer-stop;
};
BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
compatible = "arm,idle-state";
idle-state-name = "big-power-down";
arm,psci-suspend-param = <0x40000003>;
entry-latency-us = <523>;
exit-latency-us = <1244>;
min-residency-us = <2207>;
local-timer-stop;
};
BIG_CPU_SLEEP_1: cpu-sleep-1-1 {
compatible = "arm,idle-state";
idle-state-name = "big-rail-power-down";
arm,psci-suspend-param = <0x40000004>;
entry-latency-us = <526>;
exit-latency-us = <1854>;
min-residency-us = <5555>;
local-timer-stop;
};
CLUSTER_SLEEP_0: cluster-sleep-0 {
compatible = "arm,idle-state";
idle-state-name = "cluster-power-down";
arm,psci-suspend-param = <0x40003444>;
entry-latency-us = <3263>;
exit-latency-us = <6562>;
min-residency-us = <9926>;
local-timer-stop;
};
};
}; };
memory@80000000 { memory@80000000 {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment