Loading...
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Device tree for LEGO MINDSTORMS EV3
4 *
5 * Copyright (C) 2017 David Lechner <david@lechnology.com>
6 */
7
8/dts-v1/;
9#include <dt-bindings/gpio/gpio.h>
10#include <dt-bindings/input/linux-event-codes.h>
11#include <dt-bindings/pwm/pwm.h>
12
13#include "da850.dtsi"
14
15/ {
16 compatible = "lego,ev3", "ti,da850";
17 model = "LEGO MINDSTORMS EV3";
18
19 aliases {
20 serial1 = &serial1;
21 };
22
23 memory@c0000000 {
24 device_type = "memory";
25 reg = <0xc0000000 0x04000000>;
26 };
27
28 /*
29 * The buttons on the EV3 are mapped to keyboard keys.
30 */
31 gpio_keys {
32 compatible = "gpio-keys";
33 label = "EV3 Brick Buttons";
34 pinctrl-names = "default";
35 pinctrl-0 = <&button_bias>;
36
37 center {
38 label = "Center";
39 linux,code = <KEY_ENTER>;
40 gpios = <&gpio 29 GPIO_ACTIVE_HIGH>;
41 };
42
43 left {
44 label = "Left";
45 linux,code = <KEY_LEFT>;
46 gpios = <&gpio 102 GPIO_ACTIVE_HIGH>;
47 };
48
49 back {
50 label = "Back";
51 linux,code = <KEY_BACKSPACE>;
52 gpios = <&gpio 106 GPIO_ACTIVE_HIGH>;
53 };
54
55 right {
56 label = "Right";
57 linux,code = <KEY_RIGHT>;
58 gpios = <&gpio 124 GPIO_ACTIVE_HIGH>;
59 };
60
61 down {
62 label = "Down";
63 linux,code = <KEY_DOWN>;
64 gpios = <&gpio 126 GPIO_ACTIVE_HIGH>;
65 };
66
67 up {
68 label = "Up";
69 linux,code = <KEY_UP>;
70 gpios = <&gpio 127 GPIO_ACTIVE_HIGH>;
71 };
72 };
73
74 /*
75 * The EV3 has two built-in bi-color LEDs behind the buttons.
76 */
77 leds {
78 compatible = "gpio-leds";
79
80 left_green {
81 label = "led0:green:brick-status";
82 /* GP6[13] */
83 gpios = <&gpio 103 GPIO_ACTIVE_HIGH>;
84 linux,default-trigger = "default-on";
85 };
86
87 right_red {
88 label = "led1:red:brick-status";
89 /* GP6[7] */
90 gpios = <&gpio 108 GPIO_ACTIVE_HIGH>;
91 linux,default-trigger = "default-on";
92 };
93
94 left_red {
95 label = "led0:red:brick-status";
96 /* GP6[12] */
97 gpios = <&gpio 109 GPIO_ACTIVE_HIGH>;
98 linux,default-trigger = "default-on";
99 };
100
101 right_green {
102 label = "led1:green:brick-status";
103 /* GP6[14] */
104 gpios = <&gpio 110 GPIO_ACTIVE_HIGH>;
105 linux,default-trigger = "default-on";
106 };
107 };
108
109 /*
110 * The EV3 is powered down by turning off the main 5V supply.
111 */
112 gpio-poweroff {
113 compatible = "gpio-poweroff";
114 gpios = <&gpio 107 GPIO_ACTIVE_LOW>;
115 };
116
117 sound {
118 compatible = "pwm-beeper";
119 pinctrl-names = "default";
120 pinctrl-0 = <&ehrpwm0b_pins>;
121 pwms = <&ehrpwm0 1 1000000 0>;
122 amp-supply = <&>;
123 };
124
125 cvdd: regulator0 {
126 compatible = "regulator-fixed";
127 regulator-name = "cvdd";
128 regulator-min-microvolt = <1200000>;
129 regulator-max-microvolt = <1200000>;
130 regulator-always-on;
131 regulator-boot-on;
132 };
133
134 /*
135 * This is a 5V current limiting regulator that is shared by USB,
136 * the sensor (input) ports, the motor (output) ports and the A/DC.
137 */
138 vcc5v: regulator1 {
139 compatible = "regulator-fixed";
140 regulator-name = "vcc5v";
141 regulator-min-microvolt = <5000000>;
142 regulator-max-microvolt = <5000000>;
143 gpio = <&gpio 101 0>;
144 over-current-gpios = <&gpio 99 GPIO_ACTIVE_LOW>;
145 enable-active-high;
146 regulator-boot-on;
147 };
148
149 /*
150 * This is a simple voltage divider on VCC5V to provide a 2.5V
151 * reference signal to the ADC.
152 */
153 adc_ref: regulator2 {
154 compatible = "regulator-fixed";
155 regulator-name = "adc ref";
156 regulator-min-microvolt = <2500000>;
157 regulator-max-microvolt = <2500000>;
158 regulator-boot-on;
159 vin-supply = <&vcc5v>;
160 };
161
162 /*
163 * This is the amplifier for the speaker.
164 */
165 amp: regulator3 {
166 compatible = "regulator-fixed";
167 regulator-name = "amp";
168 gpio = <&gpio 111 GPIO_ACTIVE_HIGH>;
169 enable-active-high;
170 };
171
172 /*
173 * The EV3 can use 6-AA batteries or a rechargeable Li-ion battery pack.
174 */
175 battery {
176 compatible = "lego,ev3-battery";
177 io-channels = <&adc 4>, <&adc 3>;
178 io-channel-names = "voltage", "current";
179 rechargeable-gpios = <&gpio 136 GPIO_ACTIVE_LOW>;
180 };
181
182 bt_slow_clk: bt-clock {
183 pinctrl-names = "default";
184 pinctrl-0 = <&ecap2_pins>, <&bt_clock_bias>;
185 compatible = "pwm-clock";
186 #clock-cells = <0>;
187 clock-frequency = <32768>;
188 pwms = <&ecap2 0 30518 0>;
189 };
190
191 /* ARM local RAM */
192 memory@ffff0000 {
193 compatible = "syscon", "simple-mfd";
194 reg = <0xffff0000 0x2000>; /* 8k */
195
196 /*
197 * The I2C bootloader looks for this magic value to either
198 * boot normally or boot into a firmware update mode.
199 */
200 reboot-mode {
201 compatible = "syscon-reboot-mode";
202 offset = <0x1ffc>;
203 mode-normal = <0x00000000>;
204 mode-loader = <0x5555aaaa>;
205 };
206 };
207};
208
209&ref_clk {
210 clock-frequency = <24000000>;
211};
212
213&cpu {
214 cpu-supply = <&cvdd>;
215};
216
217/* since we have a fixed regulator, we can't run at these points */
218&opp_100 {
219 status = "disabled";
220};
221
222&opp_200 {
223 status = "disabled";
224};
225
226/*
227 * The SoC is actually the 456MHz version, but because of the fixed regulator
228 * This is the fastest we can go.
229 */
230&opp_375 {
231 status = "okay";
232};
233
234&pmx_core {
235 status = "okay";
236
237 ev3_lcd_pins: pinmux_lcd {
238 pinctrl-single,bits = <
239 /* SIMO, CLK */
240 0x14 0x00100100 0x00f00f00
241 >;
242 };
243};
244
245&pinconf {
246 status = "okay";
247
248 /* Buttons have external pulldown resistors */
249 button_bias: button-bias-groups {
250 disable {
251 groups = "cp5", "cp24", "cp25", "cp28";
252 bias-disable;
253 };
254 };
255
256 bt_clock_bias: bt-clock-bias-groups {
257 disable {
258 groups = "cp2";
259 bias-disable;
260 };
261 };
262
263 bt_pic_bias: bt-pic-bias-groups {
264 disable {
265 groups = "cp20";
266 bias-disable;
267 };
268 };
269};
270
271/* Input port 1 */
272&serial1 {
273 status = "okay";
274 pinctrl-names = "default";
275 pinctrl-0 = <&serial1_rxtx_pins>;
276};
277
278&serial2 {
279 pinctrl-names = "default";
280 pinctrl-0 = <&serial2_rxtx_pins>, <&serial2_rtscts_pins>, <&bt_pic_bias>;
281 status = "okay";
282
283 bluetooth {
284 compatible = "ti,cc2560";
285 clocks = <&bt_slow_clk>;
286 clock-names = "ext_clock";
287 enable-gpios = <&gpio 73 GPIO_ACTIVE_HIGH>;
288 max-speed = <2000000>;
289 nvmem-cells = <&bdaddr>;
290 nvmem-cell-names = "bd-address";
291 };
292};
293
294&rtc0 {
295 status = "okay";
296};
297
298&i2c0 {
299 status = "okay";
300 clock-frequency = <400000>;
301 pinctrl-names = "default";
302 pinctrl-0 = <&i2c0_pins>;
303
304 /*
305 * EEPROM contains the first stage bootloader, HW ID and Bluetooth MAC.
306 */
307 eeprom@50 {
308 compatible = "microchip,24c128", "atmel,24c128";
309 pagesize = <64>;
310 read-only;
311 reg = <0x50>;
312 #address-cells = <1>;
313 #size-cells = <1>;
314
315 bdaddr: bdaddr@3f06 {
316 reg = <0x3f06 0x06>;
317 };
318 };
319};
320
321&wdt {
322 status = "okay";
323};
324
325&mmc0 {
326 status = "okay";
327 max-frequency = <50000000>;
328 bus-width = <4>;
329 cd-gpios = <&gpio 94 GPIO_ACTIVE_LOW>;
330 pinctrl-names = "default";
331 pinctrl-0 = <&mmc0_pins>;
332};
333
334&spi0 {
335 status = "okay";
336 pinctrl-names = "default";
337 pinctrl-0 = <&spi0_pins>, <&spi0_cs0_pin>, <&spi0_cs3_pin>;
338
339 flash@0 {
340 compatible = "n25q128a13", "jedec,spi-nor";
341 reg = <0>;
342 spi-max-frequency = <50000000>;
343 ti,spi-wdelay = <8>;
344
345 /* Partitions are based on the official firmware from LEGO */
346 partitions {
347 compatible = "fixed-partitions";
348 #address-cells = <1>;
349 #size-cells = <1>;
350
351 partition@0 {
352 label = "U-Boot";
353 reg = <0 0x40000>;
354 };
355
356 partition@40000 {
357 label = "U-Boot Env";
358 reg = <0x40000 0x10000>;
359 };
360
361 partition@50000 {
362 label = "Kernel";
363 reg = <0x50000 0x200000>;
364 };
365
366 partition@250000 {
367 label = "Filesystem";
368 reg = <0x250000 0xa50000>;
369 };
370
371 partition@cb0000 {
372 label = "Storage";
373 reg = <0xcb0000 0x2f0000>;
374 };
375 };
376 };
377
378 adc: adc@3 {
379 compatible = "ti,ads7957";
380 reg = <3>;
381 #io-channel-cells = <1>;
382 spi-max-frequency = <1000000>;
383 ti,spi-wdelay = <63>;
384 vref-supply = <&adc_ref>;
385 };
386};
387
388&spi1 {
389 status = "okay";
390 pinctrl-0 = <&ev3_lcd_pins>;
391 pinctrl-names = "default";
392 cs-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
393
394 display@0{
395 compatible = "lego,ev3-lcd";
396 reg = <0>;
397 spi-max-frequency = <10000000>;
398 a0-gpios = <&gpio 43 GPIO_ACTIVE_HIGH>;
399 reset-gpios = <&gpio 80 GPIO_ACTIVE_HIGH>;
400 };
401};
402
403&ecap2 {
404 status = "okay";
405};
406
407&ehrpwm0 {
408 status = "okay";
409};
410
411&gpio {
412 status = "okay";
413
414 /* Don't pull down battery voltage adc io channel */
415 batt_volt_en {
416 gpio-hog;
417 gpios = <6 GPIO_ACTIVE_HIGH>;
418 output-high;
419 };
420
421 /* Don't impede Bluetooth clock signal */
422 bt_clock_en {
423 gpio-hog;
424 gpios = <5 GPIO_ACTIVE_HIGH>;
425 input;
426 };
427
428 /*
429 * There is a PIC microcontroller for interfacing with an Apple MFi
430 * chip. This interferes with normal Bluetooth operation, so we need
431 * to make sure it is turned off. Note: The publicly available
432 * schematics from LEGO don't show that these pins are connected to
433 * anything, but they are present in the source code from LEGO.
434 */
435
436 bt_pic_en {
437 gpio-hog;
438 gpios = <51 GPIO_ACTIVE_HIGH>;
439 output-low;
440 };
441
442 bt_pic_rst {
443 gpio-hog;
444 gpios = <78 GPIO_ACTIVE_HIGH>;
445 output-high;
446 };
447
448 bt_pic_cts {
449 gpio-hog;
450 gpios = <87 GPIO_ACTIVE_HIGH>;
451 input;
452 };
453};
454
455&usb_phy {
456 status = "okay";
457};
458
459&usb0 {
460 status = "okay";
461};
462
463&usb1 {
464 status = "okay";
465 vbus-supply = <&vcc5v>;
466};
1/*
2 * Device tree for LEGO MINDSTORMS EV3
3 *
4 * Copyright (C) 2017 David Lechner <david@lechnology.com>
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation, version 2.
9 */
10
11/dts-v1/;
12#include <dt-bindings/gpio/gpio.h>
13#include <dt-bindings/input/linux-event-codes.h>
14#include <dt-bindings/pwm/pwm.h>
15
16#include "da850.dtsi"
17
18/ {
19 compatible = "lego,ev3", "ti,da850";
20 model = "LEGO MINDSTORMS EV3";
21
22 aliases {
23 serial1 = &serial1;
24 };
25
26 memory@c0000000 {
27 device_type = "memory";
28 reg = <0xc0000000 0x04000000>;
29 };
30
31 /*
32 * The buttons on the EV3 are mapped to keyboard keys.
33 */
34 gpio_keys {
35 compatible = "gpio-keys";
36 #address-cells = <1>;
37 #size-cells = <0>;
38 label = "EV3 Brick Buttons";
39 pinctrl-names = "default";
40 pinctrl-0 = <&button_pins>, <&button_bias>;
41
42 center {
43 label = "Center";
44 linux,code = <KEY_ENTER>;
45 gpios = <&gpio 29 GPIO_ACTIVE_HIGH>;
46 };
47
48 left {
49 label = "Left";
50 linux,code = <KEY_LEFT>;
51 gpios = <&gpio 102 GPIO_ACTIVE_HIGH>;
52 };
53
54 back {
55 label = "Back";
56 linux,code = <KEY_BACKSPACE>;
57 gpios = <&gpio 106 GPIO_ACTIVE_HIGH>;
58 };
59
60 right {
61 label = "Right";
62 linux,code = <KEY_RIGHT>;
63 gpios = <&gpio 124 GPIO_ACTIVE_HIGH>;
64 };
65
66 down {
67 label = "Down";
68 linux,code = <KEY_DOWN>;
69 gpios = <&gpio 126 GPIO_ACTIVE_HIGH>;
70 };
71
72 up {
73 label = "Up";
74 linux,code = <KEY_UP>;
75 gpios = <&gpio 127 GPIO_ACTIVE_HIGH>;
76 };
77 };
78
79 /*
80 * The EV3 has two built-in bi-color LEDs behind the buttons.
81 */
82 leds {
83 compatible = "gpio-leds";
84 pinctrl-names = "default";
85 pinctrl-0 = <&led_pins>;
86
87 left_green {
88 label = "led0:green:brick-status";
89 /* GP6[13] */
90 gpios = <&gpio 103 GPIO_ACTIVE_HIGH>;
91 linux,default-trigger = "default-on";
92 };
93
94 right_red {
95 label = "led1:red:brick-status";
96 /* GP6[7] */
97 gpios = <&gpio 108 GPIO_ACTIVE_HIGH>;
98 linux,default-trigger = "default-on";
99 };
100
101 left_red {
102 label = "led0:red:brick-status";
103 /* GP6[12] */
104 gpios = <&gpio 109 GPIO_ACTIVE_HIGH>;
105 linux,default-trigger = "default-on";
106 };
107
108 right_green {
109 label = "led1:green:brick-status";
110 /* GP6[14] */
111 gpios = <&gpio 110 GPIO_ACTIVE_HIGH>;
112 linux,default-trigger = "default-on";
113 };
114 };
115
116 /*
117 * The EV3 is powered down by turning off the main 5V supply.
118 */
119 gpio-poweroff {
120 compatible = "gpio-poweroff";
121 gpios = <&gpio 107 GPIO_ACTIVE_LOW>;
122 pinctrl-names = "default";
123 pinctrl-0 = <&system_power_pin>;
124 };
125
126 sound {
127 compatible = "pwm-beeper";
128 pinctrl-names = "default";
129 pinctrl-0 = <&ehrpwm0b_pins>;
130 pwms = <&ehrpwm0 1 1000000 0>;
131 amp-supply = <&>;
132 };
133
134 /*
135 * This is a 5V current limiting regulator that is shared by USB,
136 * the sensor (input) ports, the motor (output) ports and the A/DC.
137 */
138 vcc5v: regulator1 {
139 pinctrl-names = "default";
140 pinctrl-0 = <&vcc5v_pins>;
141 compatible = "regulator-fixed";
142 regulator-name = "vcc5v";
143 regulator-min-microvolt = <5000000>;
144 regulator-max-microvolt = <5000000>;
145 gpio = <&gpio 101 0>;
146 over-current-gpios = <&gpio 99 GPIO_ACTIVE_LOW>;
147 enable-active-high;
148 regulator-boot-on;
149 };
150
151 /*
152 * This is a simple voltage divider on VCC5V to provide a 2.5V
153 * reference signal to the ADC.
154 */
155 adc_ref: regulator2 {
156 compatible = "regulator-fixed";
157 regulator-name = "adc ref";
158 regulator-min-microvolt = <2500000>;
159 regulator-max-microvolt = <2500000>;
160 regulator-boot-on;
161 vin-supply = <&vcc5v>;
162 };
163
164 /*
165 * This is the amplifier for the speaker.
166 */
167 amp: regulator3 {
168 pinctrl-names = "default";
169 pinctrl-0 = <&_pins>;
170 compatible = "regulator-fixed";
171 regulator-name = "amp";
172 gpio = <&gpio 111 GPIO_ACTIVE_HIGH>;
173 enable-active-high;
174 };
175
176 /*
177 * The EV3 can use 6-AA batteries or a rechargeable Li-ion battery pack.
178 */
179 battery {
180 pinctrl-names = "default";
181 pinctrl-0 = <&battery_pins>;
182 compatible = "lego,ev3-battery";
183 io-channels = <&adc 4>, <&adc 3>;
184 io-channel-names = "voltage", "current";
185 rechargeable-gpios = <&gpio 136 GPIO_ACTIVE_LOW>;
186 };
187
188 /* ARM local RAM */
189 memory@ffff0000 {
190 compatible = "syscon", "simple-mfd";
191 reg = <0xffff0000 0x2000>; /* 8k */
192
193 /*
194 * The I2C bootloader looks for this magic value to either
195 * boot normally or boot into a firmware update mode.
196 */
197 reboot-mode {
198 compatible = "syscon-reboot-mode";
199 offset = <0x1ffc>;
200 mode-normal = <0x00000000>;
201 mode-loader = <0x5555aaaa>;
202 };
203 };
204};
205
206&pmx_core {
207 status = "okay";
208
209 mmc0_cd_pin: pinmux_mmc0_cd {
210 pinctrl-single,bits = <
211 /* GP5[14] */
212 0x2C 0x00000080 0x000000f0
213 >;
214 };
215
216 button_pins: pinmux_button_pins {
217 pinctrl-single,bits = <
218 /* GP1[13] */
219 0x8 0x00000800 0x00000f00
220 /* GP6[10] */
221 0x34 0x00800000 0x00f00000
222 /* GP6[6] */
223 0x38 0x00000080 0x000000f0
224 /* GP7[12], GP7[14], GP7[15] */
225 0x40 0x00808800 0x00f0ff00
226 >;
227 };
228
229 led_pins: pinmux_led_pins {
230 pinctrl-single,bits = <
231 /* GP6[12], GP6[13], GP6[14] */
232 0x34 0x00008880 0x0000fff0
233 /* GP6[7] */
234 0x38 0x00000008 0x0000000f
235 >;
236 };
237
238 system_power_pin: pinmux_system_power {
239 pinctrl-single,bits = <
240 /* GP6[11] */
241 0x34 0x00080000 0x000f0000
242 >;
243 };
244
245 vcc5v_pins: pinmux_vcc5v {
246 pinctrl-single,bits = <
247 /* GP6[5] */
248 0x40 0x00000080 0x000000f0
249 /* GP6[3] */
250 0x4c 0x00008000 0x0000f000
251 >;
252 };
253
254 amp_pins: pinmux_amp_pins {
255 pinctrl-single,bits = <
256 /* GP6[15] */
257 0x34 0x00000008 0x0000000f
258 >;
259 };
260
261 battery_pins: pinmux_battery_pins {
262 pinctrl-single,bits = <
263 /* GP0[6] */
264 0x04 0x00000080 0x000000f0
265 /* GP8[8] */
266 0x4c 0x00000080 0x000000f0
267 >;
268 };
269
270 ev3_lcd_pins: pinmux_lcd {
271 pinctrl-single,bits = <
272 /* SIMO, GP2[11], GP2[12], CLK */
273 0x14 0x00188100 0x00ffff00
274 /* GP5[0] */
275 0x30 0x80000000 0xf0000000
276 >;
277 };
278};
279
280&pinconf {
281 status = "okay";
282
283 /* Buttons have external pulldown resistors */
284 button_bias: button-bias-groups {
285 disable {
286 groups = "cp5", "cp24", "cp25", "cp28";
287 bias-disable;
288 };
289 };
290};
291
292/* Input port 1 */
293&serial1 {
294 status = "okay";
295 pinctrl-names = "default";
296 pinctrl-0 = <&serial1_rxtx_pins>;
297};
298
299&rtc0 {
300 status = "okay";
301};
302
303&i2c0 {
304 status = "okay";
305 clock-frequency = <400000>;
306 pinctrl-names = "default";
307 pinctrl-0 = <&i2c0_pins>;
308
309 /*
310 * EEPROM contains the first stage bootloader, HW ID and Bluetooth MAC.
311 */
312 eeprom@50 {
313 compatible = "microchip,24c128", "atmel,24c128";
314 pagesize = <64>;
315 read-only;
316 reg = <0x50>;
317 };
318};
319
320&wdt {
321 status = "okay";
322};
323
324&mmc0 {
325 status = "okay";
326 max-frequency = <50000000>;
327 bus-width = <4>;
328 cd-gpios = <&gpio 94 GPIO_ACTIVE_LOW>;
329 pinctrl-names = "default";
330 pinctrl-0 = <&mmc0_pins>, <&mmc0_cd_pin>;
331};
332
333&spi0 {
334 status = "okay";
335 pinctrl-names = "default";
336 pinctrl-0 = <&spi0_pins>, <&spi0_cs0_pin>, <&spi0_cs3_pin>;
337
338 flash@0 {
339 compatible = "n25q128a13", "jedec,spi-nor";
340 reg = <0>;
341 spi-max-frequency = <50000000>;
342 ti,spi-wdelay = <8>;
343
344 /* Partitions are based on the official firmware from LEGO */
345 partitions {
346 compatible = "fixed-partitions";
347 #address-cells = <1>;
348 #size-cells = <1>;
349
350 partition@0 {
351 label = "U-Boot";
352 reg = <0 0x40000>;
353 };
354
355 partition@40000 {
356 label = "U-Boot Env";
357 reg = <0x40000 0x10000>;
358 };
359
360 partition@50000 {
361 label = "Kernel";
362 reg = <0x50000 0x200000>;
363 };
364
365 partition@250000 {
366 label = "Filesystem";
367 reg = <0x250000 0xa50000>;
368 };
369
370 partition@cb0000 {
371 label = "Storage";
372 reg = <0xcb0000 0x2f0000>;
373 };
374 };
375 };
376
377 adc: adc@3 {
378 compatible = "ti,ads7957";
379 reg = <3>;
380 #io-channel-cells = <1>;
381 spi-max-frequency = <10000000>;
382 vref-supply = <&adc_ref>;
383 };
384};
385
386&spi1 {
387 status = "okay";
388 pinctrl-0 = <&ev3_lcd_pins>;
389 pinctrl-names = "default";
390 cs-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
391
392 display@0{
393 compatible = "lego,ev3-lcd";
394 reg = <0>;
395 spi-max-frequency = <10000000>;
396 a0-gpios = <&gpio 43 GPIO_ACTIVE_HIGH>;
397 reset-gpios = <&gpio 80 GPIO_ACTIVE_HIGH>;
398 };
399};
400
401&ehrpwm0 {
402 status = "okay";
403};
404
405&gpio {
406 status = "okay";
407
408 /* Don't pull down battery voltage adc io channel */
409 batt_volt_en {
410 gpio-hog;
411 gpios = <6 GPIO_ACTIVE_HIGH>;
412 output-high;
413 };
414};
415
416&usb_phy {
417 status = "okay";
418};
419
420&usb0 {
421 status = "okay";
422};
423
424&usb1 {
425 status = "okay";
426 vbus-supply = <&vcc5v>;
427};