GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm64 / boot / dts / qcom / sc8280xp-pmics.dtsi
1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3  * Copyright (c) 2022, Linaro Limited
4  */
5
6 #include <dt-bindings/input/input.h>
7 #include <dt-bindings/interrupt-controller/irq.h>
8 #include <dt-bindings/spmi/spmi.h>
9
10 &spmi_bus {
11         pmk8280: pmic@0 {
12                 compatible = "qcom,pmk8350", "qcom,spmi-pmic";
13                 reg = <0x0 SPMI_USID>;
14                 #address-cells = <1>;
15                 #size-cells = <0>;
16
17                 pmk8280_pon: pon@1300 {
18                         compatible = "qcom,pmk8350-pon";
19                         reg = <0x1300>, <0x800>;
20                         reg-names = "hlos", "pbs";
21
22                         pmk8280_pon_pwrkey: pwrkey {
23                                 compatible = "qcom,pmk8350-pwrkey";
24                                 interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
25                                 linux,code = <KEY_POWER>;
26                                 status = "disabled";
27                         };
28                 };
29         };
30
31         pmc8280_1: pmic@1 {
32                 compatible = "qcom,pm8350", "qcom,spmi-pmic";
33                 reg = <0x1 SPMI_USID>;
34                 #address-cells = <1>;
35                 #size-cells = <0>;
36
37                 pmc8280_1_gpios: gpio@8800 {
38                         compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
39                         reg = <0x8800>;
40                         gpio-controller;
41                         gpio-ranges = <&pmc8280_1_gpios 0 0 10>;
42                         #gpio-cells = <2>;
43                         interrupt-controller;
44                         #interrupt-cells = <2>;
45                 };
46         };
47
48         pmc8280c: pmic@2 {
49                 compatible = "qcom,pm8350c", "qcom,spmi-pmic";
50                 reg = <0x2 SPMI_USID>;
51                 #address-cells = <1>;
52                 #size-cells = <0>;
53
54                 pmc8280c_gpios: gpio@8800 {
55                         compatible = "qcom,pm8350c-gpio", "qcom,spmi-gpio";
56                         reg = <0x8800>;
57                         gpio-controller;
58                         gpio-ranges = <&pmc8280c_gpios 0 0 9>;
59                         #gpio-cells = <2>;
60                         interrupt-controller;
61                         #interrupt-cells = <2>;
62                 };
63
64                 pmc8280c_lpg: pwm {
65                         compatible = "qcom,pm8350c-pwm";
66
67                         #address-cells = <1>;
68                         #size-cells = <0>;
69
70                         #pwm-cells = <2>;
71
72                         status = "disabled";
73                 };
74         };
75
76         pmc8280_2: pmic@3 {
77                 compatible = "qcom,pm8350", "qcom,spmi-pmic";
78                 reg = <0x3 SPMI_USID>;
79                 #address-cells = <1>;
80                 #size-cells = <0>;
81
82                 pmc8280_2_gpios: gpio@8800 {
83                         compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
84                         reg = <0x8800>;
85                         gpio-controller;
86                         gpio-ranges = <&pmc8280_2_gpios 0 0 10>;
87                         #gpio-cells = <2>;
88                         interrupt-controller;
89                         #interrupt-cells = <2>;
90                 };
91         };
92
93         pmr735a: pmic@4 {
94                 compatible = "qcom,pmr735a", "qcom,spmi-pmic";
95                 reg = <0x4 SPMI_USID>;
96                 #address-cells = <1>;
97                 #size-cells = <0>;
98
99                 pmr735a_gpios: gpio@8800 {
100                         compatible = "qcom,pmr735a-gpio", "qcom,spmi-gpio";
101                         reg = <0x8800>;
102                         gpio-controller;
103                         gpio-ranges = <&pmr735a_gpios 0 0 4>;
104                         #gpio-cells = <2>;
105                         interrupt-controller;
106                         #interrupt-cells = <2>;
107                 };
108         };
109 };