[PATCH 06/18] ARM: dts: omap3-overo: Enable MMC2

Florian Vaussard florian.vaussard at epfl.ch
Thu Jan 9 11:48:00 EST 2014


MMC2 is used by the on-board WiFi module populated on some boards
(based on Marvell Libertas 8688 SDIO).

Note: currently WiFi only works on cold boot, as the module is not
properly reset (missing binding for the GPIO reset).

Signed-off-by: Florian Vaussard <florian.vaussard at epfl.ch>
---
 arch/arm/boot/dts/omap3-overo.dtsi | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/arch/arm/boot/dts/omap3-overo.dtsi b/arch/arm/boot/dts/omap3-overo.dtsi
index d48f25c..9ce9591 100644
--- a/arch/arm/boot/dts/omap3-overo.dtsi
+++ b/arch/arm/boot/dts/omap3-overo.dtsi
@@ -32,6 +32,12 @@
 		ti,mcbsp = <&mcbsp2>;
 		ti,codec = <&twl_audio>;
 	};
+
+	vlibertas: regulator-vlibertas {
+		compatible = "regulator-fixed";
+		regulator-name = "vlibertas";
+		regulator-always-on;
+	};
 };
 
 &omap3_pmx_core {
@@ -59,6 +65,17 @@
 			OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat3.sdmmc1_dat3 */
 		>;
 	};
+
+	mmc2_pins: pinmux_mmc2_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_clk.sdmmc2_clk */
+			OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_cmd.sdmmc2_cmd */
+			OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat0.sdmmc2_dat0 */
+			OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat1.sdmmc2_dat1 */
+			OMAP3_CORE1_IOPAD(0x2160, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat2.sdmmc2_dat2 */
+			OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat3.sdmmc2_dat3 */
+		>;
+	};
 };
 
 &i2c1 {
@@ -102,7 +119,11 @@
 
 /* optional on board WiFi */
 &mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_pins>;
+	vmmc-supply = <&vlibertas>;
 	bus-width = <4>;
+	non-removable;
 };
 
 &twl_gpio {
-- 
1.8.1.2




More information about the linux-arm-kernel mailing list