Commit | Line | Data |
---|---|---|
ad3f04b7 LW |
1 | // SPDX-License-Identifier: BSD-3-Clause |
2 | /* | |
3 | * Copyright (c) 2021, Luca Weiss <luca@z3ntu.xyz> | |
4 | */ | |
5 | ||
6 | /dts-v1/; | |
7 | ||
8 | #include "qcom-msm8226.dtsi" | |
455a4c46 | 9 | #include "pm8226.dtsi" |
4d679e3c | 10 | #include <dt-bindings/clock/qcom,mmcc-msm8974.h> |
ad3f04b7 | 11 | |
5cbd2016 LW |
12 | /delete-node/ &adsp_region; |
13 | ||
ad3f04b7 LW |
14 | / { |
15 | model = "LG G Watch R"; | |
22b32238 | 16 | compatible = "lg,lenok", "qcom,apq8026"; |
6d28bc94 | 17 | chassis-type = "watch"; |
ad3f04b7 LW |
18 | qcom,board-id = <132 0x0a>; |
19 | qcom,msm-id = <199 0x20000>; | |
20 | ||
21 | aliases { | |
22 | serial0 = &blsp1_uart3; | |
e8880a10 | 23 | serial1 = &blsp1_uart4; |
ad3f04b7 LW |
24 | }; |
25 | ||
26 | chosen { | |
27 | stdout-path = "serial0:115200n8"; | |
28 | }; | |
81ecc39d | 29 | |
5cbd2016 | 30 | reserved-memory { |
ecd24087 LW |
31 | sbl_region: sbl@2f00000 { |
32 | reg = <0x02f00000 0x100000>; | |
33 | no-map; | |
34 | }; | |
35 | ||
36 | external_image_region: external-image@3100000 { | |
37 | reg = <0x03100000 0x200000>; | |
38 | no-map; | |
39 | }; | |
40 | ||
5cbd2016 LW |
41 | adsp_region: adsp@3300000 { |
42 | reg = <0x03300000 0x1400000>; | |
43 | no-map; | |
44 | }; | |
45 | }; | |
46 | ||
81ecc39d LW |
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 46 GPIO_ACTIVE_HIGH>; | |
55 | enable-active-high; | |
56 | ||
57 | pinctrl-names = "default"; | |
58 | pinctrl-0 = <&wlan_regulator_default_state>; | |
59 | }; | |
4d679e3c LW |
60 | |
61 | pwm_vibrator: pwm { | |
62 | compatible = "clk-pwm"; | |
63 | clocks = <&mmcc CAMSS_GP0_CLK>; | |
64 | ||
65 | pinctrl-0 = <&vibrator_clk_default_state>; | |
66 | pinctrl-names = "default"; | |
67 | ||
68 | #pwm-cells = <2>; | |
69 | }; | |
70 | ||
71 | vibrator { | |
72 | compatible = "pwm-vibrator"; | |
73 | ||
74 | pwms = <&pwm_vibrator 0 10000>; | |
75 | pwm-names = "enable"; | |
76 | ||
77 | vcc-supply = <&pm8226_l28>; | |
78 | enable-gpios = <&tlmm 62 GPIO_ACTIVE_HIGH>; | |
79 | ||
80 | pinctrl-0 = <&vibrator_en_default_state>; | |
81 | pinctrl-names = "default"; | |
82 | }; | |
ad3f04b7 LW |
83 | }; |
84 | ||
5cbd2016 LW |
85 | &adsp { |
86 | status = "okay"; | |
87 | }; | |
88 | ||
d6364259 LW |
89 | &blsp1_i2c1 { |
90 | status = "okay"; | |
91 | ||
92 | fuel-gauge@55 { | |
93 | compatible = "ti,bq27421"; | |
94 | reg = <0x55>; | |
95 | }; | |
96 | }; | |
97 | ||
ad3f04b7 LW |
98 | &blsp1_i2c5 { |
99 | status = "okay"; | |
100 | clock-frequency = <384000>; | |
101 | ||
102 | touchscreen@20 { | |
103 | compatible = "syna,rmi4-i2c"; | |
104 | reg = <0x20>; | |
105 | ||
106 | interrupts-extended = <&tlmm 17 IRQ_TYPE_EDGE_FALLING>; | |
107 | vdd-supply = <&pm8226_l15>; | |
108 | vio-supply = <&pm8226_l22>; | |
109 | ||
110 | pinctrl-names = "default"; | |
111 | pinctrl-0 = <&touch_pins>; | |
112 | ||
113 | #address-cells = <1>; | |
114 | #size-cells = <0>; | |
115 | ||
116 | rmi4-f01@1 { | |
117 | reg = <0x1>; | |
118 | syna,nosleep-mode = <1>; | |
119 | }; | |
120 | ||
121 | rmi4-f12@12 { | |
122 | reg = <0x12>; | |
123 | syna,sensor-type = <1>; | |
124 | }; | |
125 | }; | |
126 | }; | |
127 | ||
128 | &blsp1_uart3 { | |
129 | status = "okay"; | |
130 | }; | |
131 | ||
e8880a10 LW |
132 | &blsp1_uart4 { |
133 | status = "okay"; | |
134 | ||
135 | pinctrl-names = "default"; | |
136 | pinctrl-0 = <&blsp1_uart4_default_state>; | |
137 | ||
138 | bluetooth { | |
139 | compatible = "brcm,bcm43430a0-bt"; | |
140 | ||
141 | max-speed = <3000000>; | |
142 | ||
143 | pinctrl-names = "default"; | |
144 | pinctrl-0 = <&bluetooth_default_state>; | |
145 | ||
146 | host-wakeup-gpios = <&tlmm 48 GPIO_ACTIVE_HIGH>; | |
147 | device-wakeup-gpios = <&tlmm 47 GPIO_ACTIVE_HIGH>; | |
148 | shutdown-gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>; | |
149 | }; | |
150 | }; | |
151 | ||
ad3f04b7 | 152 | &rpm_requests { |
4dca1ca2 | 153 | regulators { |
ad3f04b7 LW |
154 | compatible = "qcom,rpm-pm8226-regulators"; |
155 | ||
ad3f04b7 LW |
156 | pm8226_s3: s3 { |
157 | regulator-min-microvolt = <1200000>; | |
158 | regulator-max-microvolt = <1350000>; | |
159 | }; | |
160 | pm8226_s4: s4 { | |
161 | regulator-min-microvolt = <1800000>; | |
162 | regulator-max-microvolt = <2200000>; | |
163 | }; | |
164 | pm8226_s5: s5 { | |
165 | regulator-min-microvolt = <1150000>; | |
166 | regulator-max-microvolt = <1150000>; | |
167 | }; | |
168 | ||
169 | pm8226_l1: l1 { | |
170 | regulator-min-microvolt = <1225000>; | |
171 | regulator-max-microvolt = <1225000>; | |
172 | }; | |
173 | pm8226_l2: l2 { | |
174 | regulator-min-microvolt = <1200000>; | |
175 | regulator-max-microvolt = <1200000>; | |
176 | }; | |
177 | pm8226_l3: l3 { | |
178 | regulator-min-microvolt = <750000>; | |
179 | regulator-max-microvolt = <1337500>; | |
180 | }; | |
181 | pm8226_l4: l4 { | |
182 | regulator-min-microvolt = <1200000>; | |
183 | regulator-max-microvolt = <1200000>; | |
184 | }; | |
185 | pm8226_l5: l5 { | |
186 | regulator-min-microvolt = <1200000>; | |
187 | regulator-max-microvolt = <1200000>; | |
188 | }; | |
189 | pm8226_l6: l6 { | |
190 | regulator-min-microvolt = <1800000>; | |
191 | regulator-max-microvolt = <1800000>; | |
192 | }; | |
193 | pm8226_l7: l7 { | |
194 | regulator-min-microvolt = <1850000>; | |
195 | regulator-max-microvolt = <1850000>; | |
196 | }; | |
197 | pm8226_l8: l8 { | |
198 | regulator-min-microvolt = <1800000>; | |
199 | regulator-max-microvolt = <1800000>; | |
200 | }; | |
201 | pm8226_l9: l9 { | |
202 | regulator-min-microvolt = <2050000>; | |
203 | regulator-max-microvolt = <2050000>; | |
204 | }; | |
205 | pm8226_l10: l10 { | |
206 | regulator-min-microvolt = <1800000>; | |
207 | regulator-max-microvolt = <1800000>; | |
208 | }; | |
209 | pm8226_l12: l12 { | |
210 | regulator-min-microvolt = <1800000>; | |
211 | regulator-max-microvolt = <1800000>; | |
212 | }; | |
213 | pm8226_l14: l14 { | |
214 | regulator-min-microvolt = <2750000>; | |
215 | regulator-max-microvolt = <2750000>; | |
216 | }; | |
217 | pm8226_l15: l15 { | |
218 | regulator-min-microvolt = <3300000>; | |
219 | regulator-max-microvolt = <3300000>; | |
220 | }; | |
221 | pm8226_l16: l16 { | |
222 | regulator-min-microvolt = <3000000>; | |
223 | regulator-max-microvolt = <3350000>; | |
224 | }; | |
225 | pm8226_l17: l17 { | |
226 | regulator-min-microvolt = <2950000>; | |
227 | regulator-max-microvolt = <2950000>; | |
228 | }; | |
229 | pm8226_l18: l18 { | |
230 | regulator-min-microvolt = <3000000>; | |
231 | regulator-max-microvolt = <3300000>; | |
232 | }; | |
233 | pm8226_l19: l19 { | |
234 | regulator-min-microvolt = <3000000>; | |
235 | regulator-max-microvolt = <3000000>; | |
236 | }; | |
237 | pm8226_l20: l20 { | |
238 | regulator-min-microvolt = <3075000>; | |
239 | regulator-max-microvolt = <3075000>; | |
240 | }; | |
241 | pm8226_l21: l21 { | |
242 | regulator-min-microvolt = <1800000>; | |
243 | regulator-max-microvolt = <2950000>; | |
244 | }; | |
245 | pm8226_l22: l22 { | |
246 | regulator-min-microvolt = <1800000>; | |
247 | regulator-max-microvolt = <1800000>; | |
248 | }; | |
249 | pm8226_l23: l23 { | |
250 | regulator-min-microvolt = <1800000>; | |
251 | regulator-max-microvolt = <2950000>; | |
252 | }; | |
253 | pm8226_l24: l24 { | |
254 | regulator-min-microvolt = <1300000>; | |
255 | regulator-max-microvolt = <1350000>; | |
256 | }; | |
257 | pm8226_l25: l25 { | |
258 | regulator-min-microvolt = <1775000>; | |
259 | regulator-max-microvolt = <2125000>; | |
260 | }; | |
261 | pm8226_l26: l26 { | |
262 | regulator-min-microvolt = <1225000>; | |
263 | regulator-max-microvolt = <1225000>; | |
264 | }; | |
265 | pm8226_l27: l27 { | |
266 | regulator-min-microvolt = <2050000>; | |
267 | regulator-max-microvolt = <2050000>; | |
268 | }; | |
269 | pm8226_l28: l28 { | |
270 | regulator-min-microvolt = <2700000>; | |
271 | regulator-max-microvolt = <3000000>; | |
272 | }; | |
273 | ||
274 | pm8226_lvs1: lvs1 {}; | |
275 | }; | |
276 | }; | |
277 | ||
278 | &sdhc_1 { | |
279 | status = "okay"; | |
280 | ||
281 | vmmc-supply = <&pm8226_l17>; | |
282 | vqmmc-supply = <&pm8226_l6>; | |
283 | ||
284 | bus-width = <8>; | |
285 | non-removable; | |
ad3f04b7 LW |
286 | }; |
287 | ||
81ecc39d LW |
288 | &sdhc_3 { |
289 | status = "okay"; | |
290 | ||
291 | max-frequency = <100000000>; | |
292 | non-removable; | |
293 | ||
294 | vmmc-supply = <&vreg_wlan>; | |
295 | vqmmc-supply = <&pm8226_l6>; | |
296 | ||
297 | #address-cells = <1>; | |
298 | #size-cells = <0>; | |
299 | ||
300 | wifi@1 { | |
301 | compatible = "brcm,bcm43430a0-fmac", "brcm,bcm4329-fmac"; | |
302 | reg = <1>; | |
303 | ||
304 | interrupts-extended = <&tlmm 37 IRQ_TYPE_EDGE_FALLING>; | |
305 | interrupt-names = "host-wake"; | |
306 | ||
307 | pinctrl-names = "default"; | |
308 | pinctrl-0 = <&wlan_hostwake_default_state>; | |
309 | }; | |
310 | }; | |
311 | ||
0bbcddc5 LW |
312 | &smbb { |
313 | qcom,fast-charge-safe-current = <450000>; | |
314 | qcom,fast-charge-current-limit = <400000>; | |
315 | qcom,fast-charge-safe-voltage = <4350000>; | |
316 | qcom,fast-charge-high-threshold-voltage = <4350000>; | |
317 | qcom,auto-recharge-threshold-voltage = <4240000>; | |
318 | qcom,minimum-input-voltage = <4450000>; | |
c9c8179d BM |
319 | |
320 | status = "okay"; | |
0bbcddc5 LW |
321 | }; |
322 | ||
ad3f04b7 | 323 | &tlmm { |
e8880a10 LW |
324 | blsp1_uart4_default_state: blsp1-uart4-default-state { |
325 | pins = "gpio12", "gpio13", "gpio14", "gpio15"; | |
326 | function = "blsp_uart4"; | |
327 | drive-strength = <8>; | |
328 | bias-disable; | |
329 | }; | |
330 | ||
331 | bluetooth_default_state: bluetooth-default-state { | |
332 | pins = "gpio47", "gpio48"; | |
333 | function = "gpio"; | |
334 | drive-strength = <2>; | |
335 | bias-disable; | |
e8880a10 LW |
336 | }; |
337 | ||
df9c8602 KK |
338 | touch_pins: touch-state { |
339 | irq-pins { | |
ad3f04b7 LW |
340 | pins = "gpio17"; |
341 | function = "gpio"; | |
342 | ||
343 | drive-strength = <8>; | |
344 | bias-pull-down; | |
ad3f04b7 LW |
345 | }; |
346 | ||
df9c8602 | 347 | reset-pins { |
ad3f04b7 LW |
348 | pins = "gpio16"; |
349 | function = "gpio"; | |
350 | ||
351 | drive-strength = <8>; | |
352 | bias-disable; | |
353 | output-high; | |
354 | }; | |
355 | }; | |
81ecc39d | 356 | |
4d679e3c LW |
357 | vibrator_clk_default_state: vibrator-clk-default-state { |
358 | pins = "gpio33"; | |
359 | function = "gp0_clk"; | |
360 | drive-strength = <2>; | |
361 | bias-disable; | |
362 | }; | |
363 | ||
364 | vibrator_en_default_state: vibrator-en-default-state { | |
365 | pins = "gpio62"; | |
366 | function = "gpio"; | |
367 | drive-strength = <2>; | |
368 | bias-disable; | |
369 | }; | |
370 | ||
81ecc39d LW |
371 | wlan_hostwake_default_state: wlan-hostwake-default-state { |
372 | pins = "gpio37"; | |
373 | function = "gpio"; | |
374 | drive-strength = <2>; | |
375 | bias-disable; | |
81ecc39d LW |
376 | }; |
377 | ||
378 | wlan_regulator_default_state: wlan-regulator-default-state { | |
379 | pins = "gpio46"; | |
380 | function = "gpio"; | |
381 | drive-strength = <2>; | |
382 | bias-pull-up; | |
383 | }; | |
ad3f04b7 | 384 | }; |
f8565bd5 LW |
385 | |
386 | &usb { | |
387 | status = "okay"; | |
388 | extcon = <&smbb>; | |
389 | dr_mode = "peripheral"; | |
390 | }; | |
391 | ||
392 | &usb_hs_phy { | |
393 | extcon = <&smbb>; | |
394 | v1p8-supply = <&pm8226_l10>; | |
395 | v3p3-supply = <&pm8226_l20>; | |
396 | }; |