xref: /openbmc/linux/arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1ccd3517fSBjorn Andersson// SPDX-License-Identifier: BSD-3-Clause
2ccd3517fSBjorn Andersson/*
3ccd3517fSBjorn Andersson * Copyright (c) 2022, Linaro Limited
4ccd3517fSBjorn Andersson */
5ccd3517fSBjorn Andersson
6ccd3517fSBjorn Andersson#include <dt-bindings/input/input.h>
7ccd3517fSBjorn Andersson#include <dt-bindings/interrupt-controller/irq.h>
8ccd3517fSBjorn Andersson#include <dt-bindings/spmi/spmi.h>
9ccd3517fSBjorn Andersson
10448a7821SManivannan Sadhasivam/ {
11448a7821SManivannan Sadhasivam	thermal-zones {
12448a7821SManivannan Sadhasivam		pm8280_1_thermal: pm8280-1-thermal {
13448a7821SManivannan Sadhasivam			polling-delay-passive = <100>;
14448a7821SManivannan Sadhasivam			polling-delay = <0>;
15448a7821SManivannan Sadhasivam			thermal-sensors = <&pm8280_1_temp_alarm>;
16448a7821SManivannan Sadhasivam
17448a7821SManivannan Sadhasivam			trips {
18448a7821SManivannan Sadhasivam				trip0 {
19448a7821SManivannan Sadhasivam					temperature = <95000>;
20448a7821SManivannan Sadhasivam					hysteresis = <0>;
21448a7821SManivannan Sadhasivam					type = "passive";
22448a7821SManivannan Sadhasivam				};
23448a7821SManivannan Sadhasivam
24448a7821SManivannan Sadhasivam				trip1 {
25448a7821SManivannan Sadhasivam					temperature = <115000>;
26448a7821SManivannan Sadhasivam					hysteresis = <0>;
27448a7821SManivannan Sadhasivam					type = "critical";
28448a7821SManivannan Sadhasivam				};
29448a7821SManivannan Sadhasivam			};
30448a7821SManivannan Sadhasivam		};
31448a7821SManivannan Sadhasivam
32448a7821SManivannan Sadhasivam		pm8280_2_thermal: pm8280-2-thermal {
33448a7821SManivannan Sadhasivam			polling-delay-passive = <100>;
34448a7821SManivannan Sadhasivam			polling-delay = <0>;
35448a7821SManivannan Sadhasivam			thermal-sensors = <&pm8280_2_temp_alarm>;
36448a7821SManivannan Sadhasivam
37448a7821SManivannan Sadhasivam			trips {
38448a7821SManivannan Sadhasivam				trip0 {
39448a7821SManivannan Sadhasivam					temperature = <95000>;
40448a7821SManivannan Sadhasivam					hysteresis = <0>;
41448a7821SManivannan Sadhasivam					type = "passive";
42448a7821SManivannan Sadhasivam				};
43448a7821SManivannan Sadhasivam
44448a7821SManivannan Sadhasivam				trip1 {
45448a7821SManivannan Sadhasivam					temperature = <115000>;
46448a7821SManivannan Sadhasivam					hysteresis = <0>;
47448a7821SManivannan Sadhasivam					type = "critical";
48448a7821SManivannan Sadhasivam				};
49448a7821SManivannan Sadhasivam			};
50448a7821SManivannan Sadhasivam		};
51448a7821SManivannan Sadhasivam	};
52448a7821SManivannan Sadhasivam};
53448a7821SManivannan Sadhasivam
54ccd3517fSBjorn Andersson&spmi_bus {
55ccd3517fSBjorn Andersson	pmk8280: pmic@0 {
56ccd3517fSBjorn Andersson		compatible = "qcom,pmk8350", "qcom,spmi-pmic";
57ccd3517fSBjorn Andersson		reg = <0x0 SPMI_USID>;
58ccd3517fSBjorn Andersson		#address-cells = <1>;
59ccd3517fSBjorn Andersson		#size-cells = <0>;
60ccd3517fSBjorn Andersson
61ccd3517fSBjorn Andersson		pmk8280_pon: pon@1300 {
62280e05a3SJohan Hovold			compatible = "qcom,pmk8350-pon";
63280e05a3SJohan Hovold			reg = <0x1300>, <0x800>;
64280e05a3SJohan Hovold			reg-names = "hlos", "pbs";
65ccd3517fSBjorn Andersson
66ccd3517fSBjorn Andersson			pmk8280_pon_pwrkey: pwrkey {
67ccd3517fSBjorn Andersson				compatible = "qcom,pmk8350-pwrkey";
682d5cab92SManivannan Sadhasivam				interrupts-extended = <&spmi_bus 0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
69ccd3517fSBjorn Andersson				linux,code = <KEY_POWER>;
70ccd3517fSBjorn Andersson				status = "disabled";
71ccd3517fSBjorn Andersson			};
7234bd6d22SManivannan Sadhasivam
7334bd6d22SManivannan Sadhasivam			pmk8280_pon_resin: resin {
7434bd6d22SManivannan Sadhasivam				compatible = "qcom,pmk8350-resin";
752d5cab92SManivannan Sadhasivam				interrupts-extended = <&spmi_bus 0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
7634bd6d22SManivannan Sadhasivam				status = "disabled";
7734bd6d22SManivannan Sadhasivam			};
78ccd3517fSBjorn Andersson		};
79e0f681f7SManivannan Sadhasivam
80e0f681f7SManivannan Sadhasivam		pmk8280_vadc: adc@3100 {
81e0f681f7SManivannan Sadhasivam			compatible = "qcom,spmi-adc7";
82e0f681f7SManivannan Sadhasivam			reg = <0x3100>;
832d5cab92SManivannan Sadhasivam			interrupts-extended = <&spmi_bus 0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
84e0f681f7SManivannan Sadhasivam			#address-cells = <1>;
85e0f681f7SManivannan Sadhasivam			#size-cells = <0>;
86e0f681f7SManivannan Sadhasivam			#io-channel-cells = <1>;
87e0f681f7SManivannan Sadhasivam			status = "disabled";
88e0f681f7SManivannan Sadhasivam		};
895cd549c7SManivannan Sadhasivam
905cd549c7SManivannan Sadhasivam		pmk8280_adc_tm: adc-tm@3400 {
915cd549c7SManivannan Sadhasivam			compatible = "qcom,spmi-adc-tm5-gen2";
925cd549c7SManivannan Sadhasivam			reg = <0x3400>;
932d5cab92SManivannan Sadhasivam			interrupts-extended = <&spmi_bus 0x0 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
945cd549c7SManivannan Sadhasivam			#address-cells = <1>;
955cd549c7SManivannan Sadhasivam			#size-cells = <0>;
965cd549c7SManivannan Sadhasivam			#thermal-sensor-cells = <1>;
975cd549c7SManivannan Sadhasivam			status = "disabled";
985cd549c7SManivannan Sadhasivam		};
99009d936fSJohan Hovold
100009d936fSJohan Hovold		pmk8280_rtc: rtc@6100 {
101009d936fSJohan Hovold			compatible = "qcom,pmk8350-rtc";
102009d936fSJohan Hovold			reg = <0x6100>, <0x6200>;
103009d936fSJohan Hovold			reg-names = "rtc", "alarm";
104*55c9b1bfSJohan Hovold			interrupts-extended = <&spmi_bus 0x0 0x62 0x1 IRQ_TYPE_EDGE_RISING>;
105009d936fSJohan Hovold			wakeup-source;
106009d936fSJohan Hovold			status = "disabled";
107009d936fSJohan Hovold		};
108d6dbbda3SJohan Hovold
109d6dbbda3SJohan Hovold		pmk8280_sdam_6: nvram@8500 {
110d6dbbda3SJohan Hovold			compatible = "qcom,spmi-sdam";
1111681ce37SJohan Hovold			reg = <0x8500>;
112d6dbbda3SJohan Hovold			#address-cells = <1>;
113d6dbbda3SJohan Hovold			#size-cells = <1>;
114d6dbbda3SJohan Hovold			ranges = <0 0x8500 0x100>;
115d6dbbda3SJohan Hovold			status = "disabled";
116d6dbbda3SJohan Hovold		};
117ccd3517fSBjorn Andersson	};
118ccd3517fSBjorn Andersson
119ccd3517fSBjorn Andersson	pmc8280_1: pmic@1 {
120ccd3517fSBjorn Andersson		compatible = "qcom,pm8350", "qcom,spmi-pmic";
121ccd3517fSBjorn Andersson		reg = <0x1 SPMI_USID>;
122ccd3517fSBjorn Andersson		#address-cells = <1>;
123ccd3517fSBjorn Andersson		#size-cells = <0>;
124ccd3517fSBjorn Andersson
1256c82f40eSManivannan Sadhasivam		pm8280_1_temp_alarm: temp-alarm@a00 {
1266c82f40eSManivannan Sadhasivam			compatible = "qcom,spmi-temp-alarm";
1276c82f40eSManivannan Sadhasivam			reg = <0xa00>;
1282d5cab92SManivannan Sadhasivam			interrupts-extended = <&spmi_bus 0x1 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
1296c82f40eSManivannan Sadhasivam			#thermal-sensor-cells = <0>;
1306c82f40eSManivannan Sadhasivam		};
1316c82f40eSManivannan Sadhasivam
132ccd3517fSBjorn Andersson		pmc8280_1_gpios: gpio@8800 {
133ccd3517fSBjorn Andersson			compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
134ccd3517fSBjorn Andersson			reg = <0x8800>;
135ccd3517fSBjorn Andersson			gpio-controller;
136ccd3517fSBjorn Andersson			gpio-ranges = <&pmc8280_1_gpios 0 0 10>;
137ccd3517fSBjorn Andersson			#gpio-cells = <2>;
138ccd3517fSBjorn Andersson			interrupt-controller;
139ccd3517fSBjorn Andersson			#interrupt-cells = <2>;
140ccd3517fSBjorn Andersson		};
141ccd3517fSBjorn Andersson	};
142ccd3517fSBjorn Andersson
143ccd3517fSBjorn Andersson	pmc8280c: pmic@2 {
144ccd3517fSBjorn Andersson		compatible = "qcom,pm8350c", "qcom,spmi-pmic";
145ccd3517fSBjorn Andersson		reg = <0x2 SPMI_USID>;
146ccd3517fSBjorn Andersson		#address-cells = <1>;
147ccd3517fSBjorn Andersson		#size-cells = <0>;
148ccd3517fSBjorn Andersson
149ccd3517fSBjorn Andersson		pmc8280c_gpios: gpio@8800 {
150ccd3517fSBjorn Andersson			compatible = "qcom,pm8350c-gpio", "qcom,spmi-gpio";
151ccd3517fSBjorn Andersson			reg = <0x8800>;
152ccd3517fSBjorn Andersson			gpio-controller;
153ccd3517fSBjorn Andersson			gpio-ranges = <&pmc8280c_gpios 0 0 9>;
154ccd3517fSBjorn Andersson			#gpio-cells = <2>;
155ccd3517fSBjorn Andersson			interrupt-controller;
156ccd3517fSBjorn Andersson			#interrupt-cells = <2>;
157ccd3517fSBjorn Andersson		};
158ccd3517fSBjorn Andersson
1597dac7991SBhupesh Sharma		pmc8280c_lpg: pwm {
160ccd3517fSBjorn Andersson			compatible = "qcom,pm8350c-pwm";
161ccd3517fSBjorn Andersson
162ccd3517fSBjorn Andersson			#address-cells = <1>;
163ccd3517fSBjorn Andersson			#size-cells = <0>;
164ccd3517fSBjorn Andersson
165ccd3517fSBjorn Andersson			#pwm-cells = <2>;
166ccd3517fSBjorn Andersson
167ccd3517fSBjorn Andersson			status = "disabled";
168ccd3517fSBjorn Andersson		};
169ccd3517fSBjorn Andersson	};
170ccd3517fSBjorn Andersson
171ccd3517fSBjorn Andersson	pmc8280_2: pmic@3 {
172ccd3517fSBjorn Andersson		compatible = "qcom,pm8350", "qcom,spmi-pmic";
173ccd3517fSBjorn Andersson		reg = <0x3 SPMI_USID>;
174ccd3517fSBjorn Andersson		#address-cells = <1>;
175ccd3517fSBjorn Andersson		#size-cells = <0>;
176ccd3517fSBjorn Andersson
1776c82f40eSManivannan Sadhasivam		pm8280_2_temp_alarm: temp-alarm@a00 {
1786c82f40eSManivannan Sadhasivam			compatible = "qcom,spmi-temp-alarm";
1796c82f40eSManivannan Sadhasivam			reg = <0xa00>;
1802d5cab92SManivannan Sadhasivam			interrupts-extended = <&spmi_bus 0x2 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
1816c82f40eSManivannan Sadhasivam			#thermal-sensor-cells = <0>;
1826c82f40eSManivannan Sadhasivam		};
1836c82f40eSManivannan Sadhasivam
184ccd3517fSBjorn Andersson		pmc8280_2_gpios: gpio@8800 {
185ccd3517fSBjorn Andersson			compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
186ccd3517fSBjorn Andersson			reg = <0x8800>;
187ccd3517fSBjorn Andersson			gpio-controller;
188ccd3517fSBjorn Andersson			gpio-ranges = <&pmc8280_2_gpios 0 0 10>;
189ccd3517fSBjorn Andersson			#gpio-cells = <2>;
190ccd3517fSBjorn Andersson			interrupt-controller;
191ccd3517fSBjorn Andersson			#interrupt-cells = <2>;
192ccd3517fSBjorn Andersson		};
193ccd3517fSBjorn Andersson	};
194ccd3517fSBjorn Andersson
195ccd3517fSBjorn Andersson	pmr735a: pmic@4 {
196ccd3517fSBjorn Andersson		compatible = "qcom,pmr735a", "qcom,spmi-pmic";
197ccd3517fSBjorn Andersson		reg = <0x4 SPMI_USID>;
198ccd3517fSBjorn Andersson		#address-cells = <1>;
199ccd3517fSBjorn Andersson		#size-cells = <0>;
200ccd3517fSBjorn Andersson
201ccd3517fSBjorn Andersson		pmr735a_gpios: gpio@8800 {
202ccd3517fSBjorn Andersson			compatible = "qcom,pmr735a-gpio", "qcom,spmi-gpio";
203ccd3517fSBjorn Andersson			reg = <0x8800>;
204ccd3517fSBjorn Andersson			gpio-controller;
205ccd3517fSBjorn Andersson			gpio-ranges = <&pmr735a_gpios 0 0 4>;
206ccd3517fSBjorn Andersson			#gpio-cells = <2>;
207ccd3517fSBjorn Andersson			interrupt-controller;
208ccd3517fSBjorn Andersson			#interrupt-cells = <2>;
209ccd3517fSBjorn Andersson		};
210ccd3517fSBjorn Andersson	};
211ccd3517fSBjorn Andersson};
212