aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2021-10-16 18:04:40 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2021-10-19 00:02:23 +0200
commita4fcfb4d391e69c156f692a1e3f4c6daaf4e019b (patch)
tree558c0537d48d203c8638da11b7e5f1715f7dc57d
parented26b64bf0c41afde529e1924d6a449b77ecf90c (diff)
downloadbackports-a4fcfb4d391e69c156f692a1e3f4c6daaf4e019b.tar.gz
backports: Add new r8188eu driver
This driver replaces the rtl8188eu driver which was removed upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
-rw-r--r--backport/defconfigs/wifi1
-rw-r--r--copy-list1
-rw-r--r--patches/0013-fix-makefile-includes/r8188eu.patch12
-rw-r--r--patches/0028-select_queue/r8188eu.patch18
4 files changed, 32 insertions, 0 deletions
diff --git a/backport/defconfigs/wifi b/backport/defconfigs/wifi
index be74147d..936203d9 100644
--- a/backport/defconfigs/wifi
+++ b/backport/defconfigs/wifi
@@ -87,6 +87,7 @@ CPTCFG_PCMCIA_HERMES=m
CPTCFG_PCMCIA_SPECTRUM=m
CPTCFG_PLX_HERMES=m
CPTCFG_QTNFMAC_PCIE=m
+CPTCFG_R8188EU=m
CPTCFG_RSI_91X=m
CPTCFG_RT2400PCI=m
CPTCFG_RT2500PCI=m
diff --git a/copy-list b/copy-list
index b9fdd2ff..be8539d4 100644
--- a/copy-list
+++ b/copy-list
@@ -126,6 +126,7 @@ drivers/net/usb/usbnet.c
drivers/staging/Makefile
drivers/staging/Kconfig
+drivers/staging/r8188eu/
drivers/staging/rtl8723bs/
drivers/usb/class/Makefile
diff --git a/patches/0013-fix-makefile-includes/r8188eu.patch b/patches/0013-fix-makefile-includes/r8188eu.patch
new file mode 100644
index 00000000..b1c32f21
--- /dev/null
+++ b/patches/0013-fix-makefile-includes/r8188eu.patch
@@ -0,0 +1,12 @@
+Needed for kernel <= 5.7
+
+--- a/drivers/staging/r8188eu/core/rtw_security.c
++++ b/drivers/staging/r8188eu/core/rtw_security.c
+@@ -7,6 +7,7 @@
+ #include "../include/drv_types.h"
+ #include "../include/wifi.h"
+ #include "../include/osdep_intf.h"
++#include <linux/crc32.h>
+
+ /* WEP related ===== */
+
diff --git a/patches/0028-select_queue/r8188eu.patch b/patches/0028-select_queue/r8188eu.patch
new file mode 100644
index 00000000..d12fa9c4
--- /dev/null
+++ b/patches/0028-select_queue/r8188eu.patch
@@ -0,0 +1,18 @@
+--- a/drivers/staging/r8188eu/os_dep/os_intfs.c
++++ b/drivers/staging/r8188eu/os_dep/os_intfs.c
+@@ -635,7 +635,15 @@ static unsigned int rtw_classify8021d(st
+ return dscp >> 5;
+ }
+
++#if LINUX_VERSION_IS_GEQ(5,2,0)
+ static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, struct net_device *sb_dev)
++#elif LINUX_VERSION_IS_GEQ(4,19,0)
++static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, struct net_device *sb_dev,
++ select_queue_fallback_t fallback)
++#else
++static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, void *accel_priv,
++ select_queue_fallback_t fallback)
++#endif
+ {
+ struct adapter *padapter = rtw_netdev_priv(dev);
+ struct mlme_priv *pmlmepriv = &padapter->mlmepriv;