Merge tag 'dt-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / qcom / pm8994.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 #include <dt-bindings/iio/qcom,spmi-vadc.h>
3 #include <dt-bindings/input/linux-event-codes.h>
4 #include <dt-bindings/interrupt-controller/irq.h>
5 #include <dt-bindings/spmi/spmi.h>
6
7 / {
8         thermal-zones {
9                 pm8994-thermal {
10                         polling-delay-passive = <250>;
11                         polling-delay = <1000>;
12
13                         thermal-sensors = <&pm8994_temp>;
14
15                         trips {
16                                 pm8994_alert0: pm8994-alert0 {
17                                         temperature = <95000>;
18                                         hysteresis = <2000>;
19                                         type = "passive";
20                                 };
21                                 pm8994_crit: pm8994-crit {
22                                         temperature = <125000>;
23                                         hysteresis = <2000>;
24                                         type = "critical";
25                                 };
26                         };
27                 };
28         };
29 };
30
31 &spmi_bus {
32
33         pmic@0 {
34                 compatible = "qcom,pm8994", "qcom,spmi-pmic";
35                 reg = <0x0 SPMI_USID>;
36                 #address-cells = <1>;
37                 #size-cells = <0>;
38
39                 rtc@6000 {
40                         compatible = "qcom,pm8941-rtc";
41                         reg = <0x6000>, <0x6100>;
42                         reg-names = "rtc", "alarm";
43                         interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>;
44                 };
45
46                 pm8994_pon: pon@800 {
47                         compatible = "qcom,pm8916-pon";
48                         reg = <0x800>;
49                         mode-bootloader = <0x2>;
50                         mode-recovery = <0x1>;
51
52                         pwrkey {
53                                 compatible = "qcom,pm8941-pwrkey";
54                                 interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
55                                 debounce = <15625>;
56                                 bias-pull-up;
57                                 linux,code = <KEY_POWER>;
58                         };
59
60                         pm8994_resin: resin {
61                                 compatible = "qcom,pm8941-resin";
62                                 interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
63                                 debounce = <15625>;
64                                 bias-pull-up;
65                                 status = "disabled";
66                         };
67                 };
68
69                 pm8994_temp: temp-alarm@2400 {
70                         compatible = "qcom,spmi-temp-alarm";
71                         reg = <0x2400>;
72                         interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_RISING>;
73                         io-channels = <&pm8994_vadc VADC_DIE_TEMP>;
74                         io-channel-names = "thermal";
75                         #thermal-sensor-cells = <0>;
76                 };
77
78                 pm8994_vadc: adc@3100 {
79                         compatible = "qcom,spmi-vadc";
80                         reg = <0x3100>;
81                         interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
82                         #address-cells = <1>;
83                         #size-cells = <0>;
84                         #io-channel-cells = <1>;
85
86                         adc-chan@7 {
87                                 reg = <VADC_VSYS>;
88                                 qcom,pre-scaling = <1 3>;
89                                 label = "vph_pwr";
90                         };
91                         adc-chan@8 {
92                                 reg = <VADC_DIE_TEMP>;
93                                 label = "die_temp";
94                         };
95                         adc-chan@9 {
96                                 reg = <VADC_REF_625MV>;
97                                 label = "ref_625mv";
98                         };
99                         adc-chan@a {
100                                 reg = <VADC_REF_1250MV>;
101                                 label = "ref_1250mv";
102                         };
103                         adc-chan@e {
104                                 reg = <VADC_GND_REF>;
105                         };
106                         adc-chan@f {
107                                 reg = <VADC_VDD_VADC>;
108                         };
109                 };
110
111                 pm8994_gpios: gpios@c000 {
112                         compatible = "qcom,pm8994-gpio", "qcom,spmi-gpio";
113                         reg = <0xc000>;
114                         gpio-controller;
115                         gpio-ranges = <&pm8994_gpios 0 0 22>;
116                         #gpio-cells = <2>;
117                         interrupt-controller;
118                         #interrupt-cells = <2>;
119                 };
120
121                 pm8994_mpps: mpps@a000 {
122                         compatible = "qcom,pm8994-mpp";
123                         reg = <0xa000>;
124                         gpio-controller;
125                         #gpio-cells = <2>;
126                         interrupts = <0 0xa0 0 IRQ_TYPE_NONE>,
127                                      <0 0xa1 0 IRQ_TYPE_NONE>,
128                                      <0 0xa2 0 IRQ_TYPE_NONE>,
129                                      <0 0xa3 0 IRQ_TYPE_NONE>,
130                                      <0 0xa4 0 IRQ_TYPE_NONE>,
131                                      <0 0xa5 0 IRQ_TYPE_NONE>,
132                                      <0 0xa6 0 IRQ_TYPE_NONE>,
133                                      <0 0xa7 0 IRQ_TYPE_NONE>;
134                 };
135         };
136
137         pmic@1 {
138                 compatible = "qcom,pm8994", "qcom,spmi-pmic";
139                 reg = <0x1 SPMI_USID>;
140                 #address-cells = <1>;
141                 #size-cells = <0>;
142
143                 pm8994_spmi_regulators: regulators {
144                         compatible = "qcom,pm8994-regulators";
145                 };
146         };
147 };