GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm / boot / dts / qcom-apq8026-asus-sparrow.dts
1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3  * Copyright (c) 2022, Luca Weiss <luca@z3ntu.xyz>
4  */
5
6 /dts-v1/;
7
8 #include "qcom-msm8226.dtsi"
9 #include "qcom-pm8226.dtsi"
10
11 /delete-node/ &adsp_region;
12
13 / {
14         model = "ASUS ZenWatch 2";
15         compatible = "asus,sparrow", "qcom,apq8026";
16         chassis-type = "watch";
17         qcom,msm-id = <199 0x20000>;
18         qcom,board-id = <8 3005>;
19
20         reserved-memory {
21                 sbl_region: sbl@2f00000 {
22                         reg = <0x02f00000 0x100000>;
23                         no-map;
24                 };
25                 external_image_region: external-image@3100000 {
26                         reg = <0x3100000 0x200000>;
27                         no-map;
28                 };
29                 peripheral_region: peripheral@3300000 {
30                         reg = <0x3300000 0x600000>;
31                         no-map;
32                 };
33                 adsp_region: adsp@3900000 {
34                         reg = <0x3900000 0x1400000>;
35                         no-map;
36                 };
37                 modem_region: modem@4d00000 {
38                         reg = <0x4d00000 0x1b00000>;
39                         no-map;
40                 };
41                 modem_efs_region: modem-efs@7f00000 {
42                         reg = <0x7f00000 0x100000>;
43                         no-map;
44                 };
45         };
46
47         vreg_wlan: wlan-regulator {
48                 compatible = "regulator-fixed";
49
50                 regulator-name = "wl-reg";
51                 regulator-min-microvolt = <2950000>;
52                 regulator-max-microvolt = <2950000>;
53
54                 gpio = <&tlmm 35 GPIO_ACTIVE_HIGH>;
55                 enable-active-high;
56
57                 pinctrl-names = "default";
58                 pinctrl-0 = <&wlan_regulator_default_state>;
59         };
60 };
61
62 &adsp {
63         status = "okay";
64 };
65
66 &blsp1_uart1 {
67         status = "okay";
68
69         pinctrl-names = "default";
70         pinctrl-0 = <&blsp1_uart1_default_state>;
71
72         bluetooth {
73                 compatible = "brcm,bcm43430a1-bt";
74                 max-speed = <3000000>;
75
76                 pinctrl-names = "default";
77                 pinctrl-0 = <&bluetooth_default_state>;
78
79                 host-wakeup-gpios = <&tlmm 48 GPIO_ACTIVE_HIGH>;
80                 device-wakeup-gpios = <&tlmm 61 GPIO_ACTIVE_HIGH>;
81                 shutdown-gpios = <&tlmm 34 GPIO_ACTIVE_HIGH>;
82         };
83 };
84
85 &pm8226_vib {
86         status = "okay";
87 };
88
89 &rpm_requests {
90         pm8226-regulators {
91                 compatible = "qcom,rpm-pm8226-regulators";
92
93                 pm8226_s3: s3 {
94                         regulator-min-microvolt = <1200000>;
95                         regulator-max-microvolt = <1300000>;
96                 };
97                 pm8226_s4: s4 {
98                         regulator-min-microvolt = <1800000>;
99                         regulator-max-microvolt = <2200000>;
100                 };
101                 pm8226_s5: s5 {
102                         regulator-min-microvolt = <1150000>;
103                         regulator-max-microvolt = <1150000>;
104                 };
105
106                 pm8226_l1: l1 {
107                         regulator-min-microvolt = <1225000>;
108                         regulator-max-microvolt = <1225000>;
109                 };
110                 pm8226_l2: l2 {
111                         regulator-min-microvolt = <1200000>;
112                         regulator-max-microvolt = <1200000>;
113                 };
114                 pm8226_l3: l3 {
115                         regulator-min-microvolt = <750000>;
116                         regulator-max-microvolt = <1337500>;
117                 };
118                 pm8226_l4: l4 {
119                         regulator-min-microvolt = <1200000>;
120                         regulator-max-microvolt = <1200000>;
121                 };
122                 pm8226_l5: l5 {
123                         regulator-min-microvolt = <1200000>;
124                         regulator-max-microvolt = <1200000>;
125                 };
126                 pm8226_l6: l6 {
127                         regulator-min-microvolt = <1800000>;
128                         regulator-max-microvolt = <1800000>;
129                 };
130                 pm8226_l7: l7 {
131                         regulator-min-microvolt = <1900000>;
132                         regulator-max-microvolt = <1900000>;
133                 };
134                 pm8226_l8: l8 {
135                         regulator-min-microvolt = <1800000>;
136                         regulator-max-microvolt = <1800000>;
137                 };
138                 pm8226_l9: l9 {
139                         regulator-min-microvolt = <1800000>;
140                         regulator-max-microvolt = <1800000>;
141                 };
142                 pm8226_l10: l10 {
143                         regulator-min-microvolt = <1800000>;
144                         regulator-max-microvolt = <1800000>;
145                 };
146                 pm8226_l12: l12 {
147                         regulator-min-microvolt = <1800000>;
148                         regulator-max-microvolt = <1800000>;
149                 };
150                 pm8226_l14: l14 {
151                         regulator-min-microvolt = <2750000>;
152                         regulator-max-microvolt = <2750000>;
153                 };
154                 pm8226_l15: l15 {
155                         regulator-min-microvolt = <3000000>;
156                         regulator-max-microvolt = <3000000>;
157                 };
158                 pm8226_l16: l16 {
159                         regulator-min-microvolt = <3000000>;
160                         regulator-max-microvolt = <3000000>;
161                 };
162                 pm8226_l17: l17 {
163                         regulator-min-microvolt = <2950000>;
164                         regulator-max-microvolt = <2950000>;
165                 };
166                 pm8226_l18: l18 {
167                         regulator-min-microvolt = <2950000>;
168                         regulator-max-microvolt = <2950000>;
169                 };
170                 pm8226_l19: l19 {
171                         regulator-min-microvolt = <2850000>;
172                         regulator-max-microvolt = <2850000>;
173                 };
174                 pm8226_l20: l20 {
175                         regulator-min-microvolt = <3075000>;
176                         regulator-max-microvolt = <3075000>;
177                 };
178                 pm8226_l21: l21 {
179                         regulator-min-microvolt = <1800000>;
180                         regulator-max-microvolt = <2950000>;
181                 };
182                 pm8226_l22: l22 {
183                         regulator-min-microvolt = <1800000>;
184                         regulator-max-microvolt = <2950000>;
185                 };
186                 pm8226_l23: l23 {
187                         regulator-min-microvolt = <1800000>;
188                         regulator-max-microvolt = <1800000>;
189                 };
190                 pm8226_l24: l24 {
191                         regulator-min-microvolt = <1300000>;
192                         regulator-max-microvolt = <1350000>;
193                 };
194                 pm8226_l25: l25 {
195                         regulator-min-microvolt = <1775000>;
196                         regulator-max-microvolt = <2125000>;
197                 };
198                 pm8226_l26: l26 {
199                         regulator-min-microvolt = <1225000>;
200                         regulator-max-microvolt = <1225000>;
201                 };
202                 pm8226_l27: l27 {
203                         regulator-min-microvolt = <2050000>;
204                         regulator-max-microvolt = <2050000>;
205                 };
206                 pm8226_l28: l28 {
207                         regulator-min-microvolt = <1800000>;
208                         regulator-max-microvolt = <2950000>;
209                 };
210
211                 pm8226_lvs1: lvs1 {};
212         };
213 };
214
215 &sdhc_1 {
216         status = "okay";
217
218         vmmc-supply = <&pm8226_l17>;
219         vqmmc-supply = <&pm8226_l6>;
220
221         bus-width = <8>;
222         non-removable;
223 };
224
225 &sdhc_3 {
226         status = "okay";
227
228         max-frequency = <100000000>;
229         non-removable;
230
231         vmmc-supply = <&vreg_wlan>;
232         vqmmc-supply = <&pm8226_l6>;
233
234         #address-cells = <1>;
235         #size-cells = <0>;
236
237         wifi@1 {
238                 compatible = "brcm,bcm43430a1-fmac", "brcm,bcm4329-fmac";
239                 reg = <1>;
240
241                 interrupts-extended = <&tlmm 46 IRQ_TYPE_EDGE_FALLING>;
242                 interrupt-names = "host-wake";
243
244                 pinctrl-names = "default";
245                 pinctrl-0 = <&wlan_hostwake_default_state>;
246         };
247 };
248
249 &smbb {
250         qcom,fast-charge-safe-current = <1500000>;
251         qcom,fast-charge-current-limit = <350000>;
252         qcom,fast-charge-safe-voltage = <4430000>;
253         qcom,fast-charge-high-threshold-voltage = <4400000>;
254         qcom,auto-recharge-threshold-voltage = <4300000>;
255         qcom,minimum-input-voltage = <4400000>;
256 };
257
258 &tlmm {
259         blsp1_uart1_default_state: blsp1-uart1-default-state {
260                 pins = "gpio0", "gpio1", "gpio2", "gpio3";
261                 function = "blsp_uart1";
262                 drive-strength = <8>;
263                 bias-disable;
264         };
265
266         bluetooth_default_state: bluetooth-default-state {
267                 pins = "gpio48", "gpio61";
268                 function = "gpio";
269                 drive-strength = <8>;
270                 bias-disable;
271                 input-enable;
272         };
273
274         wlan_hostwake_default_state: wlan-hostwake-default-state {
275                 pins = "gpio46";
276                 function = "gpio";
277                 drive-strength = <2>;
278                 bias-disable;
279                 input-enable;
280         };
281
282         wlan_regulator_default_state: wlan-regulator-default-state {
283                 pins = "gpio35";
284                 function = "gpio";
285                 drive-strength = <2>;
286                 bias-pull-up;
287         };
288 };
289
290 &usb {
291         status = "okay";
292         extcon = <&smbb>;
293         dr_mode = "peripheral";
294 };
295
296 &usb_hs_phy {
297         extcon = <&smbb>;
298         v1p8-supply = <&pm8226_l10>;
299         v3p3-supply = <&pm8226_l20>;
300 };