xref: /linux/arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi (revision 9f2c9170934eace462499ba0bfe042cc72900173)
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,pm8998-pon";
63			reg = <0x1300>;
64
65			pmk8280_pon_pwrkey: pwrkey {
66				compatible = "qcom,pmk8350-pwrkey";
67				interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
68				linux,code = <KEY_POWER>;
69				status = "disabled";
70			};
71
72			pmk8280_pon_resin: resin {
73				compatible = "qcom,pmk8350-resin";
74				interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
75				status = "disabled";
76			};
77		};
78
79		pmk8280_vadc: adc@3100 {
80			compatible = "qcom,spmi-adc7";
81			reg = <0x3100>;
82			interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
83			#address-cells = <1>;
84			#size-cells = <0>;
85			#io-channel-cells = <1>;
86			status = "disabled";
87		};
88
89		pmk8280_adc_tm: adc-tm@3400 {
90			compatible = "qcom,spmi-adc-tm5-gen2";
91			reg = <0x3400>;
92			interrupts = <0x0 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
93			#address-cells = <1>;
94			#size-cells = <0>;
95			#thermal-sensor-cells = <1>;
96			status = "disabled";
97		};
98	};
99
100	pmc8280_1: pmic@1 {
101		compatible = "qcom,pm8350", "qcom,spmi-pmic";
102		reg = <0x1 SPMI_USID>;
103		#address-cells = <1>;
104		#size-cells = <0>;
105
106		pm8280_1_temp_alarm: temp-alarm@a00 {
107			compatible = "qcom,spmi-temp-alarm";
108			reg = <0xa00>;
109			interrupts = <0x1 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
110			#thermal-sensor-cells = <0>;
111		};
112
113		pmc8280_1_gpios: gpio@8800 {
114			compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
115			reg = <0x8800>;
116			gpio-controller;
117			gpio-ranges = <&pmc8280_1_gpios 0 0 10>;
118			#gpio-cells = <2>;
119			interrupt-controller;
120			#interrupt-cells = <2>;
121		};
122	};
123
124	pmc8280c: pmic@2 {
125		compatible = "qcom,pm8350c", "qcom,spmi-pmic";
126		reg = <0x2 SPMI_USID>;
127		#address-cells = <1>;
128		#size-cells = <0>;
129
130		pmc8280c_gpios: gpio@8800 {
131			compatible = "qcom,pm8350c-gpio", "qcom,spmi-gpio";
132			reg = <0x8800>;
133			gpio-controller;
134			gpio-ranges = <&pmc8280c_gpios 0 0 9>;
135			#gpio-cells = <2>;
136			interrupt-controller;
137			#interrupt-cells = <2>;
138		};
139
140		pmc8280c_lpg: pwm {
141			compatible = "qcom,pm8350c-pwm";
142
143			#address-cells = <1>;
144			#size-cells = <0>;
145
146			#pwm-cells = <2>;
147
148			status = "disabled";
149		};
150	};
151
152	pmc8280_2: pmic@3 {
153		compatible = "qcom,pm8350", "qcom,spmi-pmic";
154		reg = <0x3 SPMI_USID>;
155		#address-cells = <1>;
156		#size-cells = <0>;
157
158		pm8280_2_temp_alarm: temp-alarm@a00 {
159			compatible = "qcom,spmi-temp-alarm";
160			reg = <0xa00>;
161			interrupts = <0x2 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
162			#thermal-sensor-cells = <0>;
163		};
164
165		pmc8280_2_gpios: gpio@8800 {
166			compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
167			reg = <0x8800>;
168			gpio-controller;
169			gpio-ranges = <&pmc8280_2_gpios 0 0 10>;
170			#gpio-cells = <2>;
171			interrupt-controller;
172			#interrupt-cells = <2>;
173		};
174	};
175
176	pmr735a: pmic@4 {
177		compatible = "qcom,pmr735a", "qcom,spmi-pmic";
178		reg = <0x4 SPMI_USID>;
179		#address-cells = <1>;
180		#size-cells = <0>;
181
182		pmr735a_gpios: gpio@8800 {
183			compatible = "qcom,pmr735a-gpio", "qcom,spmi-gpio";
184			reg = <0x8800>;
185			gpio-controller;
186			gpio-ranges = <&pmr735a_gpios 0 0 4>;
187			#gpio-cells = <2>;
188			interrupt-controller;
189			#interrupt-cells = <2>;
190		};
191	};
192};
193