From 6f5c44d3fa1964fc52bb33fe08a4f3b1d62ddce9 Mon Sep 17 00:00:00 2001 From: Raghavendra Kakarla Date: Thu, 23 Apr 2020 12:00:50 +0530 Subject: [PATCH] ARM: dts: msm: Add LPM device nodes for holi Add device node for LPMs, soc sleep stats and rpm master stats. Change-Id: I44f239aba3317ef997ef2efdabfc1b7a083348aa --- qcom/holi-pm.dtsi | 159 ++++++++++++++++++++++++++++++++++++++++++++++ qcom/holi.dtsi | 9 +++ 2 files changed, 168 insertions(+) create mode 100644 qcom/holi-pm.dtsi diff --git a/qcom/holi-pm.dtsi b/qcom/holi-pm.dtsi new file mode 100644 index 000000000000..bf7fe2a1bd04 --- /dev/null +++ b/qcom/holi-pm.dtsi @@ -0,0 +1,159 @@ +&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,clstr-tmr-add = <1000>; + 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,notify-rpm; + qcom,min-child-idx = <2>; + qcom,is-reset; + }; + + qcom,pm-cpu@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + qcom,psci-mode-shift = <0>; + qcom,psci-mode-mask = <0xf>; + qcom,ref-stddev = <500>; + qcom,tmr-add = <1000>; + qcom,ref-premature-cnt = <1>; + 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_PC: 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>; + qcom,psci-cpu-mode = <0x3>; + arm,psci-suspend-param = <0x40000003>; + 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>; + qcom,psci-cpu-mode = <0x4>; + arm,psci-suspend-param = <0x40000004>; + 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,ref-stddev = <100>; + qcom,tmr-add = <100>; + qcom,ref-premature-cnt = <3>; + qcom,cpu = <&CPU6 &CPU7>; + + GOLD_WFI: qcom,pm-cpu-level@0 { /* C1 */ + reg = <0>; + idle-state-name = "wfi"; + compatible = "arm,idle-state"; + entry-latency-us = <55>; + exit-latency-us = <66>; + min-residency-us = <121>; + qcom,psci-cpu-mode = <0x1>; + arm,psci-suspend-param = <0x1>; + }; + + GOLD_PC: 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>; + local-timer-stop; + qcom,psci-cpu-mode = <0x3>; + 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>; + local-timer-stop; + qcom,psci-cpu-mode = <0x4>; + qcom,is-reset; + qcom,use-broadcast-timer; + }; + }; + }; + }; + + rpm_sleep_stats: soc-sleep-stats@4690000 { + compatible = "qcom,rpm-sleep-stats"; + reg = <0x04690000 0x400>; + }; + + qcom,rpm-master-stats@45f0150 { + compatible = "qcom,rpm-master-stats"; + reg = <0x45f0150 0x5000>; + qcom,masters = "APSS", "MPSS", "ADSP", "CDSP", "TZ"; + qcom,master-stats-version = <2>; + qcom,master-offset = <4096>; + }; + +}; diff --git a/qcom/holi.dtsi b/qcom/holi.dtsi index b27be164e793..26664fdf4208 100644 --- a/qcom/holi.dtsi +++ b/qcom/holi.dtsi @@ -23,6 +23,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x0>; + cpu-idle-states = <&SLVR_PC &SLVR_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1024>; @@ -44,6 +45,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x100>; + cpu-idle-states = <&SLVR_PC &SLVR_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1024>; @@ -60,6 +62,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x200>; + cpu-idle-states = <&SLVR_PC &SLVR_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1024>; @@ -76,6 +79,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x300>; + cpu-idle-states = <&SLVR_PC &SLVR_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1024>; @@ -92,6 +96,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x400>; + cpu-idle-states = <&SLVR_PC &SLVR_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1024>; @@ -108,6 +113,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x500>; + cpu-idle-states = <&SLVR_PC &SLVR_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1024>; @@ -124,6 +130,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x600>; + cpu-idle-states = <&GOLD_PC &GOLD_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1740>; @@ -140,6 +147,7 @@ device_type = "cpu"; compatible = "qcom,kryo"; reg = <0x0 0x700>; + cpu-idle-states = <&GOLD_PC &GOLD_RAIL_OFF>; enable-method = "psci"; cpu-release-addr = <0x0 0x50000000>; capacity-dmips-mhz = <1740>; @@ -890,6 +898,7 @@ #include "holi-gdsc.dtsi" #include "holi-ion.dtsi" #include "holi-usb.dtsi" +#include "holi-pm.dtsi" &pmk8350 { reg = <6 SPMI_USID>;