* [PATCH] arm64: dts: mt8183: adjust cpuidle target residency
@ 2020-02-25 8:07 Ikjoon Jang
2020-04-13 16:57 ` Matthias Brugger
0 siblings, 1 reply; 2+ messages in thread
From: Ikjoon Jang @ 2020-02-25 8:07 UTC (permalink / raw)
To: linux-mediatek, James Liao
Cc: Rob Herring, Matthias Brugger, devicetree, linux-arm-kernel,
linux-kernel, hsinyi, drinkcat, Ikjoon Jang
Split a cluster level cpuidle state into two, so mt8183 variant
boards can adjust parameters for each cluster, and reduce cluster0's
default target residency to 1000us as power measurements showed that
its minimum residency is slightly less than cluster1's 1300us.
Signed-off-by: Ikjoon Jang <ikjn@chromium.org>
---
arch/arm64/boot/dts/mediatek/mt8183.dtsi | 26 ++++++++++++++++--------
1 file changed, 17 insertions(+), 9 deletions(-)
diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
index f1381e77918b..5c7dd262eaf3 100644
--- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
@@ -74,7 +74,7 @@ cpu0: cpu@0 {
reg = <0x000>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
};
cpu1: cpu@1 {
@@ -83,7 +83,7 @@ cpu1: cpu@1 {
reg = <0x001>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
};
cpu2: cpu@2 {
@@ -92,7 +92,7 @@ cpu2: cpu@2 {
reg = <0x002>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
};
cpu3: cpu@3 {
@@ -101,7 +101,7 @@ cpu3: cpu@3 {
reg = <0x003>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
};
cpu4: cpu@100 {
@@ -110,7 +110,7 @@ cpu4: cpu@100 {
reg = <0x100>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
};
cpu5: cpu@101 {
@@ -119,7 +119,7 @@ cpu5: cpu@101 {
reg = <0x101>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
};
cpu6: cpu@102 {
@@ -128,7 +128,7 @@ cpu6: cpu@102 {
reg = <0x102>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
};
cpu7: cpu@103 {
@@ -137,7 +137,7 @@ cpu7: cpu@103 {
reg = <0x103>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
- cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+ cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
};
idle-states {
@@ -152,7 +152,15 @@ CPU_SLEEP: cpu-sleep {
min-residency-us = <800>;
};
- CLUSTER_SLEEP: cluster-sleep {
+ CLUSTER_SLEEP0: cluster-sleep@0 {
+ compatible = "arm,idle-state";
+ local-timer-stop;
+ arm,psci-suspend-param = <0x01010001>;
+ entry-latency-us = <250>;
+ exit-latency-us = <400>;
+ min-residency-us = <1000>;
+ };
+ CLUSTER_SLEEP1: cluster-sleep@1 {
compatible = "arm,idle-state";
local-timer-stop;
arm,psci-suspend-param = <0x01010001>;
--
2.25.0.265.gbab2e86ba0-goog
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] arm64: dts: mt8183: adjust cpuidle target residency
2020-02-25 8:07 [PATCH] arm64: dts: mt8183: adjust cpuidle target residency Ikjoon Jang
@ 2020-04-13 16:57 ` Matthias Brugger
0 siblings, 0 replies; 2+ messages in thread
From: Matthias Brugger @ 2020-04-13 16:57 UTC (permalink / raw)
To: Ikjoon Jang, linux-mediatek, James Liao
Cc: Rob Herring, devicetree, linux-arm-kernel, linux-kernel, hsinyi,
drinkcat
On 2/25/20 9:07 AM, Ikjoon Jang wrote:
> Split a cluster level cpuidle state into two, so mt8183 variant
> boards can adjust parameters for each cluster, and reduce cluster0's
> default target residency to 1000us as power measurements showed that
> its minimum residency is slightly less than cluster1's 1300us.
>
> Signed-off-by: Ikjoon Jang <ikjn@chromium.org>
Applied to v5.7-next/dts64
Thanks!
> ---
> arch/arm64/boot/dts/mediatek/mt8183.dtsi | 26 ++++++++++++++++--------
> 1 file changed, 17 insertions(+), 9 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
> index f1381e77918b..5c7dd262eaf3 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi
> +++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
> @@ -74,7 +74,7 @@ cpu0: cpu@0 {
> reg = <0x000>;
> enable-method = "psci";
> capacity-dmips-mhz = <741>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
> };
>
> cpu1: cpu@1 {
> @@ -83,7 +83,7 @@ cpu1: cpu@1 {
> reg = <0x001>;
> enable-method = "psci";
> capacity-dmips-mhz = <741>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
> };
>
> cpu2: cpu@2 {
> @@ -92,7 +92,7 @@ cpu2: cpu@2 {
> reg = <0x002>;
> enable-method = "psci";
> capacity-dmips-mhz = <741>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
> };
>
> cpu3: cpu@3 {
> @@ -101,7 +101,7 @@ cpu3: cpu@3 {
> reg = <0x003>;
> enable-method = "psci";
> capacity-dmips-mhz = <741>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
> };
>
> cpu4: cpu@100 {
> @@ -110,7 +110,7 @@ cpu4: cpu@100 {
> reg = <0x100>;
> enable-method = "psci";
> capacity-dmips-mhz = <1024>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
> };
>
> cpu5: cpu@101 {
> @@ -119,7 +119,7 @@ cpu5: cpu@101 {
> reg = <0x101>;
> enable-method = "psci";
> capacity-dmips-mhz = <1024>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
> };
>
> cpu6: cpu@102 {
> @@ -128,7 +128,7 @@ cpu6: cpu@102 {
> reg = <0x102>;
> enable-method = "psci";
> capacity-dmips-mhz = <1024>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
> };
>
> cpu7: cpu@103 {
> @@ -137,7 +137,7 @@ cpu7: cpu@103 {
> reg = <0x103>;
> enable-method = "psci";
> capacity-dmips-mhz = <1024>;
> - cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
> + cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
> };
>
> idle-states {
> @@ -152,7 +152,15 @@ CPU_SLEEP: cpu-sleep {
> min-residency-us = <800>;
> };
>
> - CLUSTER_SLEEP: cluster-sleep {
> + CLUSTER_SLEEP0: cluster-sleep@0 {
> + compatible = "arm,idle-state";
> + local-timer-stop;
> + arm,psci-suspend-param = <0x01010001>;
> + entry-latency-us = <250>;
> + exit-latency-us = <400>;
> + min-residency-us = <1000>;
> + };
> + CLUSTER_SLEEP1: cluster-sleep@1 {
> compatible = "arm,idle-state";
> local-timer-stop;
> arm,psci-suspend-param = <0x01010001>;
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-04-13 16:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-02-25 8:07 [PATCH] arm64: dts: mt8183: adjust cpuidle target residency Ikjoon Jang
2020-04-13 16:57 ` Matthias Brugger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).