Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2ba2866f authored by Balaji T K's avatar Balaji T K Committed by Tony Lindgren
Browse files

ARM: dts: omap4-panda-common: Fix pin muxing for wl12xx

pin mux wl12xx_gpio and wl12xx_pins should be part of omap4_pmx_core
and not omap4_pmx_wkup. So, move wl12xx_* to omap4_pmx_core.

Fix the following error message:
pinctrl-single 4a31e040.pinmux: mux offset out of range: 0x38 (0x38)
pinctrl-single 4a31e040.pinmux: could not add functions for pinmux_wl12xx_pins 56x

SDIO card is not detected after moving pin mux to omap4_pmx_core since
sdmmc5_clk pull is disabled. Enable Pull up on sdmmc5_clk to detect SDIO card.

This fixes a regression where WLAN did not work after a warm reset
or after one up/down cycle that happened when we move omap4 to boot
using device tree only. For reference, the kernel bug is described at:

https://bugzilla.kernel.org/show_bug.cgi?id=63821



Cc: stable@vger.kernel.org # v3.10+
Signed-off-by: default avatarBalaji T K <balajitk@ti.com>
[tony@atomide.com: update comments to describe the regression]
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent 9cb238c0
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -246,15 +246,6 @@
			0xf0 (PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c4_sda */
		>;
	};
};

&omap4_pmx_wkup {
	led_wkgpio_pins: pinmux_leds_wkpins {
		pinctrl-single,pins = <
			0x1a (PIN_OUTPUT | MUX_MODE3)	/* gpio_wk7 */
			0x1c (PIN_OUTPUT | MUX_MODE3)	/* gpio_wk8 */
		>;
	};

	/*
	 * wl12xx GPIO outputs for WLAN_EN, BT_EN, FM_EN, BT_WAKEUP
@@ -274,7 +265,7 @@
		pinctrl-single,pins = <
			0x38 (PIN_INPUT | MUX_MODE3)		/* gpmc_ncs2.gpio_52 */
			0x3a (PIN_INPUT | MUX_MODE3)		/* gpmc_ncs3.gpio_53 */
			0x108 (PIN_OUTPUT | MUX_MODE0)		/* sdmmc5_clk.sdmmc5_clk */
			0x108 (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_clk.sdmmc5_clk */
			0x10a (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_cmd.sdmmc5_cmd */
			0x10c (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_dat0.sdmmc5_dat0 */
			0x10e (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_dat1.sdmmc5_dat1 */
@@ -284,6 +275,15 @@
	};
};

&omap4_pmx_wkup {
	led_wkgpio_pins: pinmux_leds_wkpins {
		pinctrl-single,pins = <
			0x1a (PIN_OUTPUT | MUX_MODE3)	/* gpio_wk7 */
			0x1c (PIN_OUTPUT | MUX_MODE3)	/* gpio_wk8 */
		>;
	};
};

&i2c1 {
	pinctrl-names = "default";
	pinctrl-0 = <&i2c1_pins>;