GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm / boot / dts / qcom-pm8226.dtsi
1 // SPDX-License-Identifier: BSD-3-Clause
2 #include <dt-bindings/interrupt-controller/irq.h>
3 #include <dt-bindings/spmi/spmi.h>
4 #include <dt-bindings/iio/qcom,spmi-vadc.h>
5
6 &spmi_bus {
7         pm8226_0: pm8226@0 {
8                 compatible = "qcom,pm8226", "qcom,spmi-pmic";
9                 reg = <0x0 SPMI_USID>;
10                 #address-cells = <1>;
11                 #size-cells = <0>;
12
13                 pwrkey@800 {
14                         compatible = "qcom,pm8941-pwrkey";
15                         reg = <0x800>;
16                         interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
17                         debounce = <15625>;
18                         bias-pull-up;
19                 };
20
21                 smbb: charger@1000 {
22                         compatible = "qcom,pm8226-charger";
23                         reg = <0x1000>;
24                         interrupts = <0x0 0x10 7 IRQ_TYPE_EDGE_BOTH>,
25                                      <0x0 0x10 5 IRQ_TYPE_EDGE_BOTH>,
26                                      <0x0 0x10 4 IRQ_TYPE_EDGE_BOTH>,
27                                      <0x0 0x12 1 IRQ_TYPE_EDGE_BOTH>,
28                                      <0x0 0x12 0 IRQ_TYPE_EDGE_BOTH>,
29                                      <0x0 0x13 2 IRQ_TYPE_EDGE_BOTH>,
30                                      <0x0 0x13 1 IRQ_TYPE_EDGE_BOTH>,
31                                      <0x0 0x14 1 IRQ_TYPE_EDGE_BOTH>;
32                         interrupt-names = "chg-done",
33                                           "chg-fast",
34                                           "chg-trkl",
35                                           "bat-temp-ok",
36                                           "bat-present",
37                                           "chg-gone",
38                                           "usb-valid",
39                                           "dc-valid";
40
41                         chg_otg: otg-vbus { };
42                 };
43
44                 rtc@6000 {
45                         compatible = "qcom,pm8941-rtc";
46                         reg = <0x6000>, <0x6100>;
47                         reg-names = "rtc", "alarm";
48                         interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>;
49                 };
50
51                 pm8226_vadc: adc@3100 {
52                         compatible = "qcom,spmi-vadc";
53                         reg = <0x3100>;
54                         interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
55                         #address-cells = <1>;
56                         #size-cells = <0>;
57                         #io-channel-cells = <1>;
58
59                         adc-chan@7 {
60                                 reg = <VADC_VSYS>;
61                                 qcom,pre-scaling = <1 3>;
62                                 label = "vph_pwr";
63                         };
64                         adc-chan@8 {
65                                 reg = <VADC_DIE_TEMP>;
66                                 label = "die_temp";
67                         };
68                         adc-chan@9 {
69                                 reg = <VADC_REF_625MV>;
70                                 label = "ref_625mv";
71                         };
72                         adc-chan@a {
73                                 reg = <VADC_REF_1250MV>;
74                                 label = "ref_1250mv";
75                         };
76                         adc-chan@e {
77                                 reg = <VADC_GND_REF>;
78                         };
79                         adc-chan@f {
80                                 reg = <VADC_VDD_VADC>;
81                         };
82                 };
83
84                 pm8226_mpps: mpps@a000 {
85                         compatible = "qcom,pm8226-mpp", "qcom,spmi-mpp";
86                         reg = <0xa000>;
87                         gpio-controller;
88                         #gpio-cells = <2>;
89                         gpio-ranges = <&pm8226_mpps 0 0 8>;
90                         interrupt-controller;
91                         #interrupt-cells = <2>;
92                 };
93         };
94
95         pm8226_1: pm8226@1 {
96                 compatible = "qcom,pm8226", "qcom,spmi-pmic";
97                 reg = <0x1 SPMI_USID>;
98                 #address-cells = <1>;
99                 #size-cells = <0>;
100
101                 pm8226_spmi_regulators: pm8226-regulators {
102                         compatible = "qcom,pm8226-regulators";
103                 };
104
105                 pm8226_vib: vibrator@c000 {
106                         compatible = "qcom,pm8916-vib";
107                         reg = <0xc000>;
108                         status = "disabled";
109                 };
110         };
111 };