mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-12 15:49:17 -04:00
ARM: dts: msm: Add cpuidle states and stats driver nodes for sm6150
Add LPM cpuidle states and stats driver nodes. Change-Id: Icf184cd3370c76192797b58c2909ca388c3b0bf1
This commit is contained in:
parent
095fb43fb4
commit
fcc0df464c
2 changed files with 183 additions and 0 deletions
174
qcom/sm6150-pm.dtsi
Normal file
174
qcom/sm6150-pm.dtsi
Normal file
|
|
@ -0,0 +1,174 @@
|
|||
&soc {
|
||||
qcom,lpm-levels {
|
||||
compatible = "qcom,lpm-levels";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
qcom,pm-cluster@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
idle-state-name = "L3";
|
||||
qcom,psci-mode-shift = <4>;
|
||||
qcom,psci-mode-mask = <0xfff>;
|
||||
|
||||
CLUSTER_WFI: qcom,pm-cluster-level@0 { /* D1 */
|
||||
reg = <0>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "l3-wfi";
|
||||
entry-latency-us = <660>;
|
||||
exit-latency-us = <600>;
|
||||
min-residency-us = <1260>;
|
||||
arm,psci-suspend-param = <0x10>;
|
||||
qcom,psci-mode = <0x1>;
|
||||
};
|
||||
|
||||
CLUSTER_OFF: qcom,pm-cluster-level@1 { /* D4 */
|
||||
reg = <1>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "l3-pc";
|
||||
entry-latency-us = <2752>;
|
||||
exit-latency-us = <3048>;
|
||||
min-residency-us = <6118>;
|
||||
arm,psci-suspend-param = <0x40>;
|
||||
qcom,psci-mode = <0x4>;
|
||||
qcom,is-reset;
|
||||
qcom,min-child-idx = <2>;
|
||||
};
|
||||
|
||||
CX_RET: qcom,pm-cluster-level@2 { /* Cx Ret */
|
||||
reg = <2>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "cx-ret";
|
||||
entry-latency-us = <3263>;
|
||||
exit-latency-us = <4562>;
|
||||
min-residency-us = <8467>;
|
||||
arm,psci-suspend-param = <0x1240>;
|
||||
qcom,psci-mode = <0x124>;
|
||||
qcom,is-reset;
|
||||
qcom,notify-rpm;
|
||||
qcom,min-child-idx = <2>;
|
||||
};
|
||||
|
||||
LLCC_OFF: qcom,pm-cluster-level@3 { /* AOSS sleep */
|
||||
reg = <3>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "llcc-off";
|
||||
entry-latency-us = <3638>;
|
||||
exit-latency-us = <6562>;
|
||||
min-residency-us = <9826>;
|
||||
arm,psci-suspend-param = <0xb240>;
|
||||
qcom,psci-mode = <0xb24>;
|
||||
qcom,is-reset;
|
||||
qcom,notify-rpm;
|
||||
qcom,min-child-idx = <2>;
|
||||
};
|
||||
|
||||
qcom,pm-cpu@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
qcom,psci-mode-shift = <0>;
|
||||
qcom,psci-mode-mask = <0xf>;
|
||||
qcom,cpu = <&CPU0 &CPU1 &CPU2 &CPU3 &CPU4 &CPU5>;
|
||||
|
||||
SLVR_WFI: qcom,pm-cpu-level@0 { /* C1 */
|
||||
reg = <0>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "wfi";
|
||||
entry-latency-us = <61>;
|
||||
exit-latency-us = <60>;
|
||||
min-residency-us = <121>;
|
||||
arm,psci-suspend-param = <0x1>;
|
||||
qcom,psci-cpu-mode = <0x1>;
|
||||
};
|
||||
|
||||
SLVR_OFF: qcom,pm-cpu-level@1 { /* C3 */
|
||||
reg = <1>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "pc";
|
||||
entry-latency-us = <549>;
|
||||
exit-latency-us = <901>;
|
||||
min-residency-us = <1774>;
|
||||
arm,psci-suspend-param = <0x40000003>;
|
||||
qcom,psci-cpu-mode = <0x3>;
|
||||
local-timer-stop;
|
||||
qcom,is-reset;
|
||||
qcom,use-broadcast-timer;
|
||||
};
|
||||
|
||||
SLVR_RAIL_OFF: qcom,pm-cpu-level@2 { /* C4 */
|
||||
reg = <2>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "rail-pc";
|
||||
entry-latency-us = <702>;
|
||||
exit-latency-us = <915>;
|
||||
min-residency-us = <4001>;
|
||||
arm,psci-suspend-param = <0x40000004>;
|
||||
qcom,psci-cpu-mode = <0x4>;
|
||||
local-timer-stop;
|
||||
qcom,is-reset;
|
||||
qcom,use-broadcast-timer;
|
||||
};
|
||||
};
|
||||
|
||||
qcom,pm-cpu@1 {
|
||||
reg = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
qcom,psci-mode-shift = <0>;
|
||||
qcom,psci-mode-mask = <0xf>;
|
||||
qcom,cpu = <&CPU6 &CPU7>;
|
||||
|
||||
GOLD_WFI: qcom,pm-cpu-level@0 { /* C1 */
|
||||
reg = <0>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "wfi";
|
||||
entry-latency-us = <55>;
|
||||
exit-latency-us = <66>;
|
||||
min-residency-us = <121>;
|
||||
arm,psci-suspend-param = <0x1>;
|
||||
qcom,psci-cpu-mode = <0x1>;
|
||||
};
|
||||
|
||||
GOLD_OFF: qcom,pm-cpu-level@1 { /* C3 */
|
||||
reg = <1>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "pc";
|
||||
entry-latency-us = <523>;
|
||||
exit-latency-us = <1244>;
|
||||
min-residency-us = <2207>;
|
||||
arm,psci-suspend-param = <0x40000003>;
|
||||
qcom,psci-cpu-mode = <0x3>;
|
||||
local-timer-stop;
|
||||
qcom,is-reset;
|
||||
qcom,use-broadcast-timer;
|
||||
};
|
||||
|
||||
GOLD_RAIL_OFF: qcom,pm-cpu-level@2 { /* C4 */
|
||||
reg = <2>;
|
||||
compatible = "arm,idle-state";
|
||||
idle-state-name = "rail-pc";
|
||||
entry-latency-us = <526>;
|
||||
exit-latency-us = <1854>;
|
||||
min-residency-us = <5555>;
|
||||
arm,psci-suspend-param = <0x40000004>;
|
||||
qcom,psci-cpu-mode = <0x4>;
|
||||
local-timer-stop;
|
||||
qcom,is-reset;
|
||||
qcom,use-broadcast-timer;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
rpmh-master-stats@b221200 {
|
||||
compatible = "qcom,rpmh-master-stats-v1";
|
||||
reg = <0xb221200 0x60>;
|
||||
};
|
||||
|
||||
soc-sleep-stats@c3f0000 {
|
||||
compatible = "qcom,rpmh-sleep-stats";
|
||||
reg = <0xc3f0000 0x400>;
|
||||
};
|
||||
};
|
||||
|
|
@ -26,6 +26,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x0>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&SLVR_OFF &SLVR_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1024>;
|
||||
cache-size = <0x8000>;
|
||||
next-level-cache = <&L2_0>;
|
||||
|
|
@ -63,6 +64,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x100>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&SLVR_OFF &SLVR_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1024>;
|
||||
cache-size = <0x8000>;
|
||||
next-level-cache = <&L2_100>;
|
||||
|
|
@ -95,6 +97,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x200>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&SLVR_OFF &SLVR_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1024>;
|
||||
cache-size = <0x8000>;
|
||||
next-level-cache = <&L2_200>;
|
||||
|
|
@ -126,6 +129,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x300>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&SLVR_OFF &SLVR_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1024>;
|
||||
cache-size = <0x8000>;
|
||||
next-level-cache = <&L2_300>;
|
||||
|
|
@ -157,6 +161,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x400>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&SLVR_OFF &SLVR_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1024>;
|
||||
cache-size = <0x8000>;
|
||||
next-level-cache = <&L2_400>;
|
||||
|
|
@ -188,6 +193,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x500>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&SLVR_OFF &SLVR_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1024>;
|
||||
cache-size = <0x8000>;
|
||||
next-level-cache = <&L2_500>;
|
||||
|
|
@ -219,6 +225,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x600>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&GOLD_OFF &GOLD_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1740>;
|
||||
cache-size = <0x10000>;
|
||||
next-level-cache = <&L2_600>;
|
||||
|
|
@ -259,6 +266,7 @@
|
|||
compatible = "arm,armv8";
|
||||
reg = <0x0 0x700>;
|
||||
enable-method = "psci";
|
||||
cpu-idle-states = <&GOLD_OFF &GOLD_RAIL_OFF>;
|
||||
capacity-dmips-mhz = <1740>;
|
||||
cache-size = <0x10000>;
|
||||
next-level-cache = <&L2_700>;
|
||||
|
|
@ -710,3 +718,4 @@
|
|||
|
||||
#include "sm6150-qupv3.dtsi"
|
||||
#include "sm6150-pinctrl.dtsi"
|
||||
#include "sm6150-pm.dtsi"
|
||||
|
|
|
|||
Loading…
Reference in a new issue