Linux 6.7-rc7
[linux-modified.git] / arch / arm64 / boot / dts / qcom / sc8280xp-pmics.dtsi
1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3  * Copyright (c) 2022, Linaro Limited
4  */
5
6 #include <dt-bindings/input/input.h>
7 #include <dt-bindings/interrupt-controller/irq.h>
8 #include <dt-bindings/spmi/spmi.h>
9
10 / {
11         thermal-zones {
12                 pm8280_1_thermal: pm8280-1-thermal {
13                         polling-delay-passive = <100>;
14                         polling-delay = <0>;
15                         thermal-sensors = <&pm8280_1_temp_alarm>;
16
17                         trips {
18                                 trip0 {
19                                         temperature = <95000>;
20                                         hysteresis = <0>;
21                                         type = "passive";
22                                 };
23
24                                 trip1 {
25                                         temperature = <115000>;
26                                         hysteresis = <0>;
27                                         type = "critical";
28                                 };
29                         };
30                 };
31
32                 pm8280_2_thermal: pm8280-2-thermal {
33                         polling-delay-passive = <100>;
34                         polling-delay = <0>;
35                         thermal-sensors = <&pm8280_2_temp_alarm>;
36
37                         trips {
38                                 trip0 {
39                                         temperature = <95000>;
40                                         hysteresis = <0>;
41                                         type = "passive";
42                                 };
43
44                                 trip1 {
45                                         temperature = <115000>;
46                                         hysteresis = <0>;
47                                         type = "critical";
48                                 };
49                         };
50                 };
51         };
52 };
53
54 &spmi_bus {
55         pmk8280: pmic@0 {
56                 compatible = "qcom,pmk8350", "qcom,spmi-pmic";
57                 reg = <0x0 SPMI_USID>;
58                 #address-cells = <1>;
59                 #size-cells = <0>;
60
61                 pmk8280_pon: pon@1300 {
62                         compatible = "qcom,pmk8350-pon";
63                         reg = <0x1300>, <0x800>;
64                         reg-names = "hlos", "pbs";
65
66                         pmk8280_pon_pwrkey: pwrkey {
67                                 compatible = "qcom,pmk8350-pwrkey";
68                                 interrupts-extended = <&spmi_bus 0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
69                                 linux,code = <KEY_POWER>;
70                                 status = "disabled";
71                         };
72
73                         pmk8280_pon_resin: resin {
74                                 compatible = "qcom,pmk8350-resin";
75                                 interrupts-extended = <&spmi_bus 0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
76                                 status = "disabled";
77                         };
78                 };
79
80                 pmk8280_vadc: adc@3100 {
81                         compatible = "qcom,spmi-adc7";
82                         reg = <0x3100>;
83                         interrupts-extended = <&spmi_bus 0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
84                         #address-cells = <1>;
85                         #size-cells = <0>;
86                         #io-channel-cells = <1>;
87                         status = "disabled";
88                 };
89
90                 pmk8280_adc_tm: adc-tm@3400 {
91                         compatible = "qcom,spmi-adc-tm5-gen2";
92                         reg = <0x3400>;
93                         interrupts-extended = <&spmi_bus 0x0 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
94                         #address-cells = <1>;
95                         #size-cells = <0>;
96                         #thermal-sensor-cells = <1>;
97                         status = "disabled";
98                 };
99
100                 pmk8280_rtc: rtc@6100 {
101                         compatible = "qcom,pmk8350-rtc";
102                         reg = <0x6100>, <0x6200>;
103                         reg-names = "rtc", "alarm";
104                         interrupts-extended = <&spmi_bus 0x0 0x62 0x1 IRQ_TYPE_EDGE_RISING>;
105                         wakeup-source;
106                         status = "disabled";
107                 };
108
109                 pmk8280_sdam_6: nvram@8500 {
110                         compatible = "qcom,spmi-sdam";
111                         reg = <0x8500>;
112                         #address-cells = <1>;
113                         #size-cells = <1>;
114                         ranges = <0 0x8500 0x100>;
115                         status = "disabled";
116                 };
117         };
118
119         pmc8280_1: pmic@1 {
120                 compatible = "qcom,pm8350", "qcom,spmi-pmic";
121                 reg = <0x1 SPMI_USID>;
122                 #address-cells = <1>;
123                 #size-cells = <0>;
124
125                 pm8280_1_temp_alarm: temp-alarm@a00 {
126                         compatible = "qcom,spmi-temp-alarm";
127                         reg = <0xa00>;
128                         interrupts-extended = <&spmi_bus 0x1 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
129                         #thermal-sensor-cells = <0>;
130                 };
131
132                 pmc8280_1_gpios: gpio@8800 {
133                         compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
134                         reg = <0x8800>;
135                         gpio-controller;
136                         gpio-ranges = <&pmc8280_1_gpios 0 0 10>;
137                         #gpio-cells = <2>;
138                         interrupt-controller;
139                         #interrupt-cells = <2>;
140                 };
141         };
142
143         pmc8280c: pmic@2 {
144                 compatible = "qcom,pm8350c", "qcom,spmi-pmic";
145                 reg = <0x2 SPMI_USID>;
146                 #address-cells = <1>;
147                 #size-cells = <0>;
148
149                 pmc8280c_gpios: gpio@8800 {
150                         compatible = "qcom,pm8350c-gpio", "qcom,spmi-gpio";
151                         reg = <0x8800>;
152                         gpio-controller;
153                         gpio-ranges = <&pmc8280c_gpios 0 0 9>;
154                         #gpio-cells = <2>;
155                         interrupt-controller;
156                         #interrupt-cells = <2>;
157                 };
158
159                 pmc8280c_lpg: pwm {
160                         compatible = "qcom,pm8350c-pwm";
161
162                         #address-cells = <1>;
163                         #size-cells = <0>;
164
165                         #pwm-cells = <2>;
166
167                         status = "disabled";
168                 };
169         };
170
171         pmc8280_2: pmic@3 {
172                 compatible = "qcom,pm8350", "qcom,spmi-pmic";
173                 reg = <0x3 SPMI_USID>;
174                 #address-cells = <1>;
175                 #size-cells = <0>;
176
177                 pm8280_2_temp_alarm: temp-alarm@a00 {
178                         compatible = "qcom,spmi-temp-alarm";
179                         reg = <0xa00>;
180                         interrupts-extended = <&spmi_bus 0x2 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
181                         #thermal-sensor-cells = <0>;
182                 };
183
184                 pmc8280_2_gpios: gpio@8800 {
185                         compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
186                         reg = <0x8800>;
187                         gpio-controller;
188                         gpio-ranges = <&pmc8280_2_gpios 0 0 10>;
189                         #gpio-cells = <2>;
190                         interrupt-controller;
191                         #interrupt-cells = <2>;
192                 };
193         };
194
195         pmr735a: pmic@4 {
196                 compatible = "qcom,pmr735a", "qcom,spmi-pmic";
197                 reg = <0x4 SPMI_USID>;
198                 #address-cells = <1>;
199                 #size-cells = <0>;
200
201                 pmr735a_gpios: gpio@8800 {
202                         compatible = "qcom,pmr735a-gpio", "qcom,spmi-gpio";
203                         reg = <0x8800>;
204                         gpio-controller;
205                         gpio-ranges = <&pmr735a_gpios 0 0 4>;
206                         #gpio-cells = <2>;
207                         interrupt-controller;
208                         #interrupt-cells = <2>;
209                 };
210         };
211 };