armbian-build/patch/misc/wireless-rtl88x2bu-5.19.2.patch
Igor Pečovnik aa99cb64c3
Solve compatibility issues for some of wifi patches (#4087)
* Solve compatibility issues for some of wifi patches, disable those that needs more work

* Fix 8812au

* Update to re-enable RTL88x2CS driver for 5.19.2+

* Add 8723ds and rename others

* Following naming convention

* Name

* Adjust UWE5622 for 5.19.2

* Update UWE5622 patch for sunxi

* Enable last one

* Fixes for 8723DU

Co-authored-by: Vyacheslav Bocharov <adeep@lexina.in>
2022-08-20 07:44:35 +02:00

73 lines
2.9 KiB
Diff

From cba852f17884c43440de13e7ee012b99aa06089f Mon Sep 17 00:00:00 2001
From: Igor Pecovnik <igor.pecovnik@gmail.com>
Date: Fri, 19 Aug 2022 07:46:31 +0200
Subject: [PATCH] Add support for 5.19.2
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
---
.../rtl88x2bu/os_dep/linux/ioctl_cfg80211.c | 14 ++++++++++++++
.../rtl88x2bu/os_dep/linux/ioctl_cfg80211.h | 5 +++++
2 files changed, 19 insertions(+)
diff --git a/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c
index e70ee8a7e009..ed9871bad372 100755
--- a/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c
@@ -449,7 +449,11 @@ u8 rtw_cfg80211_ch_switch_notify(_adapter *adapter, u8 ch, u8 bw, u8 offset,
if (!rtw_cfg80211_allow_ch_switch_notify(adapter))
goto exit;
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ cfg80211_ch_switch_notify(adapter->pnetdev, &chdef, 0);
+#else
cfg80211_ch_switch_notify(adapter->pnetdev, &chdef);
+#endif
#else
int freq = rtw_ch2freq(ch);
@@ -1162,7 +1166,11 @@ int rtw_cfg80211_indicate_connect(_adapter *padapter)
#endif
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 0, 0))
+ roam_info.links[0].bssid = cur_network->network.MacAddress;
+#else
roam_info.bssid = cur_network->network.MacAddress;
+#endif
roam_info.req_ie = pmlmepriv->assoc_req + sizeof(struct rtw_ieee80211_hdr_3addr) + 2;
roam_info.req_ie_len = pmlmepriv->assoc_req_len - sizeof(struct rtw_ieee80211_hdr_3addr) - 2;
roam_info.resp_ie = pmlmepriv->assoc_rsp + sizeof(struct rtw_ieee80211_hdr_3addr) + 6;
@@ -10453,7 +10461,13 @@ void rtw_wdev_unregister(struct wireless_dev *wdev)
rtw_cfg80211_indicate_scan_done(adapter, _TRUE);
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)) || defined(COMPAT_KERNEL_RELEASE)
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ if (wdev->connected) {
+ #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 0, 0))
+ if (wdev->links[0].client.current_bss) {
+ #else
if (wdev->current_bss) {
+ #endif
RTW_INFO(FUNC_ADPT_FMT" clear current_bss by cfg80211_disconnected\n", FUNC_ADPT_ARG(adapter));
rtw_cfg80211_indicate_disconnect(adapter, 0, 1);
}
diff --git a/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.h b/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.h
index 86b893da3a0e..7b85ae046ab3 100644
--- a/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.h
+++ b/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.h
@@ -163,6 +163,11 @@ struct rtw_wdev_priv {
struct rtw_wdev_invit_info invit_info;
struct rtw_wdev_nego_info nego_info;
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ u32 ssid_len;
+ u32 ssid;
+ #endif
+
u8 bandroid_scan;
bool block;
bool block_scan;
--
Created with Armbian build tools https://github.com/armbian/build