diff --git a/config/kernel/linux-meson64-current.config b/config/kernel/linux-meson64-current.config index 7ee3fbbb22..4ea4ab43ba 100644 --- a/config/kernel/linux-meson64-current.config +++ b/config/kernel/linux-meson64-current.config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 5.10.10 Kernel Configuration +# Linux/arm64 5.10.16 Kernel Configuration # CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 8.3.0" CONFIG_CC_IS_GCC=y @@ -3354,6 +3354,7 @@ CONFIG_WILINK_PLATFORM_DATA=y CONFIG_RTL8723DU=m CONFIG_RTL8723DS=m CONFIG_RTL8822BU=m +CONFIG_RTL8188EU=m CONFIG_RTL8821CU=m CONFIG_88XXAU=m CONFIG_RTL8192EU=m @@ -6897,7 +6898,6 @@ CONFIG_USB_BDC_UDC=y # # Platform Support # -CONFIG_USB_BDC_PCI=y # CONFIG_USB_AMD5536UDC is not set # CONFIG_USB_NET2272 is not set # CONFIG_USB_NET2280 is not set diff --git a/config/kernel/linux-sunxi-current.config b/config/kernel/linux-sunxi-current.config index c41c31b53d..addb41e0ac 100644 --- a/config/kernel/linux-sunxi-current.config +++ b/config/kernel/linux-sunxi-current.config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 5.10.15 Kernel Configuration +# Linux/arm 5.10.16 Kernel Configuration # CONFIG_CC_VERSION_TEXT="arm-linux-gnueabihf-gcc (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 8.3.0" CONFIG_CC_IS_GCC=y @@ -2640,6 +2640,7 @@ CONFIG_WLAN_VENDOR_TI=y CONFIG_RTL8723DU=m CONFIG_RTL8723DS=m CONFIG_RTL8822BU=m +CONFIG_RTL8188EU=m CONFIG_RTL8821CU=m CONFIG_WLAN_VENDOR_XRADIO=m CONFIG_XRADIO_NON_POWER_OF_TWO_BLOCKSIZES=y @@ -2996,7 +2997,7 @@ CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_VIRTIO_CONSOLE=m # CONFIG_IPMI_HANDLER is not set # CONFIG_IPMB_DEVICE_INTERFACE is not set -CONFIG_HW_RANDOM=m +CONFIG_HW_RANDOM=y # CONFIG_HW_RANDOM_TIMERIOMEM is not set # CONFIG_HW_RANDOM_BA431 is not set CONFIG_HW_RANDOM_VIRTIO=m @@ -7351,7 +7352,7 @@ CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_TEST=m CONFIG_CRYPTO_SIMD=m -CONFIG_CRYPTO_ENGINE=m +CONFIG_CRYPTO_ENGINE=y # # Public-key cryptography @@ -7512,7 +7513,7 @@ CONFIG_CRYPTO_DEV_SUN8I_CE_HASH=y CONFIG_CRYPTO_DEV_SUN8I_CE_PRNG=y CONFIG_CRYPTO_DEV_SUN8I_CE_TRNG=y CONFIG_CRYPTO_DEV_SUN8I_SS=y -# CONFIG_CRYPTO_DEV_SUN8I_SS_DEBUG is not set +# CONFIG_CRYPTO_DEV_SUN8I_SS_DEBUG is not set CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG=y CONFIG_CRYPTO_DEV_SUN8I_SS_HASH=y # CONFIG_CRYPTO_DEV_ATMEL_ECC is not set diff --git a/config/kernel/linux-sunxi64-current.config b/config/kernel/linux-sunxi64-current.config index 86d14f7d98..cc2cd5f5e7 100644 --- a/config/kernel/linux-sunxi64-current.config +++ b/config/kernel/linux-sunxi64-current.config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 5.10.15 Kernel Configuration +# Linux/arm64 5.10.16 Kernel Configuration # CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 8.3.0" CONFIG_CC_IS_GCC=y @@ -2613,6 +2613,7 @@ CONFIG_RTW88=m CONFIG_RTL8723DU=m CONFIG_RTL8723DS=m CONFIG_RTL8822BU=m +CONFIG_RTL8188EU=m CONFIG_RTL8821CU=m # CONFIG_WLAN_VENDOR_XRADIO is not set CONFIG_88XXAU=m diff --git a/lib/compilation-prepare.sh b/lib/compilation-prepare.sh index fa68be9554..5be53c415c 100644 --- a/lib/compilation-prepare.sh +++ b/lib/compilation-prepare.sh @@ -422,6 +422,9 @@ compilation_prepare() sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8811cu\/Kconfig"' \ "$kerneldir/drivers/net/wireless/Kconfig" + # add support for K5.11+ + process_patch_file "${SRC}/patch/misc/wireless-rtl8811cu.patch" "applying" + fi diff --git a/patch/kernel/imx6-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/imx6-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/imx6-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/meson-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/meson-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/meson-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/meson64-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/meson64-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/meson64-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/meson64-dev/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/meson64-dev/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/meson64-dev/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/mvebu-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/mvebu-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/mvebu-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/mvebu64-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/mvebu64-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/mvebu64-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/odroidxu4-dev/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/odroidxu4-dev/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/odroidxu4-dev/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/rk322x-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/rk322x-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/rk322x-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/rk322x-dev/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/rk322x-dev/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/rk322x-dev/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/rockchip-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/rockchip-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/rockchip-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/rockchip64-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/rockchip64-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/rockchip64-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/rockchip64-dev/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/rockchip64-dev/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/rockchip64-dev/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/sunxi-current/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/sunxi-current/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/sunxi-current/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/kernel/sunxi-dev/wifi-4004-fix-cfg80211-for-5.8.patch b/patch/kernel/sunxi-dev/wifi-4004-fix-cfg80211-for-5.8.patch deleted file mode 100644 index 00148fb1cf..0000000000 --- a/patch/kernel/sunxi-dev/wifi-4004-fix-cfg80211-for-5.8.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -index c0df148..9bff924 100755 ---- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c -@@ -7143,6 +7143,33 @@ exit: - return ret; - } - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ -+static void -+cfg80211_rtw_update_mgmt_frame_registrations(struct wiphy *wiphy, -+ struct wireless_dev *wdev, -+ struct mgmt_frame_regs *upd) -+{ -+ struct net_device *ndev = wdev_to_ndev(wdev); -+ struct rtw_wdev_priv *pwdev_priv; -+ _adapter *adapter; -+ -+ if (ndev == NULL) -+ return; -+ -+ adapter = (_adapter *)rtw_netdev_priv(ndev); -+ pwdev_priv = adapter_wdev_data(adapter); -+ -+#ifdef CONFIG_DEBUG_CFG80211 -+ RTW_INFO(FUNC_ADPT_FMT" stypes:%x\n", FUNC_ADPT_ARG(adapter), -+ upd->interface_stypes); -+#endif -+ -+ /* not implemented, see bellow */ -+} -+ -+#else -+ - static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) - struct wireless_dev *wdev, -@@ -7187,6 +7214,8 @@ exit: - return; - } - -+#endif -+ - #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) - static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, - struct net_device *ndev, -@@ -9457,7 +9486,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { - - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) - .mgmt_tx = cfg80211_rtw_mgmt_tx, -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)) -+ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_registrations, -+#else - .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, -+#endif - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) - .action = cfg80211_rtw_mgmt_tx, - #endif diff --git a/patch/misc/wireless-rtl8811cu.patch b/patch/misc/wireless-rtl8811cu.patch new file mode 100644 index 0000000000..aeabd19d06 --- /dev/null +++ b/patch/misc/wireless-rtl8811cu.patch @@ -0,0 +1,154 @@ +From 79b1aa78b51060fb21f12ee3057ded88c8610315 Mon Sep 17 00:00:00 2001 +From: Igor Pecovnik +Date: Mon, 15 Feb 2021 15:24:19 +0100 +Subject: [PATCH] wifiiii + +Signed-off-by: Igor Pecovnik +--- + .../rtl8811cu/os_dep/linux/ioctl_cfg80211.c | 24 ++++++++----------- + .../wireless/rtl8811cu/os_dep/osdep_service.c | 22 +++++++++++++---- + 2 files changed, 28 insertions(+), 18 deletions(-) + +diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c +index c0df148f5..579bbca73 100755 +--- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c ++++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c +@@ -7143,6 +7143,11 @@ static int cfg80211_rtw_mgmt_tx(struct wiphy *wiphy, + return ret; + } + ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0)) ++static void cfg80211_rtw_update_mgmt_frame_register(struct wiphy *wiphy, ++ struct wireless_dev *wdev, ++ struct mgmt_frame_regs *upd) ++#else + static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) + struct wireless_dev *wdev, +@@ -7150,6 +7155,7 @@ static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, + struct net_device *ndev, + #endif + u16 frame_type, bool reg) ++#endif + { + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) + struct net_device *ndev = wdev_to_ndev(wdev); +@@ -7169,20 +7175,6 @@ static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, + frame_type, reg); + #endif + +- /* Wait QC Verify */ +- return; +- +- switch (frame_type) { +- case IEEE80211_STYPE_PROBE_REQ: /* 0x0040 */ +- SET_CFG80211_REPORT_MGMT(pwdev_priv, IEEE80211_STYPE_PROBE_REQ, reg); +- break; +- case IEEE80211_STYPE_ACTION: /* 0x00D0 */ +- SET_CFG80211_REPORT_MGMT(pwdev_priv, IEEE80211_STYPE_ACTION, reg); +- break; +- default: +- break; +- } +- + exit: + return; + } +@@ -9457,7 +9449,11 @@ static struct cfg80211_ops rtw_cfg80211_ops = { + + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) + .mgmt_tx = cfg80211_rtw_mgmt_tx, ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0)) ++ .update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_register, ++#else + .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, ++#endif + #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) + .action = cfg80211_rtw_mgmt_tx, + #endif +diff --git a/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c b/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c +index c27d3b0ad..c7dd6a6d7 100755 +--- a/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c ++++ b/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c +@@ -2193,15 +2193,18 @@ static int isFileReadable(const char *path, u32 *sz) + { + struct file *fp; + int ret = 0; ++#ifdef set_fs + mm_segment_t oldfs; ++#endif + char buf; + + fp = filp_open(path, O_RDONLY, 0); + if (IS_ERR(fp)) + ret = PTR_ERR(fp); + else { ++#ifdef set_fs + oldfs = get_fs(); +- ++#endif + if (1 != readFile(fp, &buf, 1)) + ret = PTR_ERR(fp); + +@@ -2212,8 +2215,9 @@ static int isFileReadable(const char *path, u32 *sz) + *sz = i_size_read(fp->f_dentry->d_inode); + #endif + } +- ++#ifdef set_fs + set_fs(oldfs); ++#endif + filp_close(fp, NULL); + } + return ret; +@@ -2229,17 +2233,22 @@ static int isFileReadable(const char *path, u32 *sz) + static int retriveFromFile(const char *path, u8 *buf, u32 sz) + { + int ret = -1; ++#ifdef set_fs + mm_segment_t oldfs; ++#endif + struct file *fp; + + if (path && buf) { + ret = openFile(&fp, path, O_RDONLY, 0); + if (0 == ret) { + RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp); +- ++#ifdef set_fs + oldfs = get_fs(); + ret = readFile(fp, buf, sz); + set_fs(oldfs); ++#else ++ ret = readFile(fp, buf, sz); ++#endif + closeFile(fp); + + RTW_INFO("%s readFile, ret:%d\n", __FUNCTION__, ret); +@@ -2263,17 +2272,22 @@ static int retriveFromFile(const char *path, u8 *buf, u32 sz) + static int storeToFile(const char *path, u8 *buf, u32 sz) + { + int ret = 0; ++#ifdef set_fs + mm_segment_t oldfs; ++#endif + struct file *fp; + + if (path && buf) { + ret = openFile(&fp, path, O_CREAT | O_WRONLY, 0666); + if (0 == ret) { + RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp); +- ++#ifdef set_fs + oldfs = get_fs(); + ret = writeFile(fp, buf, sz); + set_fs(oldfs); ++#else ++ ret = writeFile(fp, buf, sz); ++#endif + closeFile(fp); + + RTW_INFO("%s writeFile, ret:%d\n", __FUNCTION__, ret); +-- +Created with Armbian build tools https://github.com/armbian/build +