ae74e11664
Protect script when ram_freq is not set Safely load PSCI DTO to enable CPUidle driver: psci_idle The PSCI DTO shall only be applied if TF-A & Crust support CPU idle states [0]. Otherwise the CPU usage will be at 100%. This will not be visible in top, lead to overheating and battery drain. Worst case scenario would lead to a fried chip if the CPU thermal_zone does not work or is not enabled in DTS. [0] https://gitlab.com/postmarketOS/pmaports/-/issues/1901#note_1238456920
44 lines
877 B
Text
44 lines
877 B
Text
// Source: https://github.com/megous/linux/commit/9584b9c889dce3d58fcd465697d0a9857f764739
|
|
/dts-v1/;
|
|
/plugin/;
|
|
|
|
&{/cpus} {
|
|
|
|
cpu@0 {
|
|
cpu-idle-states = <&cpu_sleep>, <&cluster_sleep>;
|
|
};
|
|
|
|
cpu@1 {
|
|
cpu-idle-states = <&cpu_sleep>, <&cluster_sleep>;
|
|
};
|
|
|
|
cpu@2 {
|
|
cpu-idle-states = <&cpu_sleep>, <&cluster_sleep>;
|
|
};
|
|
|
|
cpu@3 {
|
|
cpu-idle-states = <&cpu_sleep>, <&cluster_sleep>;
|
|
};
|
|
|
|
idle-states {
|
|
entry-method = "psci";
|
|
|
|
cpu_sleep: cpu-sleep {
|
|
compatible = "arm,idle-state";
|
|
local-timer-stop;
|
|
entry-latency-us = <800>;
|
|
exit-latency-us = <1500>;
|
|
min-residency-us = <25000>;
|
|
arm,psci-suspend-param = <0x00010003>;
|
|
};
|
|
|
|
cluster_sleep: cluster-sleep {
|
|
compatible = "arm,idle-state";
|
|
local-timer-stop;
|
|
entry-latency-us = <850>;
|
|
exit-latency-us = <1500>;
|
|
min-residency-us = <50000>;
|
|
arm,psci-suspend-param = <0x01010013>;
|
|
};
|
|
};
|
|
};
|