Merge tag 'renesas-fixes2-for-v4.13' of https://git.kernel.org/pub/scm/linux/kernel...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / am335x-boneblack-wireless.dts
1 /*
2  * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
3  *
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.
7  */
8 /dts-v1/;
9
10 #include "am33xx.dtsi"
11 #include "am335x-bone-common.dtsi"
12 #include "am335x-boneblack-common.dtsi"
13 #include <dt-bindings/interrupt-controller/irq.h>
14
15 / {
16         model = "TI AM335x BeagleBone Black Wireless";
17         compatible = "ti,am335x-bone-black-wireless", "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
18
19         wlan_en_reg: fixedregulator@2 {
20                 compatible = "regulator-fixed";
21                 regulator-name = "wlan-en-regulator";
22                 regulator-min-microvolt = <1800000>;
23                 regulator-max-microvolt = <1800000>;
24                 startup-delay-us= <70000>;
25
26                 /* WL_EN */
27                 gpio = <&gpio3 9 0>;
28                 enable-active-high;
29         };
30 };
31
32 &am33xx_pinmux {
33         bt_pins: pinmux_bt_pins {
34                 pinctrl-single,pins = <
35                         AM33XX_IOPAD(0x928, PIN_OUTPUT_PULLUP | MUX_MODE7)      /* gmii1_txd0.gpio0_28 - BT_EN */
36                 >;
37         };
38
39         mmc3_pins: pinmux_mmc3_pins {
40                 pinctrl-single,pins = <
41                         AM33XX_IOPAD(0x93c, PIN_INPUT_PULLUP | MUX_MODE6 ) /* (L15) gmii1_rxd1.mmc2_clk */
42                         AM33XX_IOPAD(0x914, PIN_INPUT_PULLUP | MUX_MODE6 ) /* (J16) gmii1_txen.mmc2_cmd */
43                         AM33XX_IOPAD(0x918, PIN_INPUT_PULLUP | MUX_MODE5 ) /* (J17) gmii1_rxdv.mmc2_dat0 */
44                         AM33XX_IOPAD(0x91c, PIN_INPUT_PULLUP | MUX_MODE5 ) /* (J18) gmii1_txd3.mmc2_dat1 */
45                         AM33XX_IOPAD(0x920, PIN_INPUT_PULLUP | MUX_MODE5 ) /* (K15) gmii1_txd2.mmc2_dat2 */
46                         AM33XX_IOPAD(0x908, PIN_INPUT_PULLUP | MUX_MODE5 ) /* (H16) gmii1_col.mmc2_dat3 */
47                 >;
48         };
49
50         uart3_pins: pinmux_uart3_pins {
51                 pinctrl-single,pins = <
52                         AM33XX_IOPAD(0x934, PIN_INPUT_PULLUP | MUX_MODE1)       /* gmii1_rxd3.uart3_rxd */
53                         AM33XX_IOPAD(0x938, PIN_OUTPUT_PULLDOWN | MUX_MODE1)    /* gmii1_rxd2.uart3_txd */
54                         AM33XX_IOPAD(0x948, PIN_INPUT | MUX_MODE3)              /* mdio_data.uart3_ctsn */
55                         AM33XX_IOPAD(0x94c, PIN_OUTPUT_PULLDOWN | MUX_MODE3)    /* mdio_clk.uart3_rtsn */
56                 >;
57         };
58
59         wl18xx_pins: pinmux_wl18xx_pins {
60                 pinctrl-single,pins = <
61                         AM33XX_IOPAD(0x92c, PIN_OUTPUT_PULLDOWN | MUX_MODE7)    /* gmii1_txclk.gpio3_9 WL_EN */
62                         AM33XX_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE7)     /* rmii1_refclk.gpio0_29 WL_IRQ */
63                         AM33XX_IOPAD(0x930, PIN_OUTPUT_PULLUP | MUX_MODE7)      /* gmii1_rxclk.gpio3_10 LS_BUF_EN */
64                 >;
65         };
66 };
67
68 &mac {
69         status = "disabled";
70 };
71
72 &mmc3 {
73         dmas = <&edma_xbar 12 0 1
74                 &edma_xbar 13 0 2>;
75         dma-names = "tx", "rx";
76         status = "okay";
77         vmmc-supply = <&wlan_en_reg>;
78         bus-width = <4>;
79         non-removable;
80         cap-power-off-card;
81         ti,needs-special-hs-handling;
82         keep-power-in-suspend;
83         pinctrl-names = "default";
84         pinctrl-0 = <&mmc3_pins &wl18xx_pins>;
85
86         #address-cells = <1>;
87         #size-cells = <0>;
88         wlcore: wlcore@2 {
89                 compatible = "ti,wl1835";
90                 reg = <2>;
91                 interrupt-parent = <&gpio0>;
92                 interrupts = <29 IRQ_TYPE_EDGE_RISING>;
93         };
94 };
95
96 &uart3 {
97         pinctrl-names = "default";
98         pinctrl-0 = <&uart3_pins &bt_pins>;
99         status = "okay";
100
101         bluetooth {
102                 compatible = "ti,wl1835-st";
103                 enable-gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>;
104         };
105 };
106
107 &gpio3 {
108         ls_buf_en {
109                 gpio-hog;
110                 gpios = <10 GPIO_ACTIVE_HIGH>;
111                 output-high;
112                 line-name = "LS_BUF_EN";
113         };
114 };