blob: a74a7ff660d2b1be0df0dc26d79e1921a3935f14 [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/input/input.h>
8#include <dt-bindings/interrupt-controller/irq.h>
9#include <dt-bindings/spmi/spmi.h>
10#include <dt-bindings/iio/qcom,spmi-vadc.h>
11
12/ {
13 thermal-zones {
14 pm8150-thermal {
15 polling-delay-passive = <100>;
Tom Rini53633a82024-02-29 12:33:36 -050016
17 thermal-sensors = <&pm8150_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 pm8150_0: pmic@0 {
44 compatible = "qcom,pm8150", "qcom,spmi-pmic";
45 reg = <0x0 SPMI_USID>;
46 #address-cells = <1>;
47 #size-cells = <0>;
48
49 pon: pon@800 {
50 compatible = "qcom,pm8998-pon";
51 reg = <0x0800>;
52 mode-bootloader = <0x2>;
53 mode-recovery = <0x1>;
54
55 pon_pwrkey: pwrkey {
56 compatible = "qcom,pm8941-pwrkey";
57 interrupts = <0x0 0x8 0x0 IRQ_TYPE_EDGE_BOTH>;
58 debounce = <15625>;
59 bias-pull-up;
60 linux,code = <KEY_POWER>;
61
62 status = "disabled";
63 };
64
65 pon_resin: resin {
66 compatible = "qcom,pm8941-resin";
67 interrupts = <0x0 0x8 0x1 IRQ_TYPE_EDGE_BOTH>;
68 debounce = <15625>;
69 bias-pull-up;
70
71 status = "disabled";
72 };
73 };
74
75 pm8150_temp: temp-alarm@2400 {
76 compatible = "qcom,spmi-temp-alarm";
77 reg = <0x2400>;
78 interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
79 io-channels = <&pm8150_adc ADC5_DIE_TEMP>;
80 io-channel-names = "thermal";
81 #thermal-sensor-cells = <0>;
82 };
83
84 pm8150_adc: adc@3100 {
85 compatible = "qcom,spmi-adc5";
86 reg = <0x3100>;
87 #address-cells = <1>;
88 #size-cells = <0>;
89 #io-channel-cells = <1>;
90 interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
91
92 channel@0 {
93 reg = <ADC5_REF_GND>;
94 qcom,pre-scaling = <1 1>;
95 label = "ref_gnd";
96 };
97
98 channel@1 {
99 reg = <ADC5_1P25VREF>;
100 qcom,pre-scaling = <1 1>;
101 label = "vref_1p25";
102 };
103
104 channel@6 {
105 reg = <ADC5_DIE_TEMP>;
106 qcom,pre-scaling = <1 1>;
107 label = "die_temp";
108 };
109 };
110
111 pm8150_adc_tm: adc-tm@3500 {
112 compatible = "qcom,spmi-adc-tm5";
113 reg = <0x3500>;
114 interrupts = <0x0 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
115 #thermal-sensor-cells = <1>;
116 #address-cells = <1>;
117 #size-cells = <0>;
118 status = "disabled";
119 };
120
121 rtc@6000 {
122 compatible = "qcom,pm8941-rtc";
123 reg = <0x6000>, <0x6100>;
124 reg-names = "rtc", "alarm";
125 interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
126 };
127
128 pm8150_gpios: gpio@c000 {
129 compatible = "qcom,pm8150-gpio", "qcom,spmi-gpio";
130 reg = <0xc000>;
131 gpio-controller;
132 gpio-ranges = <&pm8150_gpios 0 0 10>;
133 #gpio-cells = <2>;
134 interrupt-controller;
135 #interrupt-cells = <2>;
136 };
137 };
138
139 pmic@1 {
140 compatible = "qcom,pm8150", "qcom,spmi-pmic";
141 reg = <0x1 SPMI_USID>;
142 #address-cells = <1>;
143 #size-cells = <0>;
144 };
145};