On Wed, 30 Aug 2023 at 22:04, Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> wrote: > > The idle residency times are largely too low according to the vendor > kernel (maybe they came from an earlier release or something), especially > for the prime X2 core. Fix them. > > Fixes: ffc50b2d3828 ("arm64: dts: qcom: Add base SM8550 dtsi") > Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> > --- > arch/arm64/boot/dts/qcom/sm8550.dtsi | 32 +++++++++++++++++++++----------- > 1 file changed, 21 insertions(+), 11 deletions(-) > > diff --git a/arch/arm64/boot/dts/qcom/sm8550.dtsi b/arch/arm64/boot/dts/qcom/sm8550.dtsi > index d115960bdeec..c21ba6afa752 100644 > --- a/arch/arm64/boot/dts/qcom/sm8550.dtsi > +++ b/arch/arm64/boot/dts/qcom/sm8550.dtsi > @@ -283,9 +283,9 @@ LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { > compatible = "arm,idle-state"; > idle-state-name = "silver-rail-power-collapse"; > arm,psci-suspend-param = <0x40000004>; > - entry-latency-us = <800>; > + entry-latency-us = <550>; > exit-latency-us = <750>; > - min-residency-us = <4090>; > + min-residency-us = <6700>; > local-timer-stop; > }; > > @@ -294,8 +294,18 @@ BIG_CPU_SLEEP_0: cpu-sleep-1-0 { > idle-state-name = "gold-rail-power-collapse"; > arm,psci-suspend-param = <0x40000004>; > entry-latency-us = <600>; > - exit-latency-us = <1550>; > - min-residency-us = <4791>; > + exit-latency-us = <1300>; > + min-residency-us = <8136>; > + local-timer-stop; > + }; > + > + PRIME_CPU_SLEEP_0: cpu-sleep-2-0 { > + compatible = "arm,idle-state"; > + idle-state-name = "gold-plus-rail-power-collapse"; > + arm,psci-suspend-param = <0x40000004>; > + entry-latency-us = <500>; > + exit-latency-us = <1350>; > + min-residency-us = <7480>; > local-timer-stop; This isn't only fixing the time properties, but also adds the whole new sleep state! > }; > }; > @@ -304,17 +314,17 @@ domain-idle-states { > CLUSTER_SLEEP_0: cluster-sleep-0 { > compatible = "domain-idle-state"; > arm,psci-suspend-param = <0x41000044>; > - entry-latency-us = <1050>; > - exit-latency-us = <2500>; > - min-residency-us = <5309>; > + entry-latency-us = <750>; > + exit-latency-us = <2350>; > + min-residency-us = <9144>; > }; > > CLUSTER_SLEEP_1: cluster-sleep-1 { > compatible = "domain-idle-state"; > arm,psci-suspend-param = <0x4100c344>; > - entry-latency-us = <2700>; > - exit-latency-us = <3500>; > - min-residency-us = <13959>; > + entry-latency-us = <2800>; > + exit-latency-us = <4400>; > + min-residency-us = <10150>; > }; > }; > }; > @@ -398,7 +408,7 @@ CPU_PD6: power-domain-cpu6 { > CPU_PD7: power-domain-cpu7 { > #power-domain-cells = <0>; > power-domains = <&CLUSTER_PD>; > - domain-idle-states = <&BIG_CPU_SLEEP_0>; > + domain-idle-states = <&PRIME_CPU_SLEEP_0>; > }; > > CLUSTER_PD: power-domain-cluster { > > -- > 2.42.0 > -- With best wishes Dmitry