ARM: dts: dra72-evm-common: Add wilink8 wlan support
authorHari Nagalla <hnagalla@ti.com>
Fri, 27 Apr 2018 12:08:59 +0000 (17:38 +0530)
committerTony Lindgren <tony@atomide.com>
Thu, 3 May 2018 17:32:15 +0000 (10:32 -0700)
Wilink8 module is a combo wireless connectivity card based
on Texas Instrument's wl18xx solution.

Add support for the wlan capabilities of this module by muxing
the relevant mmc lines, and setting the required device-tree
data.

Signed-off-by: Eyal Reizer <eyalr@ti.com>
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
[nsekhar@ti.com: drop WLAN_EN pinmux. It should be done by bootloader.
                 Also, some commit message adjustments]
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/boot/dts/dra72-evm-common.dtsi
arch/arm/boot/dts/dra72x-mmc-iodelay.dtsi

index 8e3b185..b812140 100644 (file)
                regulator-boot-on;
        };
 
+       evm_3v6: fixedregulator-evm_3v6 {
+               compatible = "regulator-fixed";
+               regulator-name = "evm_3v6";
+               regulator-min-microvolt = <3600000>;
+               regulator-max-microvolt = <3600000>;
+               vin-supply = <&evm_5v0>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
+
        vsys_3v3: fixedregulator-vsys3v3 {
                /* Output 2 of TPS43351QDAPRQ1 on dra72-evm */
                /* Output 2 of LM5140QRWGTQ1 on dra71-evm */
                        clocks = <&atl_clkin2_ck>;
                };
        };
+
+       vmmcwl_fixed: fixedregulator-mmcwl {
+               compatible = "regulator-fixed";
+               regulator-name = "vmmcwl_fixed";
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <1800000>;
+               gpio = <&gpio5 8 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+       };
 };
 
 &dra7_pmx_core {
        max-frequency = <192000000>;
 };
 
+&mmc4 {
+       status = "okay";
+       vmmc-supply = <&evm_3v6>;
+       vqmmc-supply = <&vmmcwl_fixed>;
+       bus-width = <4>;
+       cap-power-off-card;
+       keep-power-in-suspend;
+       non-removable;
+       pinctrl-names = "default", "hs", "sdr12", "sdr25";
+       pinctrl-0 = <&mmc4_pins_default>;
+       pinctrl-1 = <&mmc4_pins_default>;
+       pinctrl-2 = <&mmc4_pins_default>;
+       pinctrl-3 = <&mmc4_pins_default>;
+       #address-cells = <1>;
+       #size-cells = <0>;
+       wifi@2 {
+               compatible = "ti,wl1835";
+               reg = <2>;
+               interrupt-parent = <&gpio5>;
+               interrupts = <7 IRQ_TYPE_EDGE_RISING>;
+       };
+};
+
 &mac {
        status = "okay";
 };
index 088013c..edad87c 100644 (file)
                        DRA7XX_CORE_IOPAD(0x3498, PIN_INPUT_PULLUP | MODE_SELECT | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */
                >;
        };
+
+       mmc4_pins_default: mmc4_pins_default {
+               pinctrl-single,pins = <
+                       DRA7XX_CORE_IOPAD(0x37e8, PIN_INPUT_PULLUP | MUX_MODE3) /* uart1_ctsn.mmc4_clk */
+                       DRA7XX_CORE_IOPAD(0x37ec, PIN_INPUT_PULLUP | MUX_MODE3) /* uart1_rtsn.mmc4_cmd */
+                       DRA7XX_CORE_IOPAD(0x37f0, PIN_INPUT_PULLUP | MUX_MODE3) /* uart2_rxd.mmc4_dat0 */
+                       DRA7XX_CORE_IOPAD(0x37f4, PIN_INPUT_PULLUP | MUX_MODE3) /* uart2_txd.mmc4_dat1 */
+                       DRA7XX_CORE_IOPAD(0x37f8, PIN_INPUT_PULLUP | MUX_MODE3) /* uart2_ctsn.mmc4_dat2 */
+                       DRA7XX_CORE_IOPAD(0x37fc, PIN_INPUT_PULLUP | MUX_MODE3) /* uart2_rtsn.mmc4_dat3 */
+               >;
+       };
 };
 
 &dra7_iodelay_core {