xref: /openbmc/linux/arch/arm64/boot/dts/qcom/pm8150b.dtsi (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1229d5bcaSVinod Koul// SPDX-License-Identifier: BSD-3-Clause
2229d5bcaSVinod Koul/*
3229d5bcaSVinod Koul * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
4229d5bcaSVinod Koul * Copyright (c) 2019, Linaro Limited
5229d5bcaSVinod Koul */
6229d5bcaSVinod Koul
7229d5bcaSVinod Koul#include <dt-bindings/iio/qcom,spmi-vadc.h>
8229d5bcaSVinod Koul#include <dt-bindings/interrupt-controller/irq.h>
9229d5bcaSVinod Koul#include <dt-bindings/spmi/spmi.h>
10229d5bcaSVinod Koul
114c5a410dSDmitry Baryshkov/ {
124c5a410dSDmitry Baryshkov	thermal-zones {
133a786086SManivannan Sadhasivam		pm8150b-thermal {
144c5a410dSDmitry Baryshkov			polling-delay-passive = <100>;
154c5a410dSDmitry Baryshkov			polling-delay = <0>;
164c5a410dSDmitry Baryshkov
174c5a410dSDmitry Baryshkov			thermal-sensors = <&pm8150b_temp>;
184c5a410dSDmitry Baryshkov
194c5a410dSDmitry Baryshkov			trips {
204c5a410dSDmitry Baryshkov				trip0 {
214c5a410dSDmitry Baryshkov					temperature = <95000>;
224c5a410dSDmitry Baryshkov					hysteresis = <0>;
234c5a410dSDmitry Baryshkov					type = "passive";
244c5a410dSDmitry Baryshkov				};
254c5a410dSDmitry Baryshkov
264c5a410dSDmitry Baryshkov				trip1 {
274c5a410dSDmitry Baryshkov					temperature = <115000>;
284c5a410dSDmitry Baryshkov					hysteresis = <0>;
294c5a410dSDmitry Baryshkov					type = "hot";
304c5a410dSDmitry Baryshkov				};
314c5a410dSDmitry Baryshkov
324c5a410dSDmitry Baryshkov				trip2 {
334c5a410dSDmitry Baryshkov					temperature = <145000>;
344c5a410dSDmitry Baryshkov					hysteresis = <0>;
354c5a410dSDmitry Baryshkov					type = "critical";
364c5a410dSDmitry Baryshkov				};
374c5a410dSDmitry Baryshkov			};
384c5a410dSDmitry Baryshkov		};
394c5a410dSDmitry Baryshkov	};
404c5a410dSDmitry Baryshkov};
414c5a410dSDmitry Baryshkov
42229d5bcaSVinod Koul&spmi_bus {
43229d5bcaSVinod Koul	pmic@2 {
44229d5bcaSVinod Koul		compatible = "qcom,pm8150b", "qcom,spmi-pmic";
45229d5bcaSVinod Koul		reg = <0x2 SPMI_USID>;
46229d5bcaSVinod Koul		#address-cells = <1>;
47229d5bcaSVinod Koul		#size-cells = <0>;
48229d5bcaSVinod Koul
4987783dbeSKrzysztof Kozlowski		pon@800 {
50229d5bcaSVinod Koul			compatible = "qcom,pm8916-pon";
51229d5bcaSVinod Koul			reg = <0x0800>;
52229d5bcaSVinod Koul
53229d5bcaSVinod Koul			status = "disabled";
54229d5bcaSVinod Koul		};
55229d5bcaSVinod Koul
560c9a86fbSLuca Weiss		pm8150b_vbus: usb-vbus-regulator@1100 {
57f70c6dc0SWesley Cheng			compatible = "qcom,pm8150b-vbus-reg";
58f70c6dc0SWesley Cheng			status = "disabled";
59f70c6dc0SWesley Cheng			reg = <0x1100>;
60f70c6dc0SWesley Cheng		};
61f70c6dc0SWesley Cheng
624c5a410dSDmitry Baryshkov		pm8150b_temp: temp-alarm@2400 {
634c5a410dSDmitry Baryshkov			compatible = "qcom,spmi-temp-alarm";
644c5a410dSDmitry Baryshkov			reg = <0x2400>;
654c5a410dSDmitry Baryshkov			interrupts = <0x2 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
664c5a410dSDmitry Baryshkov			io-channels = <&pm8150b_adc ADC5_DIE_TEMP>;
674c5a410dSDmitry Baryshkov			io-channel-names = "thermal";
684c5a410dSDmitry Baryshkov			#thermal-sensor-cells = <0>;
694c5a410dSDmitry Baryshkov		};
704c5a410dSDmitry Baryshkov
714c5a410dSDmitry Baryshkov		pm8150b_adc: adc@3100 {
72229d5bcaSVinod Koul			compatible = "qcom,spmi-adc5";
73229d5bcaSVinod Koul			reg = <0x3100>;
74229d5bcaSVinod Koul			#address-cells = <1>;
75229d5bcaSVinod Koul			#size-cells = <0>;
76229d5bcaSVinod Koul			#io-channel-cells = <1>;
77229d5bcaSVinod Koul			interrupts = <0x2 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
78229d5bcaSVinod Koul
79*41c18552SMarijn Suijten			channel@0 {
80229d5bcaSVinod Koul				reg = <ADC5_REF_GND>;
81229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
82229d5bcaSVinod Koul				label = "ref_gnd";
83229d5bcaSVinod Koul			};
84229d5bcaSVinod Koul
85*41c18552SMarijn Suijten			channel@1 {
86229d5bcaSVinod Koul				reg = <ADC5_1P25VREF>;
87229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
88229d5bcaSVinod Koul				label = "vref_1p25";
89229d5bcaSVinod Koul			};
90229d5bcaSVinod Koul
91*41c18552SMarijn Suijten			channel@6 {
92229d5bcaSVinod Koul				reg = <ADC5_DIE_TEMP>;
93229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
94229d5bcaSVinod Koul				label = "die_temp";
95229d5bcaSVinod Koul			};
96229d5bcaSVinod Koul
97*41c18552SMarijn Suijten			channel@9 {
98229d5bcaSVinod Koul				reg = <ADC5_CHG_TEMP>;
99229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
100229d5bcaSVinod Koul				label = "chg_temp";
101229d5bcaSVinod Koul			};
102229d5bcaSVinod Koul		};
103229d5bcaSVinod Koul
10428a7eb65SDmitry Baryshkov		pm8150b_adc_tm: adc-tm@3500 {
10528a7eb65SDmitry Baryshkov			compatible = "qcom,spmi-adc-tm5";
10628a7eb65SDmitry Baryshkov			reg = <0x3500>;
10728a7eb65SDmitry Baryshkov			interrupts = <0x2 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
10828a7eb65SDmitry Baryshkov			#thermal-sensor-cells = <1>;
10928a7eb65SDmitry Baryshkov			#address-cells = <1>;
11028a7eb65SDmitry Baryshkov			#size-cells = <0>;
11128a7eb65SDmitry Baryshkov			status = "disabled";
11228a7eb65SDmitry Baryshkov		};
11328a7eb65SDmitry Baryshkov
114229d5bcaSVinod Koul		pm8150b_gpios: gpio@c000 {
115019102a9SKrzysztof Kozlowski			compatible = "qcom,pm8150b-gpio", "qcom,spmi-gpio";
116229d5bcaSVinod Koul			reg = <0xc000>;
117229d5bcaSVinod Koul			gpio-controller;
118b07bfd8eSKrzysztof Kozlowski			gpio-ranges = <&pm8150b_gpios 0 0 12>;
119229d5bcaSVinod Koul			#gpio-cells = <2>;
12061d2ca50SJonathan Marek			interrupt-controller;
12161d2ca50SJonathan Marek			#interrupt-cells = <2>;
122229d5bcaSVinod Koul		};
123229d5bcaSVinod Koul	};
124229d5bcaSVinod Koul
125229d5bcaSVinod Koul	pmic@3 {
126229d5bcaSVinod Koul		compatible = "qcom,pm8150b", "qcom,spmi-pmic";
127229d5bcaSVinod Koul		reg = <0x3 SPMI_USID>;
128229d5bcaSVinod Koul		#address-cells = <1>;
129229d5bcaSVinod Koul		#size-cells = <0>;
130efe9185cSDmitry Baryshkov
13115f50a48SKrzysztof Kozlowski		pm8150b_lpg: pwm {
132efe9185cSDmitry Baryshkov			compatible = "qcom,pm8150b-lpg";
133efe9185cSDmitry Baryshkov
134efe9185cSDmitry Baryshkov			#address-cells = <1>;
135efe9185cSDmitry Baryshkov			#size-cells = <0>;
136efe9185cSDmitry Baryshkov			#pwm-cells = <2>;
137efe9185cSDmitry Baryshkov
138efe9185cSDmitry Baryshkov			status = "disabled";
139efe9185cSDmitry Baryshkov		};
140229d5bcaSVinod Koul	};
141229d5bcaSVinod Koul};
142