|
@@ -0,0 +1,398 @@
|
|
|
|
+/*
|
|
|
|
+ * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
|
|
|
|
+ *
|
|
|
|
+ * This program is free software; you can redistribute it and/or modify
|
|
|
|
+ * it under the terms of the GNU General Public License version 2 as
|
|
|
|
+ * published by the Free Software Foundation.
|
|
|
|
+ */
|
|
|
|
+/dts-v1/;
|
|
|
|
+
|
|
|
|
+#include "am33xx_edma-tpcc.dtsi"
|
|
|
|
+#include "am335x-bone-common.dtsi"
|
|
|
|
+#include <dt-bindings/interrupt-controller/irq.h>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/ {
|
|
|
|
+ wlan_en_reg: fixedregulator@2 {
|
|
|
|
+ compatible = "regulator-fixed";
|
|
|
|
+ regulator-name = "wlan-en-regulator";
|
|
|
|
+ regulator-min-microvolt = <1800000>;
|
|
|
|
+ regulator-max-microvolt = <1800000>;
|
|
|
|
+ startup-delay-us= <70000>;
|
|
|
|
+ regulator-always-on;
|
|
|
|
+
|
|
|
|
+ /* WL_EN */
|
|
|
|
+ gpio = <&gpio0 26 0>;
|
|
|
|
+ enable-active-high;
|
|
|
|
+ status = "okay";
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ leds {
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&wl18xx_pins>;
|
|
|
|
+ compatible = "gpio-leds";
|
|
|
|
+
|
|
|
|
+ wl18xx_bt_en {
|
|
|
|
+ label = "wl18xx_bt_en";
|
|
|
|
+ gpios = <&gpio0 23 GPIO_ACTIVE_HIGH>;
|
|
|
|
+ default-state = "off";
|
|
|
|
+ };
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ kim {
|
|
|
|
+ compatible = "kim";
|
|
|
|
+ nshutdown_gpio = <23>; /* gpio0.23 */
|
|
|
|
+ dev_name = "/dev/ttyO1";
|
|
|
|
+ flow_cntrl = <1>;
|
|
|
|
+ baud_rate = <3000000>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ btwilink {
|
|
|
|
+ compatible = "btwilink";
|
|
|
|
+ };
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&am33xx_pinmux {
|
|
|
|
+ wl18xx_pins: pinmux_wl18xx_pins {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x024 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio0.23 BT_EN */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ wlbtbuf_pin: pinmux_wlbtbuf_pin {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x07C ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* gpio1.29 LS_BUF_EN */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ mmc3_pins: pinmux_mmc3_pins {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x08C ( PIN_INPUT | MUX_MODE3 ) /* mmc2_clk */
|
|
|
|
+ 0x088 ( PIN_INPUT | MUX_MODE3 ) /* mmc2_cmd */
|
|
|
|
+ 0x040 ( PIN_INPUT | MUX_MODE7 ) /* gpio1.16 P9.15 */
|
|
|
|
+ 0x030 ( PIN_INPUT | MUX_MODE3 ) /* mmc2_dat0 */
|
|
|
|
+ 0x034 ( PIN_INPUT | MUX_MODE3 ) /* mmc2_dat1 */
|
|
|
|
+ 0x038 ( PIN_INPUT | MUX_MODE3 ) /* mmc2_dat2 */
|
|
|
|
+ 0x03C ( PIN_INPUT | MUX_MODE3 ) /* mmc2_dat3 */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ mmc3_pins_sleep: pinmux_mmc3_pins_sleep {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x08C ( PIN_INPUT | MUX_MODE7 ) /* mmc2_clk */
|
|
|
|
+ 0x088 ( PIN_INPUT | MUX_MODE7 ) /* mmc2_cmd */
|
|
|
|
+ 0x040 ( PIN_INPUT | MUX_MODE7 ) /* gpio1.16 P9.15 */
|
|
|
|
+ 0x030 ( PIN_INPUT | MUX_MODE7 ) /* mmc2_dat0 */
|
|
|
|
+ 0x034 ( PIN_INPUT | MUX_MODE7 ) /* mmc2_dat1 */
|
|
|
|
+ 0x038 ( PIN_INPUT | MUX_MODE7 ) /* mmc2_dat2 */
|
|
|
|
+ 0x03C ( PIN_INPUT | MUX_MODE7 ) /* mmc2_dat3 */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ /* wl18xx card enable/irq GPIOs. */
|
|
|
|
+ wlan_pins: pinmux_wlan_pins {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x028 (PIN_OUTPUT | MUX_MODE7 ) /* gpio0.26 WL_EN */
|
|
|
|
+ 0x02C (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* gpio0.27 WL_IRQ */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ /* wl18xx card enable/irq GPIOs. */
|
|
|
|
+ wlan_pins_sleep: pinmux_wlan_pins_sleep {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x028 (PIN_INPUT | MUX_MODE7 ) /* gpio0.26 WL_EN */
|
|
|
|
+ 0x02C (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* gpio0.27 WL_IRQ */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ uart1_pins_default: pinmux_uart1_pins_default {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x180 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rxd.uart1_rxd */
|
|
|
|
+ 0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart1_txd.uart1_txd */
|
|
|
|
+ 0x178 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda.uart1_ctsn */
|
|
|
|
+ 0x17c (PIN_OUTPUT | MUX_MODE0) /* i2c2_scl.uart1_rtsn */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ uart1_pins_sleep: pinmux_uart1_pins_sleep {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x180 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* uart1_rxd.uart1_rxd */
|
|
|
|
+ 0x184 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* uart1_txd.uart1_txd */
|
|
|
|
+ 0x178 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* i2c2_sda.uart1_ctsn */
|
|
|
|
+ 0x17c (PIN_INPUT_PULLDOWN | MUX_MODE0) /* i2c2_scl.uart1_rtsn */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&uart1 {
|
|
|
|
+ pinctrl-names = "default", "sleep";
|
|
|
|
+ pinctrl-0 = <&uart1_pins_default>;
|
|
|
|
+ pinctrl-1 = <&uart1_pins_sleep>;
|
|
|
|
+ has-hw-flow-control;
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+&mmc3 {
|
|
|
|
+ dmas = <&edma_xbar 12 0 1
|
|
|
|
+ &edma_xbar 13 0 2>;
|
|
|
|
+ dma-names = "tx", "rx";
|
|
|
|
+ status = "okay";
|
|
|
|
+ vmmc-supply = <&wlan_en_reg>;
|
|
|
|
+ bus-width = <4>;
|
|
|
|
+ pinctrl-names = "default", "sleep";
|
|
|
|
+ pinctrl-0 = <&mmc3_pins &wlan_pins &wlbtbuf_pin>;
|
|
|
|
+ pinctrl-1 = <&mmc3_pins_sleep &wlan_pins_sleep &wlbtbuf_pin>;
|
|
|
|
+ ti,non-removable;
|
|
|
|
+ ti,needs-special-hs-handling;
|
|
|
|
+ cap-power-off-card;
|
|
|
|
+ keep-power-in-suspend;
|
|
|
|
+
|
|
|
|
+ #address-cells = <1>;
|
|
|
|
+ #size-cells = <0>;
|
|
|
|
+ wlcore: wlcore@0 {
|
|
|
|
+ compatible = "ti,wl1835";
|
|
|
|
+ reg = <2>;
|
|
|
|
+ interrupt-parent = <&gpio0>;
|
|
|
|
+ interrupts = <27 IRQ_TYPE_EDGE_RISING>;
|
|
|
|
+ };
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+&gpio1 {
|
|
|
|
+ ls_buf_en {
|
|
|
|
+ gpio-hog;
|
|
|
|
+ gpios = <29 GPIO_ACTIVE_HIGH>;
|
|
|
|
+ output-high;
|
|
|
|
+ line-name = "WL_BUF_EN";
|
|
|
|
+ };
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/* ===================================== */
|
|
|
|
+&ldo3_reg {
|
|
|
|
+ regulator-min-microvolt = <1800000>;
|
|
|
|
+ regulator-max-microvolt = <1800000>;
|
|
|
|
+ regulator-always-on;
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&mmc1 {
|
|
|
|
+ vmmc-supply = <&vmmcsd_fixed>;
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&mmc2 {
|
|
|
|
+ vmmc-supply = <&vmmcsd_fixed>;
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&emmc_pins>;
|
|
|
|
+ bus-width = <8>;
|
|
|
|
+ ti,non-removable;
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&am33xx_pinmux {
|
|
|
|
+ gsm_pins: pinmux_gsm_pins {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x048 0x7 /* ehrpwm1a.gpio1_18, OUTPUT | MODE7 */
|
|
|
|
+ 0x04c 0x7 /* ehrpwm1b.gpio1_19, OUTPUT | MODE7 */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ spi1_pins: pinmux_spi1_pins {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x190 (PIN_INPUT_PULLUP | MUX_MODE3) /* mcasp0_aclkx.spi1_sclk */
|
|
|
|
+ 0x194 (PIN_INPUT_PULLUP | MUX_MODE3) /* mcasp0_fsx.spi1_d0 */
|
|
|
|
+ 0x198 (PIN_OUTPUT_PULLUP | MUX_MODE3) /* mcasp0_axr0.spi1_d1 */
|
|
|
|
+ 0x19c (PIN_OUTPUT_PULLUP | MUX_MODE3) /* mcasp0_ahclrk.spi1_cs0 */
|
|
|
|
+ 0x164 (PIN_OUTPUT_PULLUP | MUX_MODE2) /* ecap0_in.pwm0_out */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ uart4_pins_default: pinmux_uart4_pins_default {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x070 (PIN_INPUT_PULLUP | MUX_MODE6) /* gpmc_wait0.uart4_rxd */
|
|
|
|
+ 0x074 (PIN_OUTPUT_PULLDOWN | MUX_MODE6) /* gpmc_wpn.uart4_txd */
|
|
|
|
+ 0x0d0 (PIN_INPUT_PULLUP | MUX_MODE6) /* lcd_data12.uart4_ctsn */
|
|
|
|
+ 0x0d4 (PIN_OUTPUT | MUX_MODE6) /* lcd_data13.uart4_rtsn */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ uart4_pins_sleep: pinmux_uart4_pins_sleep {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x070 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
|
|
+ 0x074 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
|
|
+ 0x0d0 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
|
|
+ 0x0d4 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ uart2_pins_default: pinmux_uart1_pins_default {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x150 (PIN_INPUT_PULLUP | MUX_MODE1) /* uart2_rxd.uart2_rxd */
|
|
|
|
+ 0x154 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* uart2_txd.uart2_txd */
|
|
|
|
+ 0x0c0 (PIN_INPUT_PULLUP | MUX_MODE6) /* uart5_txt.uart2_ctsn */
|
|
|
|
+ 0x0c4 (PIN_OUTPUT | MUX_MODE6) /* uart5_rxd.uart2_rtsn */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ uart2_pins_sleep: pinmux_uart1_pins_sleep {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x150 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* uart2_rxd.uart2_rxd */
|
|
|
|
+ 0x154 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* uart2_txd.uart2_txd */
|
|
|
|
+ 0x0C0 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* uart5_txt.uart2_ctsn */
|
|
|
|
+ 0x0C4 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* uart5_rxd.uart2_rtsn */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ timer7_pins: pinmux_timer7_pins {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x094 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_oen_ren.timer7 */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ timer4_pins: pinmux_timer4_pins {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x090 (PIN_INPUT | MUX_MODE7) /* gpmc_advn_ale.timer4 gpio2_2 */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ profibus_pins_default: pinmux_profibus_pins_default {
|
|
|
|
+ pinctrl-single,pins = <
|
|
|
|
+ 0x158 (PIN_INPUT_PULLUP | MUX_MODE4) /* spi0_d1.uart0_rxd */
|
|
|
|
+ 0x15c (PIN_OUTPUT_PULLDOWN | MUX_MODE4) /* spi0_cs0.uart0_txd */
|
|
|
|
+ 0x1a4 (PIN_OUTPUT | MUX_MODE5) /* mcasp0_fsr.gpio3.19 */
|
|
|
|
+ >;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&timer7 {
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&timer7_pins>;
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&timer4 {
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&timer4_pins>;
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&i2c0 {
|
|
|
|
+ hdmi1: hdmi@70 {
|
|
|
|
+ compatible = "nxp,tda998x";
|
|
|
|
+ reg = <0x70>;
|
|
|
|
+ };
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+&i2c2 {
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&i2c2_pins>;
|
|
|
|
+ status = "okay";
|
|
|
|
+ clock-frequency = <400000>;
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&spi1 {
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&spi1_pins>;
|
|
|
|
+
|
|
|
|
+ clock-frequency = <1000000>;
|
|
|
|
+ status = "okay";
|
|
|
|
+ spi1_0{
|
|
|
|
+ compatible = "spidev";
|
|
|
|
+ reg = <0>;
|
|
|
|
+ spi-max-frequency = <10000000>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ spi1_1{
|
|
|
|
+ compatible = "spidev";
|
|
|
|
+ reg = <1>;
|
|
|
|
+ spi-max-frequency = <10000000>;
|
|
|
|
+ };
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&lcdc {
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&tscadc {
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&am335x_adc {
|
|
|
|
+ ti,adc-channels = <0 1 2 3 4 5 6 7>;
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&uart2 {
|
|
|
|
+ pinctrl-names = "default", "sleep";
|
|
|
|
+ pinctrl-0 = <&uart2_pins_default>;
|
|
|
|
+ pinctrl-1 = <&uart2_pins_sleep>;
|
|
|
|
+ has-hw-flow-control;
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+&uart4 {
|
|
|
|
+ pinctrl-names = "default", "sleep";
|
|
|
|
+ pinctrl-0 = <&uart4_pins_default>;
|
|
|
|
+ pinctrl-1 = <&uart4_pins_sleep>;
|
|
|
|
+ has-hw-flow-control;
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+&pruss {
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&profibus_pins_default>;
|
|
|
|
+ status = "okay";
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/ {
|
|
|
|
+ gpio-leds {
|
|
|
|
+ compatible = "gpio-leds";
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&gsm_pins>;
|
|
|
|
+
|
|
|
|
+ led0 {
|
|
|
|
+ label = "EMERG";
|
|
|
|
+ gpios = <&gpio1 18 0>;
|
|
|
|
+ default-state = "off";
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ led1 {
|
|
|
|
+ label = "IGNIT";
|
|
|
|
+ gpios = <&gpio1 19 0>;
|
|
|
|
+ default-state = "off";
|
|
|
|
+ };
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ pwm7: dmtimer-pwm@7 {
|
|
|
|
+ compatible = "ti,omap-dmtimer-pwm";
|
|
|
|
+ ti,timers = <&timer7>;
|
|
|
|
+ #pwm-cells = <3>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ pwm-beeper {
|
|
|
|
+ compatible = "pwm-beeper";
|
|
|
|
+ pwms = <&pwm7 0 0 0>;
|
|
|
|
+ };
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/ {
|
|
|
|
+ vendorinfo {
|
|
|
|
+ vendor_name = "GfA Display001";
|
|
|
|
+ display_dtb = "Display001_cape.dtb";
|
|
|
|
+ display_physical_width = "96"; /* in mm */
|
|
|
|
+ display_physical_height = "55"; /* in mm */
|
|
|
|
+ };
|
|
|
|
+};
|