Linux 5.6.13
[linux/fpc-iii.git] / arch / arm / boot / dts / motorola-cpcap-mapphone.dtsi
blobe39eee628afd68e6e7a76762aef6bf42c80b1f0e
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Common CPCAP configuration used on Motorola phones
4  */
6 &mcspi1 {
7         cpcap: pmic@0 {
8                 compatible = "motorola,cpcap", "st,6556002";
9                 reg = <0>;      /* cs0 */
10                 interrupt-parent = <&gpio1>;
11                 interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
12                 interrupt-controller;
13                 #interrupt-cells = <2>;
14                 #address-cells = <1>;
15                 #size-cells = <0>;
16                 spi-max-frequency = <3000000>;
17                 spi-cs-high;
19                 cpcap_adc: adc {
20                         compatible = "motorola,mapphone-cpcap-adc";
21                         interrupts-extended = <&cpcap 8 0>;
22                         interrupt-names = "adcdone";
23                         #io-channel-cells = <1>;
24                 };
26                 cpcap_battery: battery {
27                         compatible = "motorola,cpcap-battery";
28                         interrupts-extended = <
29                                 &cpcap 6 0 &cpcap 5 0 &cpcap 3 0
30                                 &cpcap 20 0 &cpcap 54 0 &cpcap 57 0
31                         >;
32                         interrupt-names =
33                                 "eol", "lowbph", "lowbpl",
34                                 "chrgcurr1", "battdetb",
35                                 "cccal";
36                         io-channels = <&cpcap_adc 0 &cpcap_adc 1
37                                        &cpcap_adc 5 &cpcap_adc 6>;
38                         io-channel-names = "battdetb", "battp",
39                                            "chg_isense", "batti";
40                         power-supplies = <&cpcap_charger>;
41                 };
43                 cpcap_charger: charger {
44                         compatible = "motorola,mapphone-cpcap-charger";
45                         interrupts-extended = <
46                                 &cpcap 13 0 &cpcap 12 0 &cpcap 29 0 &cpcap 28 0
47                                 &cpcap 22 0 &cpcap 21 0 &cpcap 20 0 &cpcap 19 0
48                                 &cpcap 54 0
49                         >;
50                         interrupt-names =
51                                 "chrg_det", "rvrs_chrg", "chrg_se1b", "se0conn",
52                                 "rvrs_mode", "chrgcurr2", "chrgcurr1", "vbusvld",
53                                 "battdetb";
54                         mode-gpios = <&gpio3 29 GPIO_ACTIVE_LOW
55                                       &gpio3 23 GPIO_ACTIVE_LOW>;
56                         io-channels = <&cpcap_adc 0 &cpcap_adc 1
57                                        &cpcap_adc 2 &cpcap_adc 5
58                                        &cpcap_adc 6>;
59                         io-channel-names = "battdetb", "battp",
60                                            "vbus", "chg_isense",
61                                            "batti";
62                 };
64                 cpcap_regulator: regulator {
65                         compatible = "motorola,mapphone-cpcap-regulator";
67                         cpcap_regulators: regulators {
68                         };
69                 };
71                 cpcap_audio: audio-codec {
72                         #sound-dai-cells = <1>;
74                         port@0 {
75                                 cpcap_audio_codec0: endpoint {
76                                 };
77                         };
78                         port@1 {
79                                 cpcap_audio_codec1: endpoint {
80                                 };
81                         };
82                 };
84                 cpcap_rtc: rtc {
85                         compatible = "motorola,cpcap-rtc";
87                         interrupt-parent = <&cpcap>;
88                         interrupts = <39 IRQ_TYPE_NONE>, <26 IRQ_TYPE_NONE>;
89                 };
91                 power_button: button {
92                         compatible = "motorola,cpcap-pwrbutton";
94                         interrupts = <23 IRQ_TYPE_NONE>;
95                 };
97                 cpcap_usb2_phy: phy {
98                         compatible = "motorola,mapphone-cpcap-usb-phy";
99                         pinctrl-0 = <&usb_gpio_mux_sel1 &usb_gpio_mux_sel2>;
100                         pinctrl-1 = <&usb_ulpi_pins>;
101                         pinctrl-2 = <&usb_utmi_pins>;
102                         pinctrl-3 = <&uart3_pins>;
103                         pinctrl-names = "default", "ulpi", "utmi", "uart";
104                         #phy-cells = <0>;
105                         interrupts-extended = <
106                                 &cpcap 15 0 &cpcap 14 0 &cpcap 28 0 &cpcap 19 0
107                                 &cpcap 18 0 &cpcap 17 0 &cpcap 16 0 &cpcap 49 0
108                                 &cpcap 48 0
109                         >;
110                         interrupt-names =
111                                 "id_ground", "id_float", "se0conn", "vbusvld",
112                                 "sessvld", "sessend", "se1", "dm", "dp";
113                         mode-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH
114                                       &gpio1 0 GPIO_ACTIVE_HIGH>;
115                         io-channels = <&cpcap_adc 2>, <&cpcap_adc 7>;
116                         io-channel-names = "vbus", "id";
117                         vusb-supply = <&vusb>;
118                 };
120                 led_red: led-red {
121                         compatible = "motorola,cpcap-led-red";
122                         vdd-supply = <&sw5>;
123                         label = "status-led:red";
124                 };
126                 led_green: led-green {
127                         compatible = "motorola,cpcap-led-green";
128                         vdd-supply = <&sw5>;
129                         label = "status-led:green";
130                 };
132                 led_blue: led-blue {
133                         compatible = "motorola,cpcap-led-blue";
134                         vdd-supply = <&sw5>;
135                         label = "status-led:blue";
136                 };
138                 led_adl: led-adl {
139                         compatible = "motorola,cpcap-led-adl";
140                         vdd-supply = <&sw5>;
141                         label = "button-backlight";
142                 };
144                 led_cp: led-cp {
145                         compatible = "motorola,cpcap-led-cp";
146                         vdd-supply = <&sw5>;
147                         label = "shift-key-light";
148                 };
149         };
152 &cpcap_regulators {
153         sw5: SW5 {
154                 regulator-min-microvolt = <5050000>;
155                 regulator-max-microvolt = <5050000>;
156                 regulator-enable-ramp-delay = <50000>;
157                 regulator-boot-on;
158         };
160         vcam: VCAM {
161                 regulator-min-microvolt = <2900000>;
162                 regulator-max-microvolt = <2900000>;
163                 regulator-enable-ramp-delay = <1000>;
164         };
166         /* Used by DSS and is the "zerov_regulator" trigger for SoC off mode */
167         vcsi: VCSI {
168                 regulator-min-microvolt = <1800000>;
169                 regulator-max-microvolt = <1800000>;
170                 regulator-enable-ramp-delay = <1000>;
171                 regulator-always-on;
172         };
174         vdac: VDAC {
175                 regulator-min-microvolt = <1800000>;
176                 regulator-max-microvolt = <1800000>;
177                 regulator-enable-ramp-delay = <1000>;
178         };
180         vdig: VDIG {
181                 regulator-min-microvolt = <1875000>;
182                 regulator-max-microvolt = <1875000>;
183                 regulator-enable-ramp-delay = <1000>;
184         };
186         vfuse: VFUSE {
187                 regulator-min-microvolt = <1500000>;
188                 regulator-max-microvolt = <3150000>;
189                 regulator-enable-ramp-delay = <1000>;
190         };
192         vhvio: VHVIO {
193                 regulator-min-microvolt = <2775000>;
194                 regulator-max-microvolt = <2775000>;
195                 regulator-enable-ramp-delay = <1000>;
196                 regulator-always-on;
197         };
199         /* Used by eMMC at mmc2 */
200         vsdio: VSDIO {
201                 regulator-min-microvolt = <2900000>;
202                 regulator-max-microvolt = <2900000>;
203                 regulator-enable-ramp-delay = <1000>;
204         };
206         vpll: VPLL {
207                 regulator-min-microvolt = <1200000>;
208                 regulator-max-microvolt = <1800000>;
209                 regulator-enable-ramp-delay = <100>;
210         };
212         vrf1: VRF1 {
213                 regulator-min-microvolt = <2775000>;
214                 regulator-max-microvolt = <2775000>;
215                 regulator-enable-ramp-delay = <1000>;
216         };
218         vrf2: VRF2 {
219                 regulator-min-microvolt = <2775000>;
220                 regulator-max-microvolt = <2775000>;
221                 regulator-enable-ramp-delay = <1000>;
222         };
224         vrfref: VRFREF {
225                 regulator-min-microvolt = <2500000>;
226                 regulator-max-microvolt = <2775000>;
227                 regulator-enable-ramp-delay = <100>;
228         };
230         vwlan1: VWLAN1 {
231                 regulator-min-microvolt = <1800000>;
232                 regulator-max-microvolt = <1900000>;
233                 regulator-enable-ramp-delay = <1000>;
234         };
236         /* Used by micro-SDIO at mmc1 */
237         vwlan2: VWLAN2 {
238                 regulator-min-microvolt = <3000000>;
239                 regulator-max-microvolt = <3000000>;
240                 regulator-enable-ramp-delay = <1000>;
241         };
243         vsim: VSIM {
244                 regulator-min-microvolt = <1800000>;
245                 regulator-max-microvolt = <2900000>;
246                 regulator-enable-ramp-delay = <1000>;
247         };
249         vsimcard: VSIMCARD {
250                 regulator-min-microvolt = <1800000>;
251                 regulator-max-microvolt = <2900000>;
252                 regulator-enable-ramp-delay = <1000>;
253         };
255         vvib: VVIB {
256                 regulator-min-microvolt = <1300000>;
257                 regulator-max-microvolt = <3000000>;
258                 regulator-enable-ramp-delay = <500>;
259         };
261         vusb: VUSB {
262                 regulator-min-microvolt = <3300000>;
263                 regulator-max-microvolt = <3300000>;
264                 regulator-enable-ramp-delay = <1000>;
265         };
267         vaudio: VAUDIO {
268                 regulator-min-microvolt = <2775000>;
269                 regulator-max-microvolt = <2775000>;
270                 regulator-enable-ramp-delay = <1000>;
271                 regulator-initial-mode = <0x00>; /* NORMAL */
272         };