xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/pm8150b.dtsi (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
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
164c5a410dSDmitry Baryshkov			thermal-sensors = <&pm8150b_temp>;
174c5a410dSDmitry Baryshkov
184c5a410dSDmitry Baryshkov			trips {
194c5a410dSDmitry Baryshkov				trip0 {
204c5a410dSDmitry Baryshkov					temperature = <95000>;
214c5a410dSDmitry Baryshkov					hysteresis = <0>;
224c5a410dSDmitry Baryshkov					type = "passive";
234c5a410dSDmitry Baryshkov				};
244c5a410dSDmitry Baryshkov
254c5a410dSDmitry Baryshkov				trip1 {
264c5a410dSDmitry Baryshkov					temperature = <115000>;
274c5a410dSDmitry Baryshkov					hysteresis = <0>;
284c5a410dSDmitry Baryshkov					type = "hot";
294c5a410dSDmitry Baryshkov				};
304c5a410dSDmitry Baryshkov
314c5a410dSDmitry Baryshkov				trip2 {
324c5a410dSDmitry Baryshkov					temperature = <145000>;
334c5a410dSDmitry Baryshkov					hysteresis = <0>;
344c5a410dSDmitry Baryshkov					type = "critical";
354c5a410dSDmitry Baryshkov				};
364c5a410dSDmitry Baryshkov			};
374c5a410dSDmitry Baryshkov		};
384c5a410dSDmitry Baryshkov	};
394c5a410dSDmitry Baryshkov};
404c5a410dSDmitry Baryshkov
41229d5bcaSVinod Koul&spmi_bus {
42229d5bcaSVinod Koul	pmic@2 {
43229d5bcaSVinod Koul		compatible = "qcom,pm8150b", "qcom,spmi-pmic";
44229d5bcaSVinod Koul		reg = <0x2 SPMI_USID>;
45229d5bcaSVinod Koul		#address-cells = <1>;
46229d5bcaSVinod Koul		#size-cells = <0>;
47229d5bcaSVinod Koul
4887783dbeSKrzysztof Kozlowski		pon@800 {
49229d5bcaSVinod Koul			compatible = "qcom,pm8916-pon";
50229d5bcaSVinod Koul			reg = <0x0800>;
51229d5bcaSVinod Koul
52229d5bcaSVinod Koul			status = "disabled";
53229d5bcaSVinod Koul		};
54229d5bcaSVinod Koul
550c9a86fbSLuca Weiss		pm8150b_vbus: usb-vbus-regulator@1100 {
56f70c6dc0SWesley Cheng			compatible = "qcom,pm8150b-vbus-reg";
57f70c6dc0SWesley Cheng			status = "disabled";
58f70c6dc0SWesley Cheng			reg = <0x1100>;
59f70c6dc0SWesley Cheng		};
60f70c6dc0SWesley Cheng
61*5a053951SBryan O'Donoghue		pm8150b_typec: typec@1500 {
62*5a053951SBryan O'Donoghue			compatible = "qcom,pm8150b-typec";
63*5a053951SBryan O'Donoghue			status = "disabled";
64*5a053951SBryan O'Donoghue			reg = <0x1500>,
65*5a053951SBryan O'Donoghue			      <0x1700>;
66*5a053951SBryan O'Donoghue			interrupts = <0x2 0x15 0x00 IRQ_TYPE_EDGE_RISING>,
67*5a053951SBryan O'Donoghue				     <0x2 0x15 0x01 IRQ_TYPE_EDGE_BOTH>,
68*5a053951SBryan O'Donoghue				     <0x2 0x15 0x02 IRQ_TYPE_EDGE_RISING>,
69*5a053951SBryan O'Donoghue				     <0x2 0x15 0x03 IRQ_TYPE_EDGE_BOTH>,
70*5a053951SBryan O'Donoghue				     <0x2 0x15 0x04 IRQ_TYPE_EDGE_RISING>,
71*5a053951SBryan O'Donoghue				     <0x2 0x15 0x05 IRQ_TYPE_EDGE_RISING>,
72*5a053951SBryan O'Donoghue				     <0x2 0x15 0x06 IRQ_TYPE_EDGE_BOTH>,
73*5a053951SBryan O'Donoghue				     <0x2 0x15 0x07 IRQ_TYPE_EDGE_RISING>,
74*5a053951SBryan O'Donoghue				     <0x2 0x17 0x00 IRQ_TYPE_EDGE_RISING>,
75*5a053951SBryan O'Donoghue				     <0x2 0x17 0x01 IRQ_TYPE_EDGE_RISING>,
76*5a053951SBryan O'Donoghue				     <0x2 0x17 0x02 IRQ_TYPE_EDGE_RISING>,
77*5a053951SBryan O'Donoghue				     <0x2 0x17 0x03 IRQ_TYPE_EDGE_RISING>,
78*5a053951SBryan O'Donoghue				     <0x2 0x17 0x04 IRQ_TYPE_EDGE_RISING>,
79*5a053951SBryan O'Donoghue				     <0x2 0x17 0x05 IRQ_TYPE_EDGE_RISING>,
80*5a053951SBryan O'Donoghue				     <0x2 0x17 0x06 IRQ_TYPE_EDGE_RISING>,
81*5a053951SBryan O'Donoghue				     <0x2 0x17 0x07 IRQ_TYPE_EDGE_RISING>;
82*5a053951SBryan O'Donoghue			interrupt-names = "or-rid-detect-change",
83*5a053951SBryan O'Donoghue					  "vpd-detect",
84*5a053951SBryan O'Donoghue					  "cc-state-change",
85*5a053951SBryan O'Donoghue					  "vconn-oc",
86*5a053951SBryan O'Donoghue					  "vbus-change",
87*5a053951SBryan O'Donoghue					  "attach-detach",
88*5a053951SBryan O'Donoghue					  "legacy-cable-detect",
89*5a053951SBryan O'Donoghue					  "try-snk-src-detect",
90*5a053951SBryan O'Donoghue					  "sig-tx",
91*5a053951SBryan O'Donoghue					  "sig-rx",
92*5a053951SBryan O'Donoghue					  "msg-tx",
93*5a053951SBryan O'Donoghue					  "msg-rx",
94*5a053951SBryan O'Donoghue					  "msg-tx-failed",
95*5a053951SBryan O'Donoghue					  "msg-tx-discarded",
96*5a053951SBryan O'Donoghue					  "msg-rx-discarded",
97*5a053951SBryan O'Donoghue					  "fr-swap";
98*5a053951SBryan O'Donoghue			vdd-vbus-supply = <&pm8150b_vbus>;
99*5a053951SBryan O'Donoghue		};
100*5a053951SBryan O'Donoghue
1014c5a410dSDmitry Baryshkov		pm8150b_temp: temp-alarm@2400 {
1024c5a410dSDmitry Baryshkov			compatible = "qcom,spmi-temp-alarm";
1034c5a410dSDmitry Baryshkov			reg = <0x2400>;
1044c5a410dSDmitry Baryshkov			interrupts = <0x2 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
1054c5a410dSDmitry Baryshkov			io-channels = <&pm8150b_adc ADC5_DIE_TEMP>;
1064c5a410dSDmitry Baryshkov			io-channel-names = "thermal";
1074c5a410dSDmitry Baryshkov			#thermal-sensor-cells = <0>;
1084c5a410dSDmitry Baryshkov		};
1094c5a410dSDmitry Baryshkov
1104c5a410dSDmitry Baryshkov		pm8150b_adc: adc@3100 {
111229d5bcaSVinod Koul			compatible = "qcom,spmi-adc5";
112229d5bcaSVinod Koul			reg = <0x3100>;
113229d5bcaSVinod Koul			#address-cells = <1>;
114229d5bcaSVinod Koul			#size-cells = <0>;
115229d5bcaSVinod Koul			#io-channel-cells = <1>;
116229d5bcaSVinod Koul			interrupts = <0x2 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
117229d5bcaSVinod Koul
11841c18552SMarijn Suijten			channel@0 {
119229d5bcaSVinod Koul				reg = <ADC5_REF_GND>;
120229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
121229d5bcaSVinod Koul				label = "ref_gnd";
122229d5bcaSVinod Koul			};
123229d5bcaSVinod Koul
12441c18552SMarijn Suijten			channel@1 {
125229d5bcaSVinod Koul				reg = <ADC5_1P25VREF>;
126229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
127229d5bcaSVinod Koul				label = "vref_1p25";
128229d5bcaSVinod Koul			};
129229d5bcaSVinod Koul
13041c18552SMarijn Suijten			channel@6 {
131229d5bcaSVinod Koul				reg = <ADC5_DIE_TEMP>;
132229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
133229d5bcaSVinod Koul				label = "die_temp";
134229d5bcaSVinod Koul			};
135229d5bcaSVinod Koul
13641c18552SMarijn Suijten			channel@9 {
137229d5bcaSVinod Koul				reg = <ADC5_CHG_TEMP>;
138229d5bcaSVinod Koul				qcom,pre-scaling = <1 1>;
139229d5bcaSVinod Koul				label = "chg_temp";
140229d5bcaSVinod Koul			};
141229d5bcaSVinod Koul		};
142229d5bcaSVinod Koul
14328a7eb65SDmitry Baryshkov		pm8150b_adc_tm: adc-tm@3500 {
14428a7eb65SDmitry Baryshkov			compatible = "qcom,spmi-adc-tm5";
14528a7eb65SDmitry Baryshkov			reg = <0x3500>;
14628a7eb65SDmitry Baryshkov			interrupts = <0x2 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
14728a7eb65SDmitry Baryshkov			#thermal-sensor-cells = <1>;
14828a7eb65SDmitry Baryshkov			#address-cells = <1>;
14928a7eb65SDmitry Baryshkov			#size-cells = <0>;
15028a7eb65SDmitry Baryshkov			status = "disabled";
15128a7eb65SDmitry Baryshkov		};
15228a7eb65SDmitry Baryshkov
153229d5bcaSVinod Koul		pm8150b_gpios: gpio@c000 {
154019102a9SKrzysztof Kozlowski			compatible = "qcom,pm8150b-gpio", "qcom,spmi-gpio";
155229d5bcaSVinod Koul			reg = <0xc000>;
156229d5bcaSVinod Koul			gpio-controller;
157b07bfd8eSKrzysztof Kozlowski			gpio-ranges = <&pm8150b_gpios 0 0 12>;
158229d5bcaSVinod Koul			#gpio-cells = <2>;
15961d2ca50SJonathan Marek			interrupt-controller;
16061d2ca50SJonathan Marek			#interrupt-cells = <2>;
161229d5bcaSVinod Koul		};
162229d5bcaSVinod Koul	};
163229d5bcaSVinod Koul
164229d5bcaSVinod Koul	pmic@3 {
165229d5bcaSVinod Koul		compatible = "qcom,pm8150b", "qcom,spmi-pmic";
166229d5bcaSVinod Koul		reg = <0x3 SPMI_USID>;
167229d5bcaSVinod Koul		#address-cells = <1>;
168229d5bcaSVinod Koul		#size-cells = <0>;
169efe9185cSDmitry Baryshkov
17015f50a48SKrzysztof Kozlowski		pm8150b_lpg: pwm {
171efe9185cSDmitry Baryshkov			compatible = "qcom,pm8150b-lpg";
172efe9185cSDmitry Baryshkov
173efe9185cSDmitry Baryshkov			#address-cells = <1>;
174efe9185cSDmitry Baryshkov			#size-cells = <0>;
175efe9185cSDmitry Baryshkov			#pwm-cells = <2>;
176efe9185cSDmitry Baryshkov
177efe9185cSDmitry Baryshkov			status = "disabled";
178efe9185cSDmitry Baryshkov		};
179229d5bcaSVinod Koul	};
180229d5bcaSVinod Koul};
181