blob: b24ef1df0ad7b2032c5563ac83ea040091acab44 [file] [log] [blame]
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -06001/* Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 */
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060012
13&soc {
14 qcom,lpm-levels {
15 compatible = "qcom,lpm-levels";
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060016 #address-cells = <1>;
17 #size-cells = <0>;
Maulik Shahbdf541d2017-07-03 12:56:14 +053018
Lina Iyer3afbb2b2017-03-14 14:30:51 -060019 qcom,pm-cluster@0 {
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060020 reg = <0>;
21 #address-cells = <1>;
22 #size-cells = <0>;
23 label = "L3";
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060024 qcom,psci-mode-shift = <4>;
Lina Iyer3afbb2b2017-03-14 14:30:51 -060025 qcom,psci-mode-mask = <0xfff>;
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060026
Lina Iyer3afbb2b2017-03-14 14:30:51 -060027 qcom,pm-cluster-level@0 { /* D1 */
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060028 reg = <0>;
29 label = "l3-wfi";
30 qcom,psci-mode = <0x1>;
31 qcom,latency-us = <51>;
32 qcom,ss-power = <452>;
33 qcom,energy-overhead = <69355>;
34 qcom,time-overhead = <99>;
35 };
Lina Iyer3afbb2b2017-03-14 14:30:51 -060036
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -060037 qcom,pm-cluster-level@1 { /* LLCC off, AOSS sleep */
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060038 reg = <1>;
Lina Iyer3afbb2b2017-03-14 14:30:51 -060039 label = "llcc-off";
40 qcom,psci-mode = <0xC24>;
41 qcom,latency-us = <6562>;
42 qcom,ss-power = <108>;
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -060043 qcom,energy-overhead = <4000000>;
44 qcom,time-overhead = <5000>;
45 qcom,min-child-idx = <2>;
Lina Iyer3afbb2b2017-03-14 14:30:51 -060046 qcom,is-reset;
47 qcom,notify-rpm;
48 };
Maulik Shahbdf541d2017-07-03 12:56:14 +053049
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060050 qcom,pm-cpu@0 {
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060051 #address-cells = <1>;
52 #size-cells = <0>;
53 qcom,psci-mode-shift = <0>;
54 qcom,psci-mode-mask = <0xf>;
Mahesh Sivasubramanianc6157e22017-10-16 16:49:33 -060055 qcom,use-prediction;
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060056 qcom,cpu = <&CPU0 &CPU1 &CPU2 &CPU3>;
57
58 qcom,pm-cpu-level@0 { /* C1 */
59 reg = <0>;
Maulik Shahbdf541d2017-07-03 12:56:14 +053060 label = "wfi";
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060061 qcom,psci-cpu-mode = <0x1>;
62 qcom,latency-us = <43>;
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -060063 qcom,ss-power = <150>;
64 qcom,energy-overhead = <10000>;
65 qcom,time-overhead = <100>;
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060066 };
67
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -060068 qcom,pm-cpu-level@1 { /* C3 */
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060069 reg = <1>;
Maulik Shahbdf541d2017-07-03 12:56:14 +053070 label = "pc";
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060071 qcom,psci-cpu-mode = <0x3>;
Mahesh Sivasubramanian179c00c2017-06-09 10:11:24 -060072 qcom,latency-us = <461>;
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -060073 qcom,ss-power = <100>;
74 qcom,energy-overhead = <400000>;
75 qcom,time-overhead = <500>;
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060076 qcom,is-reset;
77 qcom,use-broadcast-timer;
78 };
79
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -060080 qcom,pm-cpu-level@2 { /* C4 */
81 reg = <2>;
Maulik Shahbdf541d2017-07-03 12:56:14 +053082 label = "rail-pc";
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060083 qcom,psci-cpu-mode = <0x4>;
Mahesh Sivasubramanian179c00c2017-06-09 10:11:24 -060084 qcom,latency-us = <531>;
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -060085 qcom,ss-power = <73>;
86 qcom,energy-overhead = <500000>;
87 qcom,time-overhead = <600>;
Mahesh Sivasubramanian168922d2017-06-09 09:47:52 -060088 qcom,is-reset;
89 qcom,use-broadcast-timer;
90 };
91 };
92
93 qcom,pm-cpu@1 {
94 #address-cells = <1>;
95 #size-cells = <0>;
96 qcom,psci-mode-shift = <0>;
97 qcom,psci-mode-mask = <0xf>;
98 qcom,cpu = <&CPU4 &CPU5 &CPU6 &CPU7>;
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -060099
100 qcom,pm-cpu-level@0 { /* C1 */
101 reg = <0>;
Maulik Shahbdf541d2017-07-03 12:56:14 +0530102 label = "wfi";
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600103 qcom,psci-cpu-mode = <0x1>;
104 qcom,latency-us = <43>;
105 qcom,ss-power = <454>;
106 qcom,energy-overhead = <38639>;
107 qcom,time-overhead = <83>;
108 };
109
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -0600110 qcom,pm-cpu-level@1 { /* C3 */
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600111 reg = <1>;
Maulik Shahbdf541d2017-07-03 12:56:14 +0530112 label = "pc";
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600113 qcom,psci-cpu-mode = <0x3>;
Mahesh Sivasubramanian179c00c2017-06-09 10:11:24 -0600114 qcom,latency-us = <621>;
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600115 qcom,ss-power = <436>;
116 qcom,energy-overhead = <418225>;
117 qcom,time-overhead = <885>;
118 qcom,is-reset;
Lina Iyer3afbb2b2017-03-14 14:30:51 -0600119 qcom,use-broadcast-timer;
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600120 };
Lina Iyer3afbb2b2017-03-14 14:30:51 -0600121
Mahesh Sivasubramanian945fd6c2017-10-10 10:24:50 -0600122 qcom,pm-cpu-level@2 { /* C4 */
123 reg = <2>;
Maulik Shahbdf541d2017-07-03 12:56:14 +0530124 label = "rail-pc";
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600125 qcom,psci-cpu-mode = <0x4>;
Mahesh Sivasubramanian179c00c2017-06-09 10:11:24 -0600126 qcom,latency-us = <1061>;
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600127 qcom,ss-power = <400>;
128 qcom,energy-overhead = <428225>;
129 qcom,time-overhead = <1000>;
130 qcom,is-reset;
Lina Iyer3afbb2b2017-03-14 14:30:51 -0600131 qcom,use-broadcast-timer;
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600132 };
133 };
134 };
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600135 };
Lina Iyer893b7eb2017-03-16 14:05:31 -0600136
137 qcom,rpm-stats@c300000 {
138 compatible = "qcom,rpm-stats";
139 reg = <0xC300000 0x1000>, <0xC3F0004 0x4>;
140 reg-names = "phys_addr_base", "offset_addr";
141 };
Mahesh Sivasubramanian7a7b3c72016-11-04 14:31:59 -0600142};