patch/misc: Delete old/left-over/unused patches for wireless

This commit is contained in:
ColorfulRhino
2024-03-17 16:18:41 +01:00
parent 9d097d1c63
commit acdffddb78
20 changed files with 0 additions and 973 deletions

View File

@@ -1,20 +0,0 @@
diff --git a/drivers/net/wireless/rtl8811cu/core/rtw_debug.c b/drivers/net/wireless/rtl8811cu/core/rtw_debug.c
index ddc96eb4f..634c5adb8 100755
--- a/core/rtw_debug.c
+++ b/core/rtw_debug.c
@@ -6358,6 +6358,7 @@ ssize_t proc_set_lck(struct file *file, const char __user *buffer, size_t count,
inline void RTW_BUF_DUMP_SEL(uint _loglevel, void *sel, u8 *_titlestring,
bool _idx_show, const u8 *_hexdata, int _hexdatalen)
{
+#ifdef CONFIG_RTW_DEBUG
int __i;
u8 *ptr = (u8 *)_hexdata;
@@ -6383,6 +6384,7 @@ inline void RTW_BUF_DUMP_SEL(uint _loglevel, void *sel, u8 *_titlestring,
}
_RTW_PRINT_SEL(sel, "\n");
}
+#endif
}
#else
inline void _RTW_STR_DUMP_SEL(void *sel, char *str_out)

View File

@@ -1,26 +0,0 @@
From a6acdedc2b194f36f089630fb966b56408623c99 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Thu, 19 Jan 2023 22:41:55 +0000
Subject: [PATCH] Make different MAC for if1
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
drivers/net/wireless/rtl8188eu/os_dep/linux/os_intfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rtl8188eu/os_dep/linux/os_intfs.c b/drivers/net/wireless/rtl8188eu/os_dep/linux/os_intfs.c
index adc1963c2..d6f33a244 100644
--- a/drivers/net/wireless/rtl8188eu/os_dep/linux/os_intfs.c
+++ b/drivers/net/wireless/rtl8188eu/os_dep/linux/os_intfs.c
@@ -3012,7 +3012,7 @@ _adapter *rtw_drv_add_vir_if(_adapter *primary_padapter,
* If it is 1, the address is locally administered
*/
mac[0] |= BIT(1);
- if (padapter->iface_id > IFACE_ID1)
+ if (padapter->iface_id >= IFACE_ID1)
mac[4] ^= BIT(padapter->iface_id);
_rtw_memcpy(adapter_mac_addr(padapter), mac, ETH_ALEN);
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,55 +0,0 @@
From fb8beafbe34eb04fce91bac39831e971956f8424 Mon Sep 17 00:00:00 2001
From: Gunjan Gupta <viraniac@gmail.com>
Date: Sat, 23 Dec 2023 06:55:50 +0000
Subject: [PATCH 4/4] wireless: rtl8189es: fix compilation with 6.7 kernel
---
.../rtl8189es/os_dep/linux/ioctl_cfg80211.c | 25 +++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/drivers/net/wireless/rtl8189es/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8189es/os_dep/linux/ioctl_cfg80211.c
index 4fa1e4030ad8..3219ff43371e 100644
--- a/drivers/net/wireless/rtl8189es/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl8189es/os_dep/linux/ioctl_cfg80211.c
@@ -5157,6 +5157,29 @@ static int cfg80211_rtw_start_ap(struct wiphy *wiphy, struct net_device *ndev,
return ret;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 7, 0))
+static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *ndev,
+ struct cfg80211_ap_update *info)
+{
+ int ret = 0;
+ _adapter *adapter = (_adapter *)rtw_netdev_priv(ndev);
+
+ RTW_INFO(FUNC_NDEV_FMT"\n", FUNC_NDEV_ARG(ndev));
+
+ ret = rtw_add_beacon(adapter, info->beacon.head, info->beacon.head_len, info->beacon.tail, info->beacon.tail_len);
+
+ // In cases like WPS, the proberesp and assocresp IEs vary from the beacon, and need to be explicitly set
+ if (ret == 0) {
+ if (info->beacon.proberesp_ies && info->beacon.proberesp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) info->beacon.proberesp_ies, info->beacon.proberesp_ies_len, 0x2 /*PROBE_RESP*/);
+
+ if (info->beacon.assocresp_ies && info->beacon.assocresp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) info->beacon.assocresp_ies, info->beacon.assocresp_ies_len, 0x4 /*ASSOC_RESP*/);
+ }
+
+ return ret;
+}
+#else
static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *ndev,
struct cfg80211_beacon_data *info)
{
@@ -5178,6 +5201,8 @@ static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *nd
return ret;
}
+#endif
+
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
static int cfg80211_rtw_stop_ap(struct wiphy *wiphy, struct net_device *ndev, unsigned int link_id)
#else
--
2.34.1

View File

@@ -1,26 +0,0 @@
From a6acdedc2b194f36f089630fb966b56408623c99 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Thu, 19 Jan 2023 22:41:55 +0000
Subject: [PATCH] Make different MAC for if1
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
drivers/net/wireless/rtl8192eu/os_dep/linux/os_intfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rtl8192eu/os_dep/linux/os_intfs.c b/drivers/net/wireless/rtl8192eu/os_dep/linux/os_intfs.c
index 1630e7820..108df75c1 100644
--- a/drivers/net/wireless/rtl8192eu/os_dep/linux/os_intfs.c
+++ b/drivers/net/wireless/rtl8192eu/os_dep/linux/os_intfs.c
@@ -2854,7 +2854,7 @@ _adapter *rtw_drv_add_vir_if(_adapter *primary_padapter,
* If it is 1, the address is locally administered
*/
mac[0] |= BIT(1);
- if (padapter->iface_id > IFACE_ID1)
+ if (padapter->iface_id >= IFACE_ID1)
mac[4] ^= BIT(padapter->iface_id);
memcpy(adapter_mac_addr(padapter), mac, ETH_ALEN);
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,85 +0,0 @@
From f1eca7fca9691f564094a0b05ab02acbb789d0aa Mon Sep 17 00:00:00 2001
From: Igor Pecovnik <igor.pecovnik@gmail.com>
Date: Fri, 19 Aug 2022 15:43:14 +0200
Subject: [PATCH] patch
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
---
.../rtl8723ds/os_dep/linux/ioctl_cfg80211.c | 24 +++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/rtl8723ds/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8723ds/os_dep/linux/ioctl_cfg80211.c
index 86bb2a2f7fe5..54c3143067c1 100644
--- a/drivers/net/wireless/rtl8723ds/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl8723ds/os_dep/linux/ioctl_cfg80211.c
@@ -342,7 +342,7 @@ static u64 rtw_get_systime_us(void)
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 20, 0))
ktime_t ts;
ts = ktime_get_boottime();
- return do_div(ts, 1000);
+ return do_div(ts, 1000);
#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 39))
struct timespec ts;
get_monotonic_boottime(&ts);
@@ -745,7 +745,11 @@ void 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;
@@ -4189,7 +4193,11 @@ static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *nd
return ret;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+static int cfg80211_rtw_stop_ap(struct wiphy *wiphy, struct net_device *ndev, unsigned int link_id)
+#else
static int cfg80211_rtw_stop_ap(struct wiphy *wiphy, struct net_device *ndev)
+#endif
{
RTW_INFO(FUNC_NDEV_FMT"\n", FUNC_NDEV_ARG(ndev));
return 0;
@@ -5547,7 +5555,7 @@ static int _cfg80211_rtw_mgmt_tx(_adapter *padapter, u8 tx_ch, u8 no_cck, const
if (check_fwstate(&padapter->mlmepriv, _FW_LINKED))
ext_listen_period = 500;/*500ms*/
-#ifdef CONFIG_P2P
+#ifdef CONFIG_P2P
else
ext_listen_period = pwdinfo->ext_listen_period;
@@ -7049,13 +7057,25 @@ void rtw_wdev_unregister(struct wireless_dev *wdev)
rtw_cfg80211_indicate_scan_done(adapter, _TRUE);
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0))
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 0, 0))
+ if (wdev->links[0].client.current_bss) {
+ #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ if (wdev->connected) {
+ #else
if (wdev->current_bss) {
+ #endif
u8 locally_generated = 1;
RTW_INFO(FUNC_ADPT_FMT" clear current_bss by cfg80211_disconnected\n", FUNC_ADPT_ARG(adapter));
cfg80211_disconnected(adapter->pnetdev, 0, NULL, 0, locally_generated, GFP_ATOMIC);
}
#elif ((LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(4, 2, 0))) || defined(COMPAT_KERNEL_RELEASE)
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 0, 0))
+ if (wdev->links[0].client.current_bss) {
+ #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ if (wdev->connected) {
+ #else
if (wdev->current_bss) {
+ #endif
RTW_INFO(FUNC_ADPT_FMT" clear current_bss by cfg80211_disconnected\n", FUNC_ADPT_ARG(adapter));
cfg80211_disconnected(adapter->pnetdev, 0, NULL, 0, GFP_ATOMIC);
}
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,26 +0,0 @@
From a6acdedc2b194f36f089630fb966b56408623c99 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Thu, 19 Jan 2023 22:41:55 +0000
Subject: [PATCH] Make different MAC for if1
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
drivers/net/wireless/rtl8723ds/os_dep/linux/os_intfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rtl8723ds/os_dep/linux/os_intfs.c b/drivers/net/wireless/rtl8723ds/os_dep/linux/os_intfs.c
index 76510e94e..29330c942 100644
--- a/drivers/net/wireless/rtl8723ds/os_dep/linux/os_intfs.c
+++ b/drivers/net/wireless/rtl8723ds/os_dep/linux/os_intfs.c
@@ -2409,7 +2409,7 @@ _adapter *rtw_drv_add_vir_if(_adapter *primary_padapter,
* If it is 1, the address is locally administered
*/
mac[0] |= BIT(1);
- if (padapter->iface_id > IFACE_ID1)
+ if (padapter->iface_id >= IFACE_ID1)
mac[4] ^= BIT(padapter->iface_id);
_rtw_memcpy(adapter_mac_addr(padapter), mac, ETH_ALEN);
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,242 +0,0 @@
From 3c2f7f560304d97eb29c4616aa39c95a60470b53 Mon Sep 17 00:00:00 2001
From: Igor Pecovnik <igor.pecovnik@gmail.com>
Date: Fri, 19 Aug 2022 08:12:57 +0200
Subject: [PATCH] Support for 5.19.x
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
---
.../rtl8811cu/os_dep/linux/ioctl_cfg80211.c | 60 ++++++++++++-------
1 file changed, 39 insertions(+), 21 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 d9c81c9947fc..d13b0bd72fde 100644
--- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c
@@ -80,7 +80,7 @@
#endif
/*
- * In the current design of Wi-Fi driver, it will return success to the system (e.g. supplicant)
+ * In the current design of Wi-Fi driver, it will return success to the system (e.g. supplicant)
* when Wi-Fi driver decides to abort the scan request in the scan flow by default.
* Defining this flag makes Wi-Fi driver to return -EBUSY to the system if Wi-Fi driver is too busy to do the scan.
*/
@@ -321,7 +321,7 @@ static u8 rtw_chbw_to_cfg80211_chan_def(struct wiphy *wiphy, struct cfg80211_cha
if (!chan)
goto exit;
- if (bw == CHANNEL_WIDTH_20)
+ if (bw == CHANNEL_WIDTH_20)
chdef->width = ht ? NL80211_CHAN_WIDTH_20 : NL80211_CHAN_WIDTH_20_NOHT;
else if (bw == CHANNEL_WIDTH_40)
chdef->width = NL80211_CHAN_WIDTH_40;
@@ -355,7 +355,7 @@ static void rtw_get_chbw_from_cfg80211_chan_def(struct cfg80211_chan_def *chdef,
rtw_warn_on(1);
*ch = 0;
return;
- }
+ }
switch (chdef->width) {
case NL80211_CHAN_WIDTH_20_NOHT:
@@ -417,7 +417,11 @@ u8 rtw_cfg80211_ch_switch_notify(_adapter *adapter, u8 ch, u8 bw, u8 offset, u8
if (ret != _SUCCESS)
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);
@@ -1085,7 +1089,11 @@ void 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;
@@ -1578,8 +1586,8 @@ static int rtw_cfg80211_set_encryption(struct net_device *dev, struct ieee_param
_rtw_memcpy(padapter->securitypriv.dot118021XGrptxmickey[param->u.crypt.idx].skey, &(param->u.crypt.key[16]), 8);
_rtw_memcpy(padapter->securitypriv.dot118021XGrprxmickey[param->u.crypt.idx].skey, &(param->u.crypt.key[24]), 8);
padapter->securitypriv.binstallGrpkey = _TRUE;
- if (param->u.crypt.idx < 4)
- _rtw_memcpy(padapter->securitypriv.iv_seq[param->u.crypt.idx], param->u.crypt.seq, 8);
+ if (param->u.crypt.idx < 4)
+ _rtw_memcpy(padapter->securitypriv.iv_seq[param->u.crypt.idx], param->u.crypt.seq, 8);
padapter->securitypriv.dot118021XGrpKeyid = param->u.crypt.idx;
rtw_set_key(padapter, &padapter->securitypriv, param->u.crypt.idx, 1, _TRUE);
@@ -1824,7 +1832,7 @@ static int cfg80211_rtw_get_key(struct wiphy *wiphy, struct net_device *ndev
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE)
|| (MLME_IS_STA(adapter) && !pairwise)
#endif
- ) {
+ ) {
/* WEP key, TX GTK/IGTK, RX GTK/IGTK(for STA mode) */
if (is_wep_enc(sec->dot118021XGrpPrivacy)) {
if (keyid >= WEP_KEYS)
@@ -1913,7 +1921,7 @@ static int cfg80211_rtw_get_key(struct wiphy *wiphy, struct net_device *ndev
}
ret = 0;
-
+
exit:
RTW_INFO(FUNC_NDEV_FMT
GET_KEY_PARAM_FMT_S
@@ -4929,7 +4937,11 @@ static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *nd
return ret;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+static int cfg80211_rtw_stop_ap(struct wiphy *wiphy, struct net_device *ndev, unsigned int link_id)
+#else
static int cfg80211_rtw_stop_ap(struct wiphy *wiphy, struct net_device *ndev)
+#endif
{
_adapter *adapter = (_adapter *)rtw_netdev_priv(ndev);
@@ -5585,7 +5597,7 @@ static int cfg80211_rtw_dump_station(struct wiphy *wiphy, struct net_device *nde
else
_rtw_memcpy(mac, plink->addr, ETH_ALEN);
#endif
-
+
sinfo->filled = 0;
if (psta) {
@@ -7534,7 +7546,7 @@ void dump_mesh_config(void *sel, const struct mesh_config *conf)
RTW_PRINT_SEL(sel, "path_refresh_time:%u\n", conf->path_refresh_time);
RTW_PRINT_SEL(sel, "min_discovery_timeout:%u\n", conf->min_discovery_timeout);
RTW_PRINT_SEL(sel, "dot11MeshHWMPactivePathTimeout:%u\n", conf->dot11MeshHWMPactivePathTimeout);
- RTW_PRINT_SEL(sel, "dot11MeshHWMPpreqMinInterval:%u\n", conf->dot11MeshHWMPpreqMinInterval);
+ RTW_PRINT_SEL(sel, "dot11MeshHWMPpreqMinInterval:%u\n", conf->dot11MeshHWMPpreqMinInterval);
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0))
RTW_PRINT_SEL(sel, "dot11MeshHWMPperrMinInterval:%u\n", conf->dot11MeshHWMPperrMinInterval);
#endif
@@ -7549,11 +7561,11 @@ void dump_mesh_config(void *sel, const struct mesh_config *conf)
RTW_PRINT_SEL(sel, "dot11MeshForwarding:%d\n", conf->dot11MeshForwarding);
RTW_PRINT_SEL(sel, "rssi_threshold:%d\n", conf->rssi_threshold);
#endif
-
+
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 5, 0))
RTW_PRINT_SEL(sel, "ht_opmode:0x%04x\n", conf->ht_opmode);
#endif
-
+
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0))
RTW_PRINT_SEL(sel, "dot11MeshHWMPactivePathToRootTimeout:%u\n", conf->dot11MeshHWMPactivePathToRootTimeout);
RTW_PRINT_SEL(sel, "dot11MeshHWMProotInterval:%u\n", conf->dot11MeshHWMProotInterval);
@@ -7564,7 +7576,7 @@ void dump_mesh_config(void *sel, const struct mesh_config *conf)
RTW_PRINT_SEL(sel, "power_mode:%s\n", nl80211_mesh_power_mode_str(conf->power_mode));
RTW_PRINT_SEL(sel, "dot11MeshAwakeWindowDuration:%u\n", conf->dot11MeshAwakeWindowDuration);
#endif
-
+
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0))
RTW_PRINT_SEL(sel, "plink_timeout:%u\n", conf->plink_timeout);
#endif
@@ -7700,14 +7712,14 @@ static void rtw_cfg80211_mesh_cfg_set(_adapter *adapter, const struct mesh_confi
if (chk_mesh_attr(NL80211_MESHCONF_HT_OPMODE, mask));
#endif
#endif
-
+
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0))
if (chk_mesh_attr(NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT, mask))
mcfg->dot11MeshHWMPactivePathToRootTimeout = conf->dot11MeshHWMPactivePathToRootTimeout;
if (chk_mesh_attr(NL80211_MESHCONF_HWMP_ROOT_INTERVAL, mask))
mcfg->dot11MeshHWMProotInterval = conf->dot11MeshHWMProotInterval;
if (chk_mesh_attr(NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL, mask))
- mcfg->dot11MeshHWMPconfirmationInterval = conf->dot11MeshHWMPconfirmationInterval;
+ mcfg->dot11MeshHWMPconfirmationInterval = conf->dot11MeshHWMPconfirmationInterval;
#endif
#if 0 /* TBD */
@@ -7765,7 +7777,7 @@ u8 *rtw_cfg80211_construct_mesh_beacon_ies(struct wiphy *wiphy, _adapter *adapte
#endif
if (!ch)
goto exit;
-
+
#if defined(CONFIG_80211AC_VHT) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0))
vht = ht && ch > 14 && bw >= CHANNEL_WIDTH_80; /* VHT40/VHT20? */
#endif
@@ -8090,7 +8102,7 @@ static int cfg80211_rtw_join_mesh(struct wiphy *wiphy, struct net_device *dev,
ret = -EINVAL;
goto exit;
}
-
+
rtw_mesh_work(&adapter->mesh_work);
exit:
@@ -8171,7 +8183,7 @@ static int cfg80211_rtw_del_mpath(struct wiphy *wiphy, struct net_device *dev
}
} else {
rtw_mesh_path_flush_by_iface(adapter);
- }
+ }
exit:
return ret;
@@ -8472,13 +8484,13 @@ int cfg80211_rtw_resume(struct wiphy *wiphy) {
//rtw_sitesurvey_cmd(padapter, NULL);
rtw_sitesurvey_cmd(padapter, &parm);
_exit_critical_bh(&pmlmepriv->lock, &irqL);
-
+
for (PNOWakeupScanWaitCnt = 0; PNOWakeupScanWaitCnt < 10; PNOWakeupScanWaitCnt++) {
if(check_fwstate(pmlmepriv, _FW_UNDER_SURVEY) == _FALSE)
break;
rtw_msleep_os(1000);
}
-
+
_enter_critical_bh(&pmlmepriv->lock, &irqL);
cfg80211_sched_scan_results(padapter->rtw_wdev->wiphy);
_exit_critical_bh(&pmlmepriv->lock, &irqL);
@@ -8486,7 +8498,7 @@ int cfg80211_rtw_resume(struct wiphy *wiphy) {
}
RTW_DBG("<== %s\n",__func__);
return 0;
-
+
}
#endif /* CONFIG_PNO_SUPPORT */
@@ -9369,7 +9381,7 @@ int rtw_hostapd_acs_dump_survey(struct wiphy *wiphy, struct net_device *netdev,
#elif defined(CONFIG_RTW_ACS) && defined(CONFIG_BACKGROUND_NOISE_MONITOR)
rtw_cfg80211_set_survey_info_with_clm(padapter, idx, info);
#else
- RTW_ERR("%s: unknown acs operation!\n", __func__);
+ RTW_ERR("%s: unknown acs operation!\n", __func__);
#endif
return ret;
@@ -9679,7 +9691,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);
}
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,38 +0,0 @@
From 90231a74d8278324d76a121169810fedfc6f5b47 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino <paolo.sabatino@gmail.com>
Date: Wed, 26 Apr 2023 21:05:40 +0000
Subject: [PATCH] fix rtl8811cu compilation on kernel 6.3
---
.../net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 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 d1f0909e6b18..5b4318f09d03 100644
--- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c
@@ -464,7 +464,9 @@ u8 rtw_cfg80211_ch_switch_notify(_adapter *adapter, u8 ch, u8 bw, u8 offset,
* called by others with block-tx.
*/
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0))
+ cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0, 0, false, 0);
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0))
cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0, 0, false);
#else
cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0, false);
@@ -479,7 +481,9 @@ 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))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0))
+ cfg80211_ch_switch_notify(adapter->pnetdev, &chdef, 0, 0);
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 19,2))
cfg80211_ch_switch_notify(adapter->pnetdev, &chdef, 0);
#else
cfg80211_ch_switch_notify(adapter->pnetdev, &chdef);
--
2.34.1

View File

@@ -1,26 +0,0 @@
From 464a9b6932b78c6a0a3f7b559bc5506cf8187272 Mon Sep 17 00:00:00 2001
From: Muhammed Efe Cetin <efectn@protonmail.com>
Date: Wed, 1 Feb 2023 00:16:55 +0300
Subject: [PATCH 07/10] Fix VFS import
---
drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c b/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c
index f9f494d8c..62e664b78 100755
--- a/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c
+++ b/drivers/net/wireless/rtl8811cu/os_dep/osdep_service.c
@@ -27,6 +27,9 @@ atomic_t _malloc_size = ATOMIC_INIT(0);
#endif
#endif /* DBG_MEMORY_LEAK */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0)
+MODULE_IMPORT_NS(VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver);
+#endif
#if defined(PLATFORM_LINUX)
/*
--
2.39.1

View File

@@ -1,48 +0,0 @@
From dc53976d72d740fd83fc7de434381b8981740da7 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Fri, 20 Jan 2023 00:00:17 +0000
Subject: [PATCH] Fix p2p-go advertising
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
.../rtl8811cu/os_dep/linux/ioctl_cfg80211.c | 18 +++++++++++++++++
1 file changed, 18 insertions(+), 0 deletion(-)
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 7e7849ca6..d1f4dedfa 100755
--- a/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/ioctl_cfg80211.c
@@ -5359,6 +5359,15 @@ static int cfg80211_rtw_start_ap(struct wiphy *wiphy, struct net_device *ndev,
ret = rtw_add_beacon(adapter, settings->beacon.head, settings->beacon.head_len,
settings->beacon.tail, settings->beacon.tail_len);
+ // In cases like WPS, the proberesp and assocresp IEs vary from the beacon, and need to be explicitly set
+ if (ret == 0) {
+ if (settings->beacon.proberesp_ies && settings->beacon.proberesp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) settings->beacon.proberesp_ies, settings->beacon.proberesp_ies_len, 0x2 /*PROBE_RESP*/);
+
+ if (settings->beacon.assocresp_ies && settings->beacon.assocresp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) settings->beacon.assocresp_ies, settings->beacon.assocresp_ies_len, 0x4 /*ASSOC_RESP*/);
+ }
+
if (settings->ssid && settings->ssid_len) {
WLAN_BSSID_EX *pbss_network = &adapter->mlmepriv.cur_network.network;
WLAN_BSSID_EX *pbss_network_ext = &adapter->mlmeextpriv.mlmext_info.network;
@@ -5393,6 +5402,15 @@ static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *nd
ret = rtw_add_beacon(adapter, info->head, info->head_len, info->tail, info->tail_len);
+ // In cases like WPS, the proberesp and assocresp IEs vary from the beacon, and need to be explicitly set
+ if (ret == 0) {
+ if (info->proberesp_ies && info->proberesp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) info->proberesp_ies, info->proberesp_ies_len, 0x2 /*PROBE_RESP*/);
+
+ if (info->assocresp_ies && info->assocresp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) info->assocresp_ies, info->assocresp_ies_len, 0x4 /*ASSOC_RESP*/);
+ }
+
return ret;
}
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,25 +0,0 @@
From a6acdedc2b194f36f089630fb966b56408623c99 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Thu, 19 Jan 2023 22:41:55 +0000
Subject: [PATCH] Make different MAC for if1
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
drivers/net/wireless/rtl8811cu/os_dep/linux/os_intfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rtl8811cu/os_dep/linux/os_intfs.c b/drivers/net/wireless/rtl8811cu/os_dep/linux/os_intfs.c
index 67bef7886..e740fa5ed 100644
--- a/drivers/net/wireless/rtl8811cu/os_dep/linux/os_intfs.c
+++ b/drivers/net/wireless/rtl8811cu/os_dep/linux/os_intfs.c
@@ -3472,7 +3472,7 @@ _adapter *rtw_drv_add_vir_if(_adapter *primary_padapter,
* If it is 1, the address is locally administered
*/
mac[0] |= BIT(1);
- if (padapter->iface_id > IFACE_ID1)
+ if (padapter->iface_id >= IFACE_ID1)
mac[0] ^= ((padapter->iface_id)<<2);
}
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,79 +0,0 @@
From b4358f8b995eb5161eddd4d6becb48317a4fc9a1 Mon Sep 17 00:00:00 2001
From: Igor Pecovnik <igor.pecovnik@gmail.com>
Date: Fri, 19 Aug 2022 15:10:02 +0200
Subject: [PATCH] update to 5.19.2
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
---
.../rtl8812au/os_dep/linux/ioctl_cfg80211.c | 22 +++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/drivers/net/wireless/rtl8812au/os_dep/linux/ioctl_cfg80211.c b/drivers/net/wireless/rtl8812au/os_dep/linux/ioctl_cfg80211.c
index ca7b7dccefaf..ea2ac44c7284 100644
--- a/drivers/net/wireless/rtl8812au/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl8812au/os_dep/linux/ioctl_cfg80211.c
@@ -472,7 +472,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);
@@ -1145,7 +1149,11 @@ void 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;
@@ -5219,7 +5227,11 @@ static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *nd
return ret;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+static int cfg80211_rtw_stop_ap(struct wiphy *wiphy, struct net_device *ndev, unsigned int link_id)
+#else
static int cfg80211_rtw_stop_ap(struct wiphy *wiphy, struct net_device *ndev)
+#endif
{
_adapter *adapter = (_adapter *)rtw_netdev_priv(ndev);
@@ -6092,7 +6104,11 @@ static int cfg80211_rtw_set_channel(struct wiphy *wiphy
return 0;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+static int cfg80211_rtw_get_channel(struct wiphy *wiphy, struct wireless_dev *wdev, unsigned int link_id, struct cfg80211_chan_def *chandef){
+#else
static int cfg80211_rtw_get_channel(struct wiphy *wiphy, struct wireless_dev *wdev, struct cfg80211_chan_def *chandef){
+#endif
_adapter *padapter= wiphy_to_adapter(wiphy);
int channel;
int control_freq;
@@ -10395,7 +10411,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(6, 0, 0))
+ if (wdev->links[0].client.current_bss) {
+ #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ if (wdev->connected) {
+ #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);
}
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,26 +0,0 @@
From a6acdedc2b194f36f089630fb966b56408623c99 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Thu, 19 Jan 2023 22:41:55 +0000
Subject: [PATCH] Make different MAC for if1
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
drivers/net/wireless/rtl8812au/os_dep/linux/os_intfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rtl8812au/os_dep/linux/os_intfs.c b/drivers/net/wireless/rtl8812au/os_dep/linux/os_intfs.c
index 8aa7a212c..297025b1c 100644
--- a/drivers/net/wireless/rtl8812au/os_dep/linux/os_intfs.c
+++ b/drivers/net/wireless/rtl8812au/os_dep/linux/os_intfs.c
@@ -2932,7 +2932,7 @@ _adapter *rtw_drv_add_vir_if(_adapter *primary_padapter,
* If it is 1, the address is locally administered
*/
mac[0] |= BIT(1);
- if (padapter->iface_id > IFACE_ID1)
+ if (padapter->iface_id >= IFACE_ID1)
mac[4] ^= BIT(padapter->iface_id);
_rtw_memcpy(adapter_mac_addr(padapter), mac, ETH_ALEN);
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,45 +0,0 @@
From af27791efdde55cdec3b4400c9d1a806c0040e38 Mon Sep 17 00:00:00 2001
From: Butterfly <gokhanlnx@gmail.com>
Date: Tue, 12 Apr 2022 00:31:54 +0300
Subject: [PATCH] Buildfix for Linux 5.18
Buildfix for Linux 5.18
---
include/ieee80211.h | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/net/wireless/rtl8811cu/include/ieee80211.h b/drivers/net/wireless/rtl8811cu/include/ieee80211.h
index dde8b4c..9fb6b48 100644
--- a/drivers/net/wireless/rtl8811cu/include/ieee80211.h
+++ b/drivers/net/wireless/rtl8811cu/include/ieee80211.h
@@ -1529,18 +1529,30 @@ enum ieee80211_state {
(((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
(((Addr[5]) & 0xff) == 0xff))
#else
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0))
+static inline int is_multicast_mac_addr(const u8 *addr)
+#else
extern __inline int is_multicast_mac_addr(const u8 *addr)
+#endif
{
return (addr[0] != 0xff) && (0x01 & addr[0]);
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0))
+static inline int is_broadcast_mac_addr(const u8 *addr)
+#else
extern __inline int is_broadcast_mac_addr(const u8 *addr)
+#endif
{
return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) && \
(addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0))
+static inline int is_zero_mac_addr(const u8 *addr)
+#else
extern __inline int is_zero_mac_addr(const u8 *addr)
+#endif
{
return ((addr[0] == 0x00) && (addr[1] == 0x00) && (addr[2] == 0x00) && \
(addr[3] == 0x00) && (addr[4] == 0x00) && (addr[5] == 0x00));

View File

@@ -1,26 +0,0 @@
From a6acdedc2b194f36f089630fb966b56408623c99 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Thu, 19 Jan 2023 22:41:55 +0000
Subject: [PATCH] Make different MAC for if1
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
drivers/net/wireless/rtl8822bs/os_dep/linux/os_intfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rtl8822bs/os_dep/linux/os_intfs.c b/drivers/net/wireless/rtl8822bs/os_dep/linux/os_intfs.c
index 7fc4a5eb8..51c286bdf 100644
--- a/drivers/net/wireless/rtl8822bs/os_dep/linux/os_intfs.c
+++ b/drivers/net/wireless/rtl8822bs/os_dep/linux/os_intfs.c
@@ -2748,7 +2748,7 @@ _adapter *rtw_drv_add_vir_if(_adapter *primary_padapter,
* If it is 1, the address is locally administered
*/
mac[0] |= BIT(1);
- if (padapter->iface_id > IFACE_ID1)
+ if (padapter->iface_id >= IFACE_ID1)
mac[4] ^= BIT(padapter->iface_id);
_rtw_memcpy(adapter_mac_addr(padapter), mac, ETH_ALEN);
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,38 +0,0 @@
From c0e386b763773f1fdf4621a8f4d90a146c6ffe8c Mon Sep 17 00:00:00 2001
From: Paolo Sabatino <paolo.sabatino@gmail.com>
Date: Wed, 26 Apr 2023 19:29:42 +0000
Subject: [PATCH] fix rtl88x2bu compilation on kernel >= 6.3.0
---
.../net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
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 b1259202abe5..f700f0590560 100644
--- a/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c
@@ -464,7 +464,9 @@ u8 rtw_cfg80211_ch_switch_notify(_adapter *adapter, u8 ch, u8 bw, u8 offset,
* called by others with block-tx.
*/
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0))
+ cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0, 0, false, 0);
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0))
cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0, 0, false);
#else
cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0, false);
@@ -479,7 +481,9 @@ 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))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0))
+ cfg80211_ch_switch_notify(adapter->pnetdev, &chdef, 0, 0);
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 19, 2))
cfg80211_ch_switch_notify(adapter->pnetdev, &chdef, 0);
#else
cfg80211_ch_switch_notify(adapter->pnetdev, &chdef);
--
2.34.1

View File

@@ -1,26 +0,0 @@
From b7c9822b205df344d5af4b59dd6be99fad7089c2 Mon Sep 17 00:00:00 2001
From: Muhammed Efe Cetin <efectn@protonmail.com>
Date: Wed, 1 Feb 2023 00:17:46 +0300
Subject: [PATCH 09/10] Fix VFS import
---
drivers/net/wireless/rtl88x2bu/os_dep/osdep_service.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/wireless/rtl88x2bu/os_dep/osdep_service.c b/drivers/net/wireless/rtl88x2bu/os_dep/osdep_service.c
index 3b927f4fb..7f0f72ea8 100644
--- a/drivers/net/wireless/rtl88x2bu/os_dep/osdep_service.c
+++ b/drivers/net/wireless/rtl88x2bu/os_dep/osdep_service.c
@@ -27,6 +27,9 @@ atomic_t _malloc_size = ATOMIC_INIT(0);
#endif
#endif /* DBG_MEMORY_LEAK */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0)
+MODULE_IMPORT_NS(VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver);
+#endif
#if defined(PLATFORM_LINUX)
/*
--
2.39.1

View File

@@ -1,48 +0,0 @@
From dc53976d72d740fd83fc7de434381b8981740da7 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Fri, 20 Jan 2023 00:00:17 +0000
Subject: [PATCH] Fix p2p-go advertising
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
.../rtl88x2bu/os_dep/linux/ioctl_cfg80211.c | 18 +++++++++++++++++
1 file changed, 18 insertions(+), 0 deletion(-)
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 5dfa3e138..b1259202a 100644
--- a/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c
+++ b/drivers/net/wireless/rtl88x2bu/os_dep/linux/ioctl_cfg80211.c
@@ -5371,6 +5371,15 @@ static int cfg80211_rtw_start_ap(struct wiphy *wiphy, struct net_device *ndev,
ret = rtw_add_beacon(adapter, settings->beacon.head, settings->beacon.head_len,
settings->beacon.tail, settings->beacon.tail_len);
+ // In cases like WPS, the proberesp and assocresp IEs vary from the beacon, and need to be explicitly set
+ if (ret == 0) {
+ if (settings->beacon.proberesp_ies && settings->beacon.proberesp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) settings->beacon.proberesp_ies, settings->beacon.proberesp_ies_len, 0x2 /*PROBE_RESP*/);
+
+ if (settings->beacon.assocresp_ies && settings->beacon.assocresp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) settings->beacon.assocresp_ies, settings->beacon.assocresp_ies_len, 0x4 /*ASSOC_RESP*/);
+ }
+
if (settings->ssid && settings->ssid_len) {
WLAN_BSSID_EX *pbss_network = &adapter->mlmepriv.cur_network.network;
WLAN_BSSID_EX *pbss_network_ext = &adapter->mlmeextpriv.mlmext_info.network;
@@ -5405,6 +5414,15 @@ static int cfg80211_rtw_change_beacon(struct wiphy *wiphy, struct net_device *nd
ret = rtw_add_beacon(adapter, info->head, info->head_len, info->tail, info->tail_len);
+ // In cases like WPS, the proberesp and assocresp IEs vary from the beacon, and need to be explicitly set
+ if (ret == 0) {
+ if (info->proberesp_ies && info->proberesp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) info->proberesp_ies, info->proberesp_ies_len, 0x2 /*PROBE_RESP*/);
+
+ if (info->assocresp_ies && info->assocresp_ies_len > 0)
+ rtw_cfg80211_set_mgnt_wpsp2pie(ndev, (char *) info->assocresp_ies, info->assocresp_ies_len, 0x4 /*ASSOC_RESP*/);
+ }
+
return ret;
}
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,25 +0,0 @@
From a6acdedc2b194f36f089630fb966b56408623c99 Mon Sep 17 00:00:00 2001
From: Kirill Zhumarin <kirill.zhumarin@gmail.com>
Date: Thu, 19 Jan 2023 22:41:55 +0000
Subject: [PATCH] Make different MAC for if1
Signed-off-by: Kirill Zhumarin <kirill.zhumarin@gmail.com>
---
drivers/net/wireless/rtl88x2bu/os_dep/linux/os_intfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rtl88x2bu/os_dep/linux/os_intfs.c b/drivers/net/wireless/rtl88x2bu/os_dep/linux/os_intfs.c
index e2b424932..5cd0c79dd 100644
--- a/drivers/net/wireless/rtl88x2bu/os_dep/linux/os_intfs.c
+++ b/drivers/net/wireless/rtl88x2bu/os_dep/linux/os_intfs.c
@@ -3481,7 +3481,7 @@ _adapter *rtw_drv_add_vir_if(_adapter *primary_padapter,
* If it is 1, the address is locally administered
*/
mac[0] |= BIT(1);
- if (padapter->iface_id > IFACE_ID1)
+ if (padapter->iface_id >= IFACE_ID1)
mac[0] ^= ((padapter->iface_id)<<2);
}
--
Created with Armbian build tools https://github.com/armbian/build

View File

@@ -1,43 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Alban Browaeys <alban.browaeys@gmail.com>
Date: Sun, 16 Jul 2023 21:21:12 +0000
Subject: Fixup for stale kickoff removal in wireless regulator API
Cope with the fix in stable 6.3.13 bf353116d1bf and 6.5-rc1 e8c2af660ba0
"wifi: cfg80211: fix regulatory disconnect with OCB/NAN".
That is the removal of REGULATORY_IGNORE_STALE_KICKOFF
from the wireless regulator internal API to fix any driver
that allowed OCB/NAN.
Note this code will need to be expanded once and if 6.4 include the
above fixup.
---
drivers/net/wireless/rtl88x2bu/os_dep/linux/wifi_regd.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/rtl88x2bu/os_dep/linux/wifi_regd.c b/drivers/net/wireless/rtl88x2bu/os_dep/linux/wifi_regd.c
index 81e1dc75e5fb..04dc056f8d69 100644
--- a/drivers/net/wireless/rtl88x2bu/os_dep/linux/wifi_regd.c
+++ b/drivers/net/wireless/rtl88x2bu/os_dep/linux/wifi_regd.c
@@ -403,11 +403,16 @@ int rtw_regd_init(struct wiphy *wiphy)
#else
wiphy->regulatory_flags &= ~REGULATORY_STRICT_REG;
wiphy->regulatory_flags &= ~REGULATORY_DISABLE_BEACON_HINTS;
#endif
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0)) \
+ && ((LINUX_VERSION_CODE < KERNEL_VERSION(6, 1, 39)) \
+ || (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 2, 0))) \
+ && ((LINUX_VERSION_CODE < KERNEL_VERSION(6, 3, 13)) \
+ || (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0))) \
+ && (LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 4))
wiphy->regulatory_flags |= REGULATORY_IGNORE_STALE_KICKOFF;
#endif
return 0;
}
--
Created with Armbian build tools https://github.com/armbian/build