2 * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
10 #include "dra74x.dtsi"
11 #include <dt-bindings/gpio/gpio.h>
12 #include <dt-bindings/interrupt-controller/irq.h>
15 model = "TI AM5728 BeagleBoard-X15";
16 compatible = "ti,am572x-beagle-x15", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7";
20 rtc1 = &tps659038_rtc;
26 device_type = "memory";
27 reg = <0x80000000 0x80000000>;
30 vdd_3v3: fixedregulator-vdd_3v3 {
31 compatible = "regulator-fixed";
32 regulator-name = "vdd_3v3";
33 vin-supply = <®en1>;
34 regulator-min-microvolt = <3300000>;
35 regulator-max-microvolt = <3300000>;
38 vtt_fixed: fixedregulator-vtt {
40 compatible = "regulator-fixed";
41 regulator-name = "vtt_fixed";
42 vin-supply = <&smps3_reg>;
43 regulator-min-microvolt = <3300000>;
44 regulator-max-microvolt = <3300000>;
48 gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
52 compatible = "gpio-leds";
53 pinctrl-names = "default";
54 pinctrl-0 = <&leds_pins_default>;
57 label = "beagle-x15:usr0";
58 gpios = <&gpio7 9 GPIO_ACTIVE_HIGH>;
59 linux,default-trigger = "heartbeat";
60 default-state = "off";
64 label = "beagle-x15:usr1";
65 gpios = <&gpio7 8 GPIO_ACTIVE_HIGH>;
66 linux,default-trigger = "cpu0";
67 default-state = "off";
71 label = "beagle-x15:usr2";
72 gpios = <&gpio7 14 GPIO_ACTIVE_HIGH>;
73 linux,default-trigger = "mmc0";
74 default-state = "off";
78 label = "beagle-x15:usr3";
79 gpios = <&gpio7 15 GPIO_ACTIVE_HIGH>;
80 linux,default-trigger = "ide-disk";
81 default-state = "off";
86 /* Based on 5v 500mA AFB02505HHB */
87 compatible = "gpio-fan";
88 gpios = <&tps659038_gpio 2 GPIO_ACTIVE_HIGH>;
89 gpio-fan,speed-map = <0 0>,
94 extcon_usb1: extcon_usb1 {
95 compatible = "linux,extcon-usb-gpio";
96 id-gpio = <&gpio7 25 GPIO_ACTIVE_HIGH>;
97 pinctrl-names = "default";
98 pinctrl-0 = <&extcon_usb1_pins>;
101 extcon_usb2: extcon_usb2 {
102 compatible = "linux,extcon-usb-gpio";
103 id-gpio = <&gpio7 24 GPIO_ACTIVE_HIGH>;
104 pinctrl-names = "default";
105 pinctrl-0 = <&extcon_usb2_pins>;
109 compatible = "hdmi-connector";
115 hdmi_connector_in: endpoint {
116 remote-endpoint = <&tpd12s015_out>;
122 compatible = "ti,tpd12s015";
124 pinctrl-names = "default";
125 pinctrl-0 = <&tpd12s015_pins>;
127 gpios = <&gpio7 10 GPIO_ACTIVE_HIGH>, /* gpio7_10, CT CP HPD */
128 <&gpio6 28 GPIO_ACTIVE_HIGH>, /* gpio6_28, LS OE */
129 <&gpio7 12 GPIO_ACTIVE_HIGH>; /* gpio7_12/sp1_cs2, HPD */
132 #address-cells = <1>;
138 tpd12s015_in: endpoint {
139 remote-endpoint = <&hdmi_out>;
146 tpd12s015_out: endpoint {
147 remote-endpoint = <&hdmi_connector_in>;
155 leds_pins_default: leds_pins_default {
156 pinctrl-single,pins = <
157 0x3a8 (PIN_OUTPUT | MUX_MODE14) /* spi1_d1.gpio7_8 */
158 0x3ac (PIN_OUTPUT | MUX_MODE14) /* spi1_d0.gpio7_9 */
159 0x3c0 (PIN_OUTPUT | MUX_MODE14) /* spi2_sclk.gpio7_14 */
160 0x3c4 (PIN_OUTPUT | MUX_MODE14) /* spi2_d1.gpio7_15 */
164 i2c1_pins_default: i2c1_pins_default {
165 pinctrl-single,pins = <
166 0x400 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda.sda */
167 0x404 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl.scl */
171 hdmi_pins: pinmux_hdmi_pins {
172 pinctrl-single,pins = <
173 0x408 (PIN_INPUT | MUX_MODE1) /* i2c2_sda.hdmi1_ddc_scl */
174 0x40c (PIN_INPUT | MUX_MODE1) /* i2c2_scl.hdmi1_ddc_sda */
178 i2c3_pins_default: i2c3_pins_default {
179 pinctrl-single,pins = <
180 0x2a4 (PIN_INPUT| MUX_MODE10) /* mcasp1_aclkx.i2c3_sda */
181 0x2a8 (PIN_INPUT| MUX_MODE10) /* mcasp1_fsx.i2c3_scl */
185 uart3_pins_default: uart3_pins_default {
186 pinctrl-single,pins = <
187 0x3f8 (PIN_INPUT_SLEW | MUX_MODE2) /* uart2_ctsn.uart3_rxd */
188 0x3fc (PIN_INPUT_SLEW | MUX_MODE1) /* uart2_rtsn.uart3_txd */
192 mmc1_pins_default: mmc1_pins_default {
193 pinctrl-single,pins = <
194 0x36c (PIN_INPUT | MUX_MODE14) /* mmc1sdcd.gpio219 */
195 0x354 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */
196 0x358 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */
197 0x35c (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */
198 0x360 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */
199 0x364 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */
200 0x368 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */
204 mmc2_pins_default: mmc2_pins_default {
205 pinctrl-single,pins = <
206 0x9c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a23.mmc2_clk */
207 0xb0 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_cs1.mmc2_cmd */
208 0xa0 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a24.mmc2_dat0 */
209 0xa4 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a25.mmc2_dat1 */
210 0xa8 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a26.mmc2_dat2 */
211 0xac (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a27.mmc2_dat3 */
212 0x8c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a19.mmc2_dat4 */
213 0x90 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a20.mmc2_dat5 */
214 0x94 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a21.mmc2_dat6 */
215 0x98 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */
219 cpsw_pins_default: cpsw_pins_default {
220 pinctrl-single,pins = <
222 0x250 (PIN_OUTPUT | MUX_MODE0) /* rgmii1_tclk */
223 0x254 (PIN_OUTPUT | MUX_MODE0) /* rgmii1_tctl */
224 0x258 (PIN_OUTPUT | MUX_MODE0) /* rgmii1_td3 */
225 0x25c (PIN_OUTPUT | MUX_MODE0) /* rgmii1_td2 */
226 0x260 (PIN_OUTPUT | MUX_MODE0) /* rgmii1_td1 */
227 0x264 (PIN_OUTPUT | MUX_MODE0) /* rgmii1_td0 */
228 0x268 (PIN_INPUT | MUX_MODE0) /* rgmii1_rclk */
229 0x26c (PIN_INPUT | MUX_MODE0) /* rgmii1_rctl */
230 0x270 (PIN_INPUT | MUX_MODE0) /* rgmii1_rd3 */
231 0x274 (PIN_INPUT | MUX_MODE0) /* rgmii1_rd2 */
232 0x278 (PIN_INPUT | MUX_MODE0) /* rgmii1_rd1 */
233 0x27c (PIN_INPUT | MUX_MODE0) /* rgmii1_rd0 */
236 0x198 (PIN_OUTPUT | MUX_MODE3) /* rgmii2_tclk */
237 0x19c (PIN_OUTPUT | MUX_MODE3) /* rgmii2_tctl */
238 0x1a0 (PIN_OUTPUT | MUX_MODE3) /* rgmii2_td3 */
239 0x1a4 (PIN_OUTPUT | MUX_MODE3) /* rgmii2_td2 */
240 0x1a8 (PIN_OUTPUT | MUX_MODE3) /* rgmii2_td1 */
241 0x1ac (PIN_OUTPUT | MUX_MODE3) /* rgmii2_td0 */
242 0x1b0 (PIN_INPUT | MUX_MODE3) /* rgmii2_rclk */
243 0x1b4 (PIN_INPUT | MUX_MODE3) /* rgmii2_rctl */
244 0x1b8 (PIN_INPUT | MUX_MODE3) /* rgmii2_rd3 */
245 0x1bc (PIN_INPUT | MUX_MODE3) /* rgmii2_rd2 */
246 0x1c0 (PIN_INPUT | MUX_MODE3) /* rgmii2_rd1 */
247 0x1c4 (PIN_INPUT | MUX_MODE3) /* rgmii2_rd0 */
252 cpsw_pins_sleep: cpsw_pins_sleep {
253 pinctrl-single,pins = <
255 0x250 (PIN_INPUT | MUX_MODE15)
256 0x254 (PIN_INPUT | MUX_MODE15)
257 0x258 (PIN_INPUT | MUX_MODE15)
258 0x25c (PIN_INPUT | MUX_MODE15)
259 0x260 (PIN_INPUT | MUX_MODE15)
260 0x264 (PIN_INPUT | MUX_MODE15)
261 0x268 (PIN_INPUT | MUX_MODE15)
262 0x26c (PIN_INPUT | MUX_MODE15)
263 0x270 (PIN_INPUT | MUX_MODE15)
264 0x274 (PIN_INPUT | MUX_MODE15)
265 0x278 (PIN_INPUT | MUX_MODE15)
266 0x27c (PIN_INPUT | MUX_MODE15)
269 0x198 (PIN_INPUT | MUX_MODE15)
270 0x19c (PIN_INPUT | MUX_MODE15)
271 0x1a0 (PIN_INPUT | MUX_MODE15)
272 0x1a4 (PIN_INPUT | MUX_MODE15)
273 0x1a8 (PIN_INPUT | MUX_MODE15)
274 0x1ac (PIN_INPUT | MUX_MODE15)
275 0x1b0 (PIN_INPUT | MUX_MODE15)
276 0x1b4 (PIN_INPUT | MUX_MODE15)
277 0x1b8 (PIN_INPUT | MUX_MODE15)
278 0x1bc (PIN_INPUT | MUX_MODE15)
279 0x1c0 (PIN_INPUT | MUX_MODE15)
280 0x1c4 (PIN_INPUT | MUX_MODE15)
284 davinci_mdio_pins_default: davinci_mdio_pins_default {
285 pinctrl-single,pins = <
287 0x23c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_mclk */
288 0x240 (PIN_INPUT_PULLUP | MUX_MODE0) /* mdio_d */
292 davinci_mdio_pins_sleep: davinci_mdio_pins_sleep {
293 pinctrl-single,pins = <
294 0x23c (PIN_INPUT | MUX_MODE15)
295 0x240 (PIN_INPUT | MUX_MODE15)
299 tps659038_pins_default: tps659038_pins_default {
300 pinctrl-single,pins = <
301 0x418 (PIN_INPUT_PULLUP | MUX_MODE14) /* wakeup0.gpio1_0 */
305 tmp102_pins_default: tmp102_pins_default {
306 pinctrl-single,pins = <
307 0x3C8 (PIN_INPUT_PULLUP | MUX_MODE14) /* spi2_d0.gpio7_16 */
311 mcp79410_pins_default: mcp79410_pins_default {
312 pinctrl-single,pins = <
313 0x424 (PIN_INPUT_PULLUP | MUX_MODE1) /* wakeup3.sys_nirq1 */
317 usb1_pins: pinmux_usb1_pins {
318 pinctrl-single,pins = <
319 0x280 (PIN_INPUT_SLEW | MUX_MODE0) /* usb1_drvvbus */
323 extcon_usb1_pins: extcon_usb1_pins {
324 pinctrl-single,pins = <
325 0x3ec (PIN_INPUT_PULLUP | MUX_MODE14) /* uart1_rtsn.gpio7_25 */
329 extcon_usb2_pins: extcon_usb2_pins {
330 pinctrl-single,pins = <
331 0x3e8 (PIN_INPUT_PULLUP | MUX_MODE14) /* uart1_ctsn.gpio7_24 */
335 tpd12s015_pins: pinmux_tpd12s015_pins {
336 pinctrl-single,pins = <
337 0x3b0 (PIN_OUTPUT | MUX_MODE14) /* gpio7_10 CT_CP_HPD */
338 0x3b8 (PIN_INPUT_PULLDOWN | MUX_MODE14) /* gpio7_12 HPD */
339 0x370 (PIN_OUTPUT | MUX_MODE14) /* gpio6_28 LS_OE */
346 pinctrl-names = "default";
347 pinctrl-0 = <&i2c1_pins_default>;
348 clock-frequency = <400000>;
350 tps659038: tps659038@58 {
351 compatible = "ti,tps659038";
353 interrupt-parent = <&gpio1>;
354 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
356 pinctrl-names = "default";
357 pinctrl-0 = <&tps659038_pins_default>;
359 #interrupt-cells = <2>;
360 interrupt-controller;
362 ti,system-power-controller;
365 compatible = "ti,tps659038-pmic";
370 regulator-name = "smps12";
371 regulator-min-microvolt = < 850000>;
372 regulator-max-microvolt = <1250000>;
379 regulator-name = "smps3";
380 regulator-min-microvolt = <1350000>;
381 regulator-max-microvolt = <1350000>;
387 /* VDD_DSPEVE, VDD_IVA, VDD_GPU */
388 regulator-name = "smps45";
389 regulator-min-microvolt = < 850000>;
390 regulator-max-microvolt = <1150000>;
397 regulator-name = "smps6";
398 regulator-min-microvolt = <850000>;
399 regulator-max-microvolt = <1030000>;
408 regulator-name = "smps8";
409 regulator-min-microvolt = <1800000>;
410 regulator-max-microvolt = <1800000>;
419 regulator-name = "ldo1";
420 regulator-min-microvolt = <1800000>;
421 regulator-max-microvolt = <3300000>;
427 regulator-name = "ldo2";
428 regulator-min-microvolt = <3300000>;
429 regulator-max-microvolt = <3300000>;
436 regulator-name = "ldo3";
437 regulator-min-microvolt = <1800000>;
438 regulator-max-microvolt = <1800000>;
445 regulator-name = "ldo9";
446 regulator-min-microvolt = <1050000>;
447 regulator-max-microvolt = <1050000>;
454 regulator-name = "ldoln";
455 regulator-min-microvolt = <1800000>;
456 regulator-max-microvolt = <1800000>;
462 /* VDDA_3V_USB: VDDA_USBHS33 */
463 regulator-name = "ldousb";
464 regulator-min-microvolt = <3300000>;
465 regulator-max-microvolt = <3300000>;
471 regulator-name = "regen1";
478 tps659038_rtc: tps659038_rtc {
479 compatible = "ti,palmas-rtc";
480 interrupt-parent = <&tps659038>;
481 interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
485 tps659038_pwr_button: tps659038_pwr_button {
486 compatible = "ti,palmas-pwrbutton";
487 interrupt-parent = <&tps659038>;
488 interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
490 ti,palmas-long-press-seconds = <12>;
493 tps659038_gpio: tps659038_gpio {
494 compatible = "ti,palmas-gpio";
501 compatible = "ti,tmp102";
503 pinctrl-names = "default";
504 pinctrl-0 = <&tmp102_pins_default>;
505 interrupt-parent = <&gpio7>;
506 interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
507 #thermal-sensor-cells = <1>;
513 pinctrl-names = "default";
514 pinctrl-0 = <&i2c3_pins_default>;
515 clock-frequency = <400000>;
518 compatible = "microchip,mcp7941x";
520 interrupts = <GIC_SPI 2 IRQ_TYPE_EDGE_RISING>; /* IRQ_SYS_1N */
522 pinctrl-names = "default";
523 pinctrl-0 = <&mcp79410_pins_default>;
525 vcc-supply = <&vdd_3v3>;
536 cpu0-supply = <&smps12_reg>;
537 voltage-tolerance = <1>;
542 interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
543 <&dra7_pmx_core 0x3f8>;
545 pinctrl-names = "default";
546 pinctrl-0 = <&uart3_pins_default>;
551 pinctrl-names = "default", "sleep";
552 pinctrl-0 = <&cpsw_pins_default>;
553 pinctrl-1 = <&cpsw_pins_sleep>;
558 phy_id = <&davinci_mdio>, <1>;
560 dual_emac_res_vlan = <1>;
564 phy_id = <&davinci_mdio>, <2>;
566 dual_emac_res_vlan = <2>;
570 pinctrl-names = "default", "sleep";
571 pinctrl-0 = <&davinci_mdio_pins_default>;
572 pinctrl-1 = <&davinci_mdio_pins_sleep>;
578 pinctrl-names = "default";
579 pinctrl-0 = <&mmc1_pins_default>;
581 vmmc-supply = <&ldo1_reg>;
582 vmmc_aux-supply = <&vdd_3v3>;
584 cd-gpios = <&gpio6 27 0>; /* gpio 219 */
590 pinctrl-names = "default";
591 pinctrl-0 = <&mmc2_pins_default>;
593 vmmc-supply = <&vdd_3v3>;
596 cap-mmc-dual-data-rate;
604 phy-supply = <&ldousb_reg>;
608 phy-supply = <&ldousb_reg>;
613 pinctrl-names = "default";
614 pinctrl-0 = <&usb1_pins>;
618 extcon = <&extcon_usb1>;
622 extcon = <&extcon_usb2>;
626 dr_mode = "peripheral";
630 cpu_alert1: cpu_alert1 {
631 temperature = <50000>; /* millicelsius */
632 hysteresis = <2000>; /* millicelsius */
639 trip = <&cpu_alert1>;
640 cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
645 board_thermal: board_thermal {
646 polling-delay-passive = <1250>; /* milliseconds */
647 polling-delay = <1500>; /* milliseconds */
650 thermal-sensors = <&tmp102 0>;
653 board_alert0: board_alert {
654 temperature = <40000>; /* millicelsius */
655 hysteresis = <2000>; /* millicelsius */
659 board_crit: board_crit {
660 temperature = <105000>; /* millicelsius */
661 hysteresis = <0>; /* millicelsius */
666 board_cooling_maps: cooling-maps {
668 trip = <&board_alert0>;
670 <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
679 vdda_video-supply = <&ldoln_reg>;
684 vdda-supply = <&ldo3_reg>;
686 pinctrl-names = "default";
687 pinctrl-0 = <&hdmi_pins>;
691 remote-endpoint = <&tpd12s015_in>;
697 gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;