initialize wl12xx from the device tree
[openwrt/openwrt.git] / target / linux / omap / patches-3.12 / 950-am335x-evmsk-wilink-dts.patch
1 --- a/arch/arm/boot/dts/am335x-evmsk.dts
2 +++ b/arch/arm/boot/dts/am335x-evmsk.dts
3 @@ -14,6 +14,7 @@
4 /dts-v1/;
5
6 #include "am33xx.dtsi"
7 +#include <dt-bindings/interrupt-controller/irq.h>
8 #include <dt-bindings/pwm/pwm.h>
9
10 / {
11 @@ -200,6 +201,33 @@
12 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* rmii1_ref_clk.mcasp1_axr3 */
13 >;
14 };
15 +
16 + wilink_pins: pinmux_wilink_pins {
17 + pinctrl-single,pins = <
18 + 0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_31 */
19 + 0x7c (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_csn0.gpio1_29 */
20 + 0x80 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
21 + 0x84 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
22 + 0x00 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
23 + 0x04 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
24 + 0x08 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
25 + 0x0c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
26 + >;
27 + };
28 + };
29 +
30 + wlan {
31 + compatible = "ti,wilink6";
32 + interrupt-parent = <&gpio0>;
33 + interrupts = <31 IRQ_TYPE_LEVEL_HIGH>;
34 + clocks = <&refclock>;
35 + clock-names = "refclock";
36 +
37 + refclock: refclock {
38 + compatible = "ti,wilink-clock";
39 + #clock-cells = <0>;
40 + clock-frequency = <38400000>;
41 + };
42 };
43
44 ocp {
45 @@ -335,6 +363,16 @@
46 regulator-boot-on;
47 };
48
49 + vmmc_wl: fixedregulator@2 {
50 + compatible = "regulator-fixed";
51 + regulator-name = "vmmc-wl";
52 + regulator-min-microvolt = <1800000>;
53 + regulator-max-microvolt = <1800000>;
54 + gpio = <&gpio1 29 0>;
55 + startup-delay-us = <70000>;
56 + enable-active-high;
57 + };
58 +
59 leds {
60 pinctrl-names = "default";
61 pinctrl-0 = <&user_leds_s0>;
62 @@ -535,6 +573,16 @@
63 status = "okay";
64 };
65
66 +&mmc2 {
67 + status = "okay";
68 + vmmc-supply = <&vmmc_wl>;
69 + bus-width = <4>;
70 + pinctrl-names = "default";
71 + pinctrl-0 = <&wilink_pins>;
72 + ti,non-removable;
73 + keep-power-in-suspend;
74 +};
75 +
76 &mcasp1 {
77 pinctrl-names = "default";
78 pinctrl-0 = <&mcasp1_pins>;