xref: /openbmc/linux/scripts/dtc/include-prefixes/arm64/qcom/pm6150l.dtsi (revision 060f35a317ef09101b128f399dce7ed13d019461)
1a727ec12SKiran Gunda// SPDX-License-Identifier: BSD-3-Clause
25d9bf210SKonrad Dybcio/*
35d9bf210SKonrad Dybcio * Copyright (c) 2019, The Linux Foundation. All rights reserved.
45d9bf210SKonrad Dybcio */
5a727ec12SKiran Gunda
6a9a5ca5cSKonrad Dybcio#include <dt-bindings/iio/qcom,spmi-vadc.h>
7a727ec12SKiran Gunda#include <dt-bindings/interrupt-controller/irq.h>
8a727ec12SKiran Gunda#include <dt-bindings/spmi/spmi.h>
9a727ec12SKiran Gunda
10ce1b5eb7SLuca Weiss/ {
11ce1b5eb7SLuca Weiss	thermal-zones {
12ce1b5eb7SLuca Weiss		pm6150l-thermal {
13ce1b5eb7SLuca Weiss			thermal-sensors = <&pm6150l_temp>;
14ce1b5eb7SLuca Weiss
15ce1b5eb7SLuca Weiss			trips {
16ce1b5eb7SLuca Weiss				trip0 {
17ce1b5eb7SLuca Weiss					temperature = <95000>;
18ce1b5eb7SLuca Weiss					hysteresis = <0>;
19ce1b5eb7SLuca Weiss					type = "passive";
20ce1b5eb7SLuca Weiss				};
21ce1b5eb7SLuca Weiss
22ce1b5eb7SLuca Weiss				trip1 {
23ce1b5eb7SLuca Weiss					temperature = <115000>;
24ce1b5eb7SLuca Weiss					hysteresis = <0>;
25ce1b5eb7SLuca Weiss					type = "hot";
26ce1b5eb7SLuca Weiss				};
27ce1b5eb7SLuca Weiss
28ce1b5eb7SLuca Weiss				trip2 {
29ce1b5eb7SLuca Weiss					temperature = <125000>;
30ce1b5eb7SLuca Weiss					hysteresis = <0>;
31ce1b5eb7SLuca Weiss					type = "critical";
32ce1b5eb7SLuca Weiss				};
33ce1b5eb7SLuca Weiss			};
34ce1b5eb7SLuca Weiss		};
35ce1b5eb7SLuca Weiss	};
36ce1b5eb7SLuca Weiss};
37ce1b5eb7SLuca Weiss
38a727ec12SKiran Gunda&spmi_bus {
39a727ec12SKiran Gunda	pm6150l_lsid4: pmic@4 {
40a727ec12SKiran Gunda		compatible = "qcom,pm6150l", "qcom,spmi-pmic";
41a727ec12SKiran Gunda		reg = <0x4 SPMI_USID>;
42a727ec12SKiran Gunda		#address-cells = <1>;
43a727ec12SKiran Gunda		#size-cells = <0>;
44a727ec12SKiran Gunda
45ce1b5eb7SLuca Weiss		pm6150l_temp: temp-alarm@2400 {
46ce1b5eb7SLuca Weiss			compatible = "qcom,spmi-temp-alarm";
47ce1b5eb7SLuca Weiss			reg = <0x2400>;
48ce1b5eb7SLuca Weiss			interrupts = <0x4 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
49ce1b5eb7SLuca Weiss			#thermal-sensor-cells = <0>;
50ce1b5eb7SLuca Weiss		};
51ce1b5eb7SLuca Weiss
527ee3eae8SJishnu Prakash		pm6150l_adc: adc@3100 {
537ee3eae8SJishnu Prakash			compatible = "qcom,spmi-adc5";
547ee3eae8SJishnu Prakash			reg = <0x3100>;
557ee3eae8SJishnu Prakash			interrupts = <0x4 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
567ee3eae8SJishnu Prakash			#address-cells = <1>;
577ee3eae8SJishnu Prakash			#size-cells = <0>;
587ee3eae8SJishnu Prakash			#io-channel-cells = <1>;
597ee3eae8SJishnu Prakash
60*41c18552SMarijn Suijten			channel@0 {
61ed3163b0SLuca Weiss				reg = <ADC5_REF_GND>;
62ed3163b0SLuca Weiss				qcom,pre-scaling = <1 1>;
63ed3163b0SLuca Weiss				label = "ref_gnd";
64ed3163b0SLuca Weiss			};
65ed3163b0SLuca Weiss
66*41c18552SMarijn Suijten			channel@1 {
67ed3163b0SLuca Weiss				reg = <ADC5_1P25VREF>;
68ed3163b0SLuca Weiss				qcom,pre-scaling = <1 1>;
69ed3163b0SLuca Weiss				label = "vref_1p25";
70ed3163b0SLuca Weiss			};
71ed3163b0SLuca Weiss
72*41c18552SMarijn Suijten			channel@6 {
737ee3eae8SJishnu Prakash				reg = <ADC5_DIE_TEMP>;
74ed3163b0SLuca Weiss				qcom,pre-scaling = <1 1>;
757ee3eae8SJishnu Prakash				label = "die_temp";
767ee3eae8SJishnu Prakash			};
77ed3163b0SLuca Weiss
78*41c18552SMarijn Suijten			channel@83 {
79ed3163b0SLuca Weiss				reg = <ADC5_VPH_PWR>;
80ed3163b0SLuca Weiss				qcom,pre-scaling = <1 3>;
81ed3163b0SLuca Weiss				label = "vph_pwr";
82ed3163b0SLuca Weiss			};
837ee3eae8SJishnu Prakash		};
847ee3eae8SJishnu Prakash
857ee3eae8SJishnu Prakash		pm6150l_adc_tm: adc-tm@3500 {
867ee3eae8SJishnu Prakash			compatible = "qcom,spmi-adc-tm5";
877ee3eae8SJishnu Prakash			reg = <0x3500>;
887ee3eae8SJishnu Prakash			interrupts = <0x4 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
897ee3eae8SJishnu Prakash			#thermal-sensor-cells = <1>;
907ee3eae8SJishnu Prakash			#address-cells = <1>;
917ee3eae8SJishnu Prakash			#size-cells = <0>;
927ee3eae8SJishnu Prakash			status = "disabled";
937ee3eae8SJishnu Prakash		};
947ee3eae8SJishnu Prakash
95ea25d61bSMarijn Suijten		pm6150l_gpios: gpio@c000 {
96a727ec12SKiran Gunda			compatible = "qcom,pm6150l-gpio", "qcom,spmi-gpio";
97a727ec12SKiran Gunda			reg = <0xc000>;
98a727ec12SKiran Gunda			gpio-controller;
99ea25d61bSMarijn Suijten			gpio-ranges = <&pm6150l_gpios 0 0 12>;
100a727ec12SKiran Gunda			#gpio-cells = <2>;
101a727ec12SKiran Gunda			interrupt-controller;
102a727ec12SKiran Gunda			#interrupt-cells = <2>;
103a727ec12SKiran Gunda		};
104a727ec12SKiran Gunda	};
105a727ec12SKiran Gunda
106a727ec12SKiran Gunda	pm6150l_lsid5: pmic@5 {
107a727ec12SKiran Gunda		compatible = "qcom,pm6150l", "qcom,spmi-pmic";
108a727ec12SKiran Gunda		reg = <0x5 SPMI_USID>;
109a727ec12SKiran Gunda		#address-cells = <1>;
110a727ec12SKiran Gunda		#size-cells = <0>;
111fe508cedSLuca Weiss
112e48b2f1fSLuca Weiss		pm6150l_flash: led-controller@d300 {
113e48b2f1fSLuca Weiss			compatible = "qcom,pm6150l-flash-led", "qcom,spmi-flash-led";
114e48b2f1fSLuca Weiss			reg = <0xd300>;
115e48b2f1fSLuca Weiss			status = "disabled";
116e48b2f1fSLuca Weiss		};
117e48b2f1fSLuca Weiss
118fe508cedSLuca Weiss		pm6150l_wled: leds@d800 {
119fe508cedSLuca Weiss			compatible = "qcom,pm6150l-wled";
120fe508cedSLuca Weiss			reg = <0xd800>, <0xd900>;
1217e1f024eSKonrad Dybcio			interrupts = <0x5 0xd8 0x1 IRQ_TYPE_EDGE_RISING>,
1227e1f024eSKonrad Dybcio				     <0x5 0xd8 0x2 IRQ_TYPE_EDGE_RISING>;
1237e1f024eSKonrad Dybcio			interrupt-names = "ovp", "short";
124fe508cedSLuca Weiss			label = "backlight";
125fe508cedSLuca Weiss
126fe508cedSLuca Weiss			status = "disabled";
127fe508cedSLuca Weiss		};
128a727ec12SKiran Gunda	};
129a727ec12SKiran Gunda};
130