Patch "arm64: dts: qcom: sm8250: correct dynamic power coefficients" has been added to the 6.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    arm64: dts: qcom: sm8250: correct dynamic power coefficients

to the 6.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     arm64-dts-qcom-sm8250-correct-dynamic-power-coeffici.patch
and it can be found in the queue-6.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 0805b2629347c2f8c7b69f8f370bc4bdaeaa7bf3
Author: Vincent Guittot <vincent.guittot@xxxxxxxxxx>
Date:   Thu Jun 15 17:48:52 2023 +0200

    arm64: dts: qcom: sm8250: correct dynamic power coefficients
    
    [ Upstream commit 775a5283c25d160b2a1359018c447bc518096547 ]
    
    sm8250 faces the same problem with its Energy Model as sdm845. The energy
    cost of LITTLE cores is reported to be higher than medium or big cores
    
    EM computes the energy with formula:
    
    energy = OPP's cost / maximum cpu capacity * utilization
    
    On v6.4-rc6 we have:
    max capacity of CPU0 = 284
    capacity of CPU0's OPP(1612800 Hz) = 253
    cost of CPU0's OPP(1612800 Hz) = 191704
    
    max capacity of CPU4 = 871
    capacity of CPU4's OPP(710400 Hz) = 255
    cost of CPU4's OPP(710400 Hz) = 343217
    
    Both OPPs have almost the same compute capacity but the estimated energy
    per unit of utilization will be estimated to:
    
    energy CPU0 = 191704 / 284 * 1 = 675
    energy CPU4 = 343217 / 871 * 1 = 394
    
    EM estimates that little CPU0 will consume 71% more than medium CPU4 for
    the same compute capacity. According to [1], little consumes 25% less than
    medium core for Coremark benchmark at those OPPs for the same duration.
    
    Set the dynamic-power-coefficient of CPU0-3 to 105 to fix the energy model
    for little CPUs.
    
    [1] https://github.com/kdrag0n/freqbench/tree/master/results/sm8250/k30s
    
    Fixes: 6aabed5526ee ("arm64: dts: qcom: sm8250: Add CPU capacities and energy model")
    Signed-off-by: Vincent Guittot <vincent.guittot@xxxxxxxxxx>
    Link: https://lore.kernel.org/r/20230615154852.130076-1-vincent.guittot@xxxxxxxxxx
    Signed-off-by: Bjorn Andersson <andersson@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/arch/arm64/boot/dts/qcom/sm8250.dtsi b/arch/arm64/boot/dts/qcom/sm8250.dtsi
index 7bea916900e29..4b0835109b01e 100644
--- a/arch/arm64/boot/dts/qcom/sm8250.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8250.dtsi
@@ -100,7 +100,7 @@ CPU0: cpu@0 {
 			clocks = <&cpufreq_hw 0>;
 			enable-method = "psci";
 			capacity-dmips-mhz = <448>;
-			dynamic-power-coefficient = <205>;
+			dynamic-power-coefficient = <105>;
 			next-level-cache = <&L2_0>;
 			power-domains = <&CPU_PD0>;
 			power-domain-names = "psci";
@@ -131,7 +131,7 @@ CPU1: cpu@100 {
 			clocks = <&cpufreq_hw 0>;
 			enable-method = "psci";
 			capacity-dmips-mhz = <448>;
-			dynamic-power-coefficient = <205>;
+			dynamic-power-coefficient = <105>;
 			next-level-cache = <&L2_100>;
 			power-domains = <&CPU_PD1>;
 			power-domain-names = "psci";
@@ -156,7 +156,7 @@ CPU2: cpu@200 {
 			clocks = <&cpufreq_hw 0>;
 			enable-method = "psci";
 			capacity-dmips-mhz = <448>;
-			dynamic-power-coefficient = <205>;
+			dynamic-power-coefficient = <105>;
 			next-level-cache = <&L2_200>;
 			power-domains = <&CPU_PD2>;
 			power-domain-names = "psci";
@@ -181,7 +181,7 @@ CPU3: cpu@300 {
 			clocks = <&cpufreq_hw 0>;
 			enable-method = "psci";
 			capacity-dmips-mhz = <448>;
-			dynamic-power-coefficient = <205>;
+			dynamic-power-coefficient = <105>;
 			next-level-cache = <&L2_300>;
 			power-domains = <&CPU_PD3>;
 			power-domain-names = "psci";



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux