File Index
Files and directories
Sign in
FILE

sc8280xp-pmics.dtsi

File preview with syntax highlighting.

linux-6.19.14/arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi DEVICETREE
  1// SPDX-License-Identifier: BSD-3-Clause
  2/*
  3 * Copyright (c) 2022, Linaro Limited
  4 */
  5
  6#include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
  7#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
  8#include <dt-bindings/iio/qcom,spmi-adc7-pmr735a.h>
  9#include <dt-bindings/input/input.h>
 10#include <dt-bindings/interrupt-controller/irq.h>
 11#include <dt-bindings/spmi/spmi.h>
 12
 13/ {
 14	thermal-zones {
 15		pm8280_1_thermal: pm8280-1-thermal {
 16			polling-delay-passive = <100>;
 17
 18			thermal-sensors = <&pm8280_1_temp_alarm>;
 19
 20			trips {
 21				trip0 {
 22					temperature = <95000>;
 23					hysteresis = <0>;
 24					type = "passive";
 25				};
 26
 27				trip1 {
 28					temperature = <115000>;
 29					hysteresis = <0>;
 30					type = "critical";
 31				};
 32			};
 33		};
 34
 35		pmc8280c_thermal: pmc8280c-thermal {
 36			polling-delay-passive = <100>;
 37
 38			thermal-sensors = <&pmc8280c_temp_alarm>;
 39
 40			trips {
 41				trip0 {
 42					temperature = <95000>;
 43					hysteresis = <0>;
 44					type = "passive";
 45				};
 46
 47				trip1 {
 48					temperature = <115000>;
 49					hysteresis = <0>;
 50					type = "critical";
 51				};
 52			};
 53		};
 54
 55		pm8280_2_thermal: pm8280-2-thermal {
 56			polling-delay-passive = <100>;
 57
 58			thermal-sensors = <&pm8280_2_temp_alarm>;
 59
 60			trips {
 61				trip0 {
 62					temperature = <95000>;
 63					hysteresis = <0>;
 64					type = "passive";
 65				};
 66
 67				trip1 {
 68					temperature = <115000>;
 69					hysteresis = <0>;
 70					type = "critical";
 71				};
 72			};
 73		};
 74
 75		pmr735a_thermal: pmr735a-thermal {
 76			polling-delay-passive = <100>;
 77
 78			thermal-sensors = <&pmr735a_temp_alarm>;
 79
 80			trips {
 81				trip0 {
 82					temperature = <95000>;
 83					hysteresis = <0>;
 84					type = "passive";
 85				};
 86
 87				trip1 {
 88					temperature = <115000>;
 89					hysteresis = <0>;
 90					type = "critical";
 91				};
 92			};
 93		};
 94	};
 95};
 96
 97&spmi_bus {
 98	pmk8280: pmic@0 {
 99		compatible = "qcom,pmk8350", "qcom,spmi-pmic";
100		reg = <0x0 SPMI_USID>;
101		#address-cells = <1>;
102		#size-cells = <0>;
103
104		pmk8280_pon: pon@1300 {
105			compatible = "qcom,pmk8350-pon";
106			reg = <0x1300>, <0x800>;
107			reg-names = "hlos", "pbs";
108
109			pmk8280_pon_pwrkey: pwrkey {
110				compatible = "qcom,pmk8350-pwrkey";
111				interrupts-extended = <&spmi_bus 0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
112				linux,code = <KEY_POWER>;
113				status = "disabled";
114			};
115
116			pmk8280_pon_resin: resin {
117				compatible = "qcom,pmk8350-resin";
118				interrupts-extended = <&spmi_bus 0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
119				status = "disabled";
120			};
121		};
122
123		pmk8280_vadc: adc@3100 {
124			compatible = "qcom,spmi-adc7";
125			reg = <0x3100>;
126			interrupts-extended = <&spmi_bus 0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
127			#address-cells = <1>;
128			#size-cells = <0>;
129			#io-channel-cells = <1>;
130
131			channel@3 {
132				reg = <PMK8350_ADC7_DIE_TEMP>;
133				qcom,pre-scaling = <1 1>;
134				label = "pmk8350_die_temp";
135			};
136
137			channel@44 {
138				reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
139				qcom,hw-settle-time = <200>;
140				qcom,ratiometric;
141				label = "pmk8350_xo_therm";
142			};
143
144			channel@103 {
145				reg = <PM8350_ADC7_DIE_TEMP(1)>;
146				qcom,pre-scaling = <1 1>;
147				label = "pmc8280_1_die_temp";
148			};
149
150			channel@303 {
151				reg = <PM8350_ADC7_DIE_TEMP(3)>;
152				qcom,pre-scaling = <1 1>;
153				label = "pmc8280_2_die_temp";
154			};
155
156			channel@403 {
157				reg = <PMR735A_ADC7_DIE_TEMP>;
158				qcom,pre-scaling = <1 1>;
159				label = "pmr735a_die_temp";
160			};
161		};
162
163		pmk8280_adc_tm: adc-tm@3400 {
164			compatible = "qcom,spmi-adc-tm5-gen2";
165			reg = <0x3400>;
166			interrupts-extended = <&spmi_bus 0x0 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
167			#address-cells = <1>;
168			#size-cells = <0>;
169			#thermal-sensor-cells = <1>;
170			status = "disabled";
171		};
172
173		pmk8280_rtc: rtc@6100 {
174			compatible = "qcom,pmk8350-rtc";
175			reg = <0x6100>, <0x6200>;
176			reg-names = "rtc", "alarm";
177			interrupts-extended = <&spmi_bus 0x0 0x62 0x1 IRQ_TYPE_EDGE_RISING>;
178			wakeup-source;
179			status = "disabled";
180		};
181
182		pmk8280_sdam_6: nvram@8500 {
183			compatible = "qcom,spmi-sdam";
184			reg = <0x8500>;
185			#address-cells = <1>;
186			#size-cells = <1>;
187			ranges = <0 0x8500 0x100>;
188			status = "disabled";
189		};
190	};
191
192	pmc8280_1: pmic@1 {
193		compatible = "qcom,pm8350", "qcom,spmi-pmic";
194		reg = <0x1 SPMI_USID>;
195		#address-cells = <1>;
196		#size-cells = <0>;
197
198		pm8280_1_temp_alarm: temp-alarm@a00 {
199			compatible = "qcom,spmi-temp-alarm";
200			reg = <0xa00>;
201			interrupts-extended = <&spmi_bus 0x1 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
202			io-channels = <&pmk8280_vadc PM8350_ADC7_DIE_TEMP(1)>;
203			io-channel-names = "thermal";
204			#thermal-sensor-cells = <0>;
205		};
206
207		pmc8280_1_gpios: gpio@8800 {
208			compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
209			reg = <0x8800>;
210			gpio-controller;
211			gpio-ranges = <&pmc8280_1_gpios 0 0 10>;
212			#gpio-cells = <2>;
213			interrupt-controller;
214			#interrupt-cells = <2>;
215		};
216	};
217
218	pmc8280c: pmic@2 {
219		compatible = "qcom,pm8350c", "qcom,spmi-pmic";
220		reg = <0x2 SPMI_USID>;
221		#address-cells = <1>;
222		#size-cells = <0>;
223
224		pmc8280c_temp_alarm: temp-alarm@a00 {
225			compatible = "qcom,spmi-temp-alarm";
226			reg = <0xa00>;
227			interrupts-extended = <&spmi_bus 0x2 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
228			#thermal-sensor-cells = <0>;
229		};
230
231		pmc8280c_gpios: gpio@8800 {
232			compatible = "qcom,pm8350c-gpio", "qcom,spmi-gpio";
233			reg = <0x8800>;
234			gpio-controller;
235			gpio-ranges = <&pmc8280c_gpios 0 0 9>;
236			#gpio-cells = <2>;
237			interrupt-controller;
238			#interrupt-cells = <2>;
239		};
240
241		pmc8280c_lpg: pwm {
242			compatible = "qcom,pm8350c-pwm";
243
244			#address-cells = <1>;
245			#size-cells = <0>;
246
247			#pwm-cells = <2>;
248
249			status = "disabled";
250		};
251	};
252
253	pmc8280_2: pmic@3 {
254		compatible = "qcom,pm8350", "qcom,spmi-pmic";
255		reg = <0x3 SPMI_USID>;
256		#address-cells = <1>;
257		#size-cells = <0>;
258
259		pm8280_2_temp_alarm: temp-alarm@a00 {
260			compatible = "qcom,spmi-temp-alarm";
261			reg = <0xa00>;
262			interrupts-extended = <&spmi_bus 0x3 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
263			io-channels = <&pmk8280_vadc PM8350_ADC7_DIE_TEMP(3)>;
264			io-channel-names = "thermal";
265			#thermal-sensor-cells = <0>;
266		};
267
268		pmc8280_2_gpios: gpio@8800 {
269			compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
270			reg = <0x8800>;
271			gpio-controller;
272			gpio-ranges = <&pmc8280_2_gpios 0 0 10>;
273			#gpio-cells = <2>;
274			interrupt-controller;
275			#interrupt-cells = <2>;
276		};
277	};
278
279	pmr735a: pmic@4 {
280		compatible = "qcom,pmr735a", "qcom,spmi-pmic";
281		reg = <0x4 SPMI_USID>;
282		#address-cells = <1>;
283		#size-cells = <0>;
284
285		pmr735a_temp_alarm: temp-alarm@a00 {
286			compatible = "qcom,spmi-temp-alarm";
287			reg = <0xa00>;
288			interrupts-extended = <&spmi_bus 0x4 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
289			io-channels = <&pmk8280_vadc PMR735A_ADC7_DIE_TEMP>;
290			io-channel-names = "thermal";
291			#thermal-sensor-cells = <0>;
292		};
293
294		pmr735a_gpios: gpio@8800 {
295			compatible = "qcom,pmr735a-gpio", "qcom,spmi-gpio";
296			reg = <0x8800>;
297			gpio-controller;
298			gpio-ranges = <&pmr735a_gpios 0 0 4>;
299			#gpio-cells = <2>;
300			interrupt-controller;
301			#interrupt-cells = <2>;
302		};
303	};
304};
~/ Read-only file preview.