blob: ac08a09c64c28c2675b5d327469bfb2f0a4030e6 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2019, Linaro Limited
5 */
6
7#include <dt-bindings/iio/qcom,spmi-vadc.h>
8#include <dt-bindings/interrupt-controller/irq.h>
9#include <dt-bindings/spmi/spmi.h>
10
11/ {
12 thermal-zones {
13 pm8150l-thermal {
14 polling-delay-passive = <100>;
15 polling-delay = <0>;
16
17 thermal-sensors = <&pm8150l_temp>;
18
19 trips {
20 trip0 {
21 temperature = <95000>;
22 hysteresis = <0>;
23 type = "passive";
24 };
25
26 trip1 {
27 temperature = <115000>;
28 hysteresis = <0>;
29 type = "hot";
30 };
31
32 trip2 {
33 temperature = <145000>;
34 hysteresis = <0>;
35 type = "critical";
36 };
37 };
38 };
39 };
40};
41
42&spmi_bus {
43 pmic@4 {
44 compatible = "qcom,pm8150l", "qcom,spmi-pmic";
45 reg = <0x4 SPMI_USID>;
46 #address-cells = <1>;
47 #size-cells = <0>;
48
49 pon@800 {
50 compatible = "qcom,pm8916-pon";
51 reg = <0x0800>;
52
53 status = "disabled";
54 };
55
56 pm8150l_temp: temp-alarm@2400 {
57 compatible = "qcom,spmi-temp-alarm";
58 reg = <0x2400>;
59 interrupts = <0x4 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
60 io-channels = <&pm8150l_adc ADC5_DIE_TEMP>;
61 io-channel-names = "thermal";
62 #thermal-sensor-cells = <0>;
63 };
64
65 pm8150l_adc: adc@3100 {
66 compatible = "qcom,spmi-adc5";
67 reg = <0x3100>;
68 #address-cells = <1>;
69 #size-cells = <0>;
70 #io-channel-cells = <1>;
71 interrupts = <0x4 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
72
73 channel@0 {
74 reg = <ADC5_REF_GND>;
75 qcom,pre-scaling = <1 1>;
76 label = "ref_gnd";
77 };
78
79 channel@1 {
80 reg = <ADC5_1P25VREF>;
81 qcom,pre-scaling = <1 1>;
82 label = "vref_1p25";
83 };
84
85 channel@6 {
86 reg = <ADC5_DIE_TEMP>;
87 qcom,pre-scaling = <1 1>;
88 label = "die_temp";
89 };
90 };
91
92 pm8150l_adc_tm: adc-tm@3500 {
93 compatible = "qcom,spmi-adc-tm5";
94 reg = <0x3500>;
95 interrupts = <0x4 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
96 #thermal-sensor-cells = <1>;
97 #address-cells = <1>;
98 #size-cells = <0>;
99 status = "disabled";
100 };
101
102 pm8150l_gpios: gpio@c000 {
103 compatible = "qcom,pm8150l-gpio", "qcom,spmi-gpio";
104 reg = <0xc000>;
105 gpio-controller;
106 gpio-ranges = <&pm8150l_gpios 0 0 12>;
107 #gpio-cells = <2>;
108 interrupt-controller;
109 #interrupt-cells = <2>;
110 };
111 };
112
113 pmic@5 {
114 compatible = "qcom,pm8150l", "qcom,spmi-pmic";
115 reg = <0x5 SPMI_USID>;
116 #address-cells = <1>;
117 #size-cells = <0>;
118
119 pm8150l_flash: led-controller@d300 {
120 compatible = "qcom,pm8150l-flash-led", "qcom,spmi-flash-led";
121 reg = <0xd300>;
122 status = "disabled";
123 };
124
125 pm8150l_lpg: pwm {
126 compatible = "qcom,pm8150l-lpg";
127
128 #address-cells = <1>;
129 #size-cells = <0>;
130 #pwm-cells = <2>;
131
132 status = "disabled";
133 };
134
135 pm8150l_wled: leds@d800 {
136 compatible = "qcom,pm8150l-wled";
137 reg = <0xd800>, <0xd900>;
138 interrupts = <0x5 0xd8 0x1 IRQ_TYPE_EDGE_RISING>,
139 <0x5 0xd8 0x2 IRQ_TYPE_EDGE_RISING>;
140 interrupt-names = "ovp", "short";
141 label = "backlight";
142
143 status = "disabled";
144 };
145 };
146};