blob: a70de21bf139bd3f67d9e848f75cac20839335fb [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// 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"
Tom Rini93743d22024-04-01 09:08:13 -04009#include "pm8226.dtsi"
Tom Rini6bb92fc2024-05-20 09:54:58 -060010#include <dt-bindings/clock/qcom,mmcc-msm8974.h>
Tom Rini53633a82024-02-29 12:33:36 -050011
12/delete-node/ &adsp_region;
13
14/ {
15 model = "LG G Watch R";
16 compatible = "lg,lenok", "qcom,apq8026";
17 chassis-type = "watch";
18 qcom,board-id = <132 0x0a>;
19 qcom,msm-id = <199 0x20000>;
20
21 aliases {
22 serial0 = &blsp1_uart3;
23 serial1 = &blsp1_uart4;
24 };
25
26 chosen {
27 stdout-path = "serial0:115200n8";
28 };
29
30 reserved-memory {
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
41 adsp_region: adsp@3300000 {
42 reg = <0x03300000 0x1400000>;
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 46 GPIO_ACTIVE_HIGH>;
55 enable-active-high;
56
57 pinctrl-names = "default";
58 pinctrl-0 = <&wlan_regulator_default_state>;
59 };
Tom Rini6bb92fc2024-05-20 09:54:58 -060060
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 };
Tom Rini53633a82024-02-29 12:33:36 -050083};
84
85&adsp {
86 status = "okay";
87};
88
89&blsp1_i2c1 {
90 status = "okay";
91
92 fuel-gauge@55 {
93 compatible = "ti,bq27421";
94 reg = <0x55>;
95 };
96};
97
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
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
152&rpm_requests {
153 regulators {
154 compatible = "qcom,rpm-pm8226-regulators";
155
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;
286};
287
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
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>;
Tom Rini93743d22024-04-01 09:08:13 -0400319
320 status = "okay";
Tom Rini53633a82024-02-29 12:33:36 -0500321};
322
323&tlmm {
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;
336 };
337
338 touch_pins: touch-state {
339 irq-pins {
340 pins = "gpio17";
341 function = "gpio";
342
343 drive-strength = <8>;
344 bias-pull-down;
345 };
346
347 reset-pins {
348 pins = "gpio16";
349 function = "gpio";
350
351 drive-strength = <8>;
352 bias-disable;
353 output-high;
354 };
355 };
356
Tom Rini6bb92fc2024-05-20 09:54:58 -0600357 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
Tom Rini53633a82024-02-29 12:33:36 -0500371 wlan_hostwake_default_state: wlan-hostwake-default-state {
372 pins = "gpio37";
373 function = "gpio";
374 drive-strength = <2>;
375 bias-disable;
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 };
384};
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};