initialize wl12xx from the device tree
authorImre Kaloz <kaloz@openwrt.org>
Wed, 27 Nov 2013 12:51:35 +0000 (12:51 +0000)
committerImre Kaloz <kaloz@openwrt.org>
Wed, 27 Nov 2013 12:51:35 +0000 (12:51 +0000)
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 38934

target/linux/omap/patches-3.12/950-am335x-evmsk-wilink-dts.patch [new file with mode: 0644]

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 (file)
index 0000000..00fd0b2
--- /dev/null
@@ -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>;