summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-11-27 12:51:35 +0000
committerkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-11-27 12:51:35 +0000
commit3b43dc52fdbd283889f940c547f4c47c42e2c420 (patch)
tree8a1148a9fbd8c8ae99e90d354e884e2d0884867b
parent0a6aed77e5fe9b30a915f3eebb86a3e2f49d5b2c (diff)
[omap]: initialize wl12xx from the device tree
Signed-off-by: Imre Kaloz <kaloz@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38934 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/omap/patches-3.12/950-am335x-evmsk-wilink-dts.patch78
1 files changed, 78 insertions, 0 deletions
diff --git a/target/linux/omap/patches-3.12/950-am335x-evmsk-wilink-dts.patch b/target/linux/omap/patches-3.12/950-am335x-evmsk-wilink-dts.patch
new file mode 100644
index 0000000000..00fd0b2c2d
--- /dev/null
+++ b/target/linux/omap/patches-3.12/950-am335x-evmsk-wilink-dts.patch
@@ -0,0 +1,78 @@
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -14,6 +14,7 @@
+ /dts-v1/;
+
+ #include "am33xx.dtsi"
++#include <dt-bindings/interrupt-controller/irq.h>
+ #include <dt-bindings/pwm/pwm.h>
+
+ / {
+@@ -200,6 +201,33 @@
+ 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* rmii1_ref_clk.mcasp1_axr3 */
+ >;
+ };
++
++ wilink_pins: pinmux_wilink_pins {
++ pinctrl-single,pins = <
++ 0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_31 */
++ 0x7c (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_csn0.gpio1_29 */
++ 0x80 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
++ 0x84 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
++ 0x00 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
++ 0x04 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
++ 0x08 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
++ 0x0c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
++ >;
++ };
++ };
++
++ wlan {
++ compatible = "ti,wilink6";
++ interrupt-parent = <&gpio0>;
++ interrupts = <31 IRQ_TYPE_LEVEL_HIGH>;
++ clocks = <&refclock>;
++ clock-names = "refclock";
++
++ refclock: refclock {
++ compatible = "ti,wilink-clock";
++ #clock-cells = <0>;
++ clock-frequency = <38400000>;
++ };
+ };
+
+ ocp {
+@@ -335,6 +363,16 @@
+ regulator-boot-on;
+ };
+
++ vmmc_wl: fixedregulator@2 {
++ compatible = "regulator-fixed";
++ regulator-name = "vmmc-wl";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ gpio = <&gpio1 29 0>;
++ startup-delay-us = <70000>;
++ enable-active-high;
++ };
++
+ leds {
+ pinctrl-names = "default";
+ pinctrl-0 = <&user_leds_s0>;
+@@ -535,6 +573,16 @@
+ status = "okay";
+ };
+
++&mmc2 {
++ status = "okay";
++ vmmc-supply = <&vmmc_wl>;
++ bus-width = <4>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&wilink_pins>;
++ ti,non-removable;
++ keep-power-in-suspend;
++};
++
+ &mcasp1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&mcasp1_pins>;