Linux 6.9-rc6
[sfrench/cifs-2.6.git] / arch / arm64 / boot / dts / qcom / pmp8074.dtsi
1 // SPDX-License-Identifier: GPL-2.0-only OR BSD-3-Clause
2
3 #include <dt-bindings/spmi/spmi.h>
4 #include <dt-bindings/iio/qcom,spmi-vadc.h>
5
6 &spmi_bus {
7         pmic@0 {
8                 compatible = "qcom,pmp8074", "qcom,spmi-pmic";
9                 reg = <0x0 SPMI_USID>;
10                 #address-cells = <1>;
11                 #size-cells = <0>;
12
13                 pmp8074_adc: adc@3100 {
14                         compatible = "qcom,spmi-adc-rev2";
15                         reg = <0x3100>;
16                         interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
17                         #address-cells = <1>;
18                         #size-cells = <0>;
19                         #io-channel-cells = <1>;
20
21                         channel@0 {
22                                 reg = <ADC5_REF_GND>;
23                                 qcom,pre-scaling = <1 1>;
24                                 label = "ref_gnd";
25                         };
26
27                         channel@1 {
28                                 reg = <ADC5_1P25VREF>;
29                                 qcom,pre-scaling = <1 1>;
30                                 label = "vref_1p25";
31                         };
32
33                         channel@2 {
34                                 reg = <ADC5_VREF_VADC>;
35                                 qcom,pre-scaling = <1 1>;
36                                 label = "vref_vadc";
37                         };
38
39                         channel@6 {
40                                 reg = <ADC5_DIE_TEMP>;
41                                 qcom,pre-scaling = <1 1>;
42                                 label = "pmic_die";
43                         };
44
45                         channel@76 {
46                                 reg = <ADC5_XO_THERM_100K_PU>;
47                                 qcom,ratiometric;
48                                 qcom,hw-settle-time = <200>;
49                                 qcom,pre-scaling = <1 1>;
50                                 label = "xo_therm";
51                         };
52
53                         channel@77 {
54                                 reg = <ADC5_AMUX_THM1_100K_PU>;
55                                 qcom,ratiometric;
56                                 qcom,hw-settle-time = <200>;
57                                 qcom,pre-scaling = <1 1>;
58                                 label = "pa_therm1";
59                         };
60
61                         channel@78 {
62                                 reg = <ADC5_AMUX_THM2_100K_PU>;
63                                 qcom,ratiometric;
64                                 qcom,hw-settle-time = <200>;
65                                 qcom,pre-scaling = <1 1>;
66                                 label = "pa_therm2";
67                         };
68
69                         channel@79 {
70                                 reg = <ADC5_AMUX_THM3_100K_PU>;
71                                 qcom,ratiometric;
72                                 qcom,hw-settle-time = <200>;
73                                 qcom,pre-scaling = <1 1>;
74                                 label = "pa_therm3";
75                         };
76
77                         channel@131 {
78                                 reg = <ADC5_VPH_PWR>;
79                                 qcom,pre-scaling = <1 3>;
80                                 label = "vph_pwr";
81                         };
82                 };
83
84                 pmp8074_rtc: rtc@6000 {
85                         compatible = "qcom,pm8941-rtc";
86                         reg = <0x6000>, <0x6100>;
87                         reg-names = "rtc", "alarm";
88                         interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
89                         allow-set-time;
90                         status = "disabled";
91                 };
92
93                 pmp8074_gpios: gpio@c000 {
94                         compatible = "qcom,pmp8074-gpio", "qcom,spmi-gpio";
95                         reg = <0xc000>;
96                         gpio-controller;
97                         #gpio-cells = <2>;
98                         gpio-ranges = <&pmp8074_gpios 0 0 12>;
99                         interrupt-controller;
100                         #interrupt-cells = <2>;
101                 };
102         };
103
104         pmic@1 {
105                 compatible = "qcom,pmp8074", "qcom,spmi-pmic";
106                 reg = <0x1 SPMI_USID>;
107
108                 regulators {
109                         compatible = "qcom,pmp8074-regulators";
110
111                         s3: s3 {
112                                 regulator-name = "vdd_s3";
113                                 regulator-min-microvolt = <592000>;
114                                 regulator-max-microvolt = <1064000>;
115                                 regulator-always-on;
116                                 regulator-boot-on;
117                         };
118
119                         s4: s4 {
120                                 regulator-name = "vdd_s4";
121                                 regulator-min-microvolt = <712000>;
122                                 regulator-max-microvolt = <992000>;
123                                 regulator-always-on;
124                                 regulator-boot-on;
125                         };
126
127                         l11: l11 {
128                                 regulator-name = "l11";
129                                 regulator-min-microvolt = <1800000>;
130                                 regulator-max-microvolt = <3300000>;
131                         };
132                 };
133         };
134 };