88 lines
2.4 KiB
Diff
88 lines
2.4 KiB
Diff
|
From ac60c5e33df4ec2b69c7e3ebbc0ccf1557e7bd5e Mon Sep 17 00:00:00 2001
|
||
|
From: Matthias Kaehlcke <mka@chromium.org>
|
||
|
Date: Thu, 11 Apr 2019 17:01:58 -0700
|
||
|
Subject: [PATCH 22/54] ARM: dts: rockchip: Add dynamic-power-coefficient for
|
||
|
rk3288
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
|
||
|
The value was determined with the following method:
|
||
|
|
||
|
- take CPUs 1-3 offline
|
||
|
- for each OPP
|
||
|
- set cpufreq min and max freq to OPP freq
|
||
|
- start dhrystone benchmark
|
||
|
- measure CPU power consumption during 10s
|
||
|
- calculate Cx for OPPx
|
||
|
- Cx = (Px - P1) / (Vx²fx - V1²f1) [1]
|
||
|
using the following units: mW / Ghz / V [2]
|
||
|
- C = avg(C2, ..., Cn)
|
||
|
|
||
|
[1] see commit 4daa001a1773 ("arm64: dts: juno: Add cpu
|
||
|
dynamic-power-coefficient information")
|
||
|
[2] https://patchwork.kernel.org/patch/10493615/#22158551
|
||
|
|
||
|
FTR, these are the values for the different OPPs:
|
||
|
|
||
|
freq (kHz) mV Px (mW) Cx
|
||
|
|
||
|
126000 900 39
|
||
|
216000 900 66 370
|
||
|
312000 900 95 372
|
||
|
408000 900 122 363
|
||
|
600000 900 177 359
|
||
|
696000 950 230 363
|
||
|
816000 1000 297 361
|
||
|
1008000 1050 404 362
|
||
|
1200000 1100 528 362
|
||
|
1416000 1200 770 377
|
||
|
1512000 1300 984 385
|
||
|
1608000 1350 1156 394
|
||
|
|
||
|
Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
|
||
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||
|
---
|
||
|
arch/arm/boot/dts/rk3288.dtsi | 4 ++++
|
||
|
1 file changed, 4 insertions(+)
|
||
|
|
||
|
diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi
|
||
|
index 23e9c5253019..884957da8700 100644
|
||
|
--- a/arch/arm/boot/dts/rk3288.dtsi
|
||
|
+++ b/arch/arm/boot/dts/rk3288.dtsi
|
||
|
@@ -64,6 +64,7 @@
|
||
|
#cooling-cells = <2>; /* min followed by max */
|
||
|
clock-latency = <40000>;
|
||
|
clocks = <&cru ARMCLK>;
|
||
|
+ dynamic-power-coefficient = <370>;
|
||
|
};
|
||
|
cpu1: cpu@501 {
|
||
|
device_type = "cpu";
|
||
|
@@ -74,6 +75,7 @@
|
||
|
#cooling-cells = <2>; /* min followed by max */
|
||
|
clock-latency = <40000>;
|
||
|
clocks = <&cru ARMCLK>;
|
||
|
+ dynamic-power-coefficient = <370>;
|
||
|
};
|
||
|
cpu2: cpu@502 {
|
||
|
device_type = "cpu";
|
||
|
@@ -84,6 +86,7 @@
|
||
|
#cooling-cells = <2>; /* min followed by max */
|
||
|
clock-latency = <40000>;
|
||
|
clocks = <&cru ARMCLK>;
|
||
|
+ dynamic-power-coefficient = <370>;
|
||
|
};
|
||
|
cpu3: cpu@503 {
|
||
|
device_type = "cpu";
|
||
|
@@ -94,6 +97,7 @@
|
||
|
#cooling-cells = <2>; /* min followed by max */
|
||
|
clock-latency = <40000>;
|
||
|
clocks = <&cru ARMCLK>;
|
||
|
+ dynamic-power-coefficient = <370>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
--
|
||
|
2.11.0
|
||
|
|