summaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/657-0030-rtl8xxxu-Initialize-GPIO-settings-for-8188eu.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/mac80211/patches/657-0030-rtl8xxxu-Initialize-GPIO-settings-for-8188eu.patch')
-rw-r--r--package/kernel/mac80211/patches/657-0030-rtl8xxxu-Initialize-GPIO-settings-for-8188eu.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/657-0030-rtl8xxxu-Initialize-GPIO-settings-for-8188eu.patch b/package/kernel/mac80211/patches/657-0030-rtl8xxxu-Initialize-GPIO-settings-for-8188eu.patch
new file mode 100644
index 0000000000..33f8602cfe
--- /dev/null
+++ b/package/kernel/mac80211/patches/657-0030-rtl8xxxu-Initialize-GPIO-settings-for-8188eu.patch
@@ -0,0 +1,40 @@
+From b550ef4873a9828b8093db996456b98c017a31fc Mon Sep 17 00:00:00 2001
+From: Jes Sorensen <Jes.Sorensen@redhat.com>
+Date: Fri, 22 Jul 2016 12:56:30 -0400
+Subject: [PATCH] rtl8xxxu: Initialize GPIO settings for 8188eu
+
+This matches what the vendor driver does, but is actually opposite of
+what it does for 8192eu.
+
+Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
+---
+ drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 7 +++++++
+ drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_regs.h | 1 +
+ 2 files changed, 8 insertions(+)
+
+--- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
++++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
+@@ -4210,6 +4210,13 @@ static int rtl8xxxu_init_device(struct i
+ * Reset USB mode switch setting
+ */
+ rtl8xxxu_write8(priv, REG_ACLK_MON, 0x00);
++ } else if (priv->rtl_chip == RTL8188E) {
++ /*
++ * Init GPIO settings for 8188e
++ */
++ val8 = rtl8xxxu_read8(priv, REG_GPIO_MUXCFG);
++ val8 &= ~GPIO_MUXCFG_IO_SEL_ENBT;
++ rtl8xxxu_write8(priv, REG_GPIO_MUXCFG, val8);
+ }
+
+ rtl8723a_phy_lc_calibrate(priv);
+--- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_regs.h
++++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_regs.h
+@@ -143,6 +143,7 @@
+ #define REG_CAL_TIMER 0x003c
+ #define REG_ACLK_MON 0x003e
+ #define REG_GPIO_MUXCFG 0x0040
++#define GPIO_MUXCFG_IO_SEL_ENBT BIT(5)
+ #define REG_GPIO_IO_SEL 0x0042
+ #define REG_MAC_PINMUX_CFG 0x0043
+ #define REG_GPIO_PIN_CTRL 0x0044