From 0b2c42ced21a7bc053e0d729f85041f1e3b54fbc Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sun, 7 Jul 2019 00:08:20 +0200 Subject: mac80211: Update to version 5.2-rc7 This updates mac80211 to version 5.2-rc7, this contains all the changes to the wireless subsystem up to Linux 5.2-rc7. * The removed patches are applied upstream * b43 now uses kmod-lib-cordic * Update the nl80211.h file in iw to match backports version. * Remove the two backports from kernel 4.9, they were needed for mt76, but that can use the version from backports now, otherwise they collide and cause compile errors. Signed-off-by: Hauke Mehrtens --- .../mwl/700-mwl8k-missing-pci-id-for-WNR854T.patch | 2 +- .../mwl/801-libertas-configure-sysfs-links.patch | 2 +- .../mwl/940-mwl8k_init_devices_synchronously.patch | 4 +- .../mwl/941-mwl8k-Fix-rate_idx-underflow.patch | 75 ---------------------- 4 files changed, 4 insertions(+), 79 deletions(-) delete mode 100644 package/kernel/mac80211/patches/mwl/941-mwl8k-Fix-rate_idx-underflow.patch (limited to 'package/kernel/mac80211/patches/mwl') diff --git a/package/kernel/mac80211/patches/mwl/700-mwl8k-missing-pci-id-for-WNR854T.patch b/package/kernel/mac80211/patches/mwl/700-mwl8k-missing-pci-id-for-WNR854T.patch index f3e311a2e9..cfa40e1bd2 100644 --- a/package/kernel/mac80211/patches/mwl/700-mwl8k-missing-pci-id-for-WNR854T.patch +++ b/package/kernel/mac80211/patches/mwl/700-mwl8k-missing-pci-id-for-WNR854T.patch @@ -1,6 +1,6 @@ --- a/drivers/net/wireless/marvell/mwl8k.c +++ b/drivers/net/wireless/marvell/mwl8k.c -@@ -5686,6 +5686,7 @@ MODULE_FIRMWARE("mwl8k/fmimage_8366.fw") +@@ -5694,6 +5694,7 @@ MODULE_FIRMWARE("mwl8k/fmimage_8366.fw") MODULE_FIRMWARE(MWL8K_8366_AP_FW(MWL8K_8366_AP_FW_API)); static const struct pci_device_id mwl8k_pci_id_table[] = { diff --git a/package/kernel/mac80211/patches/mwl/801-libertas-configure-sysfs-links.patch b/package/kernel/mac80211/patches/mwl/801-libertas-configure-sysfs-links.patch index c3e6db8f05..90adb66bb1 100644 --- a/package/kernel/mac80211/patches/mwl/801-libertas-configure-sysfs-links.patch +++ b/package/kernel/mac80211/patches/mwl/801-libertas-configure-sysfs-links.patch @@ -11,7 +11,7 @@ err_wiphy_new: --- a/drivers/net/wireless/marvell/libertas/main.c +++ b/drivers/net/wireless/marvell/libertas/main.c -@@ -930,6 +930,7 @@ struct lbs_private *lbs_add_card(void *c +@@ -935,6 +935,7 @@ struct lbs_private *lbs_add_card(void *c goto err_adapter; } diff --git a/package/kernel/mac80211/patches/mwl/940-mwl8k_init_devices_synchronously.patch b/package/kernel/mac80211/patches/mwl/940-mwl8k_init_devices_synchronously.patch index 61a6c4c70f..f3130f7ae7 100644 --- a/package/kernel/mac80211/patches/mwl/940-mwl8k_init_devices_synchronously.patch +++ b/package/kernel/mac80211/patches/mwl/940-mwl8k_init_devices_synchronously.patch @@ -1,6 +1,6 @@ --- a/drivers/net/wireless/marvell/mwl8k.c +++ b/drivers/net/wireless/marvell/mwl8k.c -@@ -6271,6 +6271,8 @@ static int mwl8k_probe(struct pci_dev *p +@@ -6279,6 +6279,8 @@ static int mwl8k_probe(struct pci_dev *p priv->running_bsses = 0; @@ -9,7 +9,7 @@ return rc; err_stop_firmware: -@@ -6304,8 +6306,6 @@ static void mwl8k_remove(struct pci_dev +@@ -6312,8 +6314,6 @@ static void mwl8k_remove(struct pci_dev return; priv = hw->priv; diff --git a/package/kernel/mac80211/patches/mwl/941-mwl8k-Fix-rate_idx-underflow.patch b/package/kernel/mac80211/patches/mwl/941-mwl8k-Fix-rate_idx-underflow.patch deleted file mode 100644 index d034dcf51f..0000000000 --- a/package/kernel/mac80211/patches/mwl/941-mwl8k-Fix-rate_idx-underflow.patch +++ /dev/null @@ -1,75 +0,0 @@ -From b897577af85bb5e5638efa780bc3716fae5212d3 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20=C5=A0tetiar?= -Date: Mon, 8 Apr 2019 09:45:56 +0200 -Subject: [PATCH] mwl8k: Fix rate_idx underflow -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -It was reported on OpenWrt bug tracking system[1], that several users -are affected by the endless reboot of their routers if they configure -5GHz interface with channel 44 or 48. - -The reboot loop is caused by the following excessive number of WARN_ON -messages: - - WARNING: CPU: 0 PID: 0 at backports-4.19.23-1/net/mac80211/rx.c:4516 - ieee80211_rx_napi+0x1fc/0xa54 [mac80211] - -as the messages are being correctly emitted by the following guard: - - case RX_ENC_LEGACY: - if (WARN_ON(status->rate_idx >= sband->n_bitrates)) - -as the rate_idx is in this case erroneously set to 251 (0xfb). This fix -simply converts previously used magic number to proper constant and -guards against substraction which is leading to the currently observed -underflow. - -1. https://bugs.openwrt.org/index.php?do=details&task_id=2218 - -Fixes: 854783444bab ("mwl8k: properly set receive status rate index on 5 GHz receive") -Cc: -Tested-by: Eubert Bao -Reported-by: Eubert Bao -Signed-off-by: Petr Štetiar ---- - drivers/net/wireless/marvell/mwl8k.c | 13 +++++++++---- - 1 file changed, 9 insertions(+), 4 deletions(-) - ---- a/drivers/net/wireless/marvell/mwl8k.c -+++ b/drivers/net/wireless/marvell/mwl8k.c -@@ -441,6 +441,9 @@ static const struct ieee80211_rate mwl8k - #define MWL8K_CMD_UPDATE_STADB 0x1123 - #define MWL8K_CMD_BASTREAM 0x1125 - -+#define MWL8K_LEGACY_5G_RATE_OFFSET \ -+ (ARRAY_SIZE(mwl8k_rates_24) - ARRAY_SIZE(mwl8k_rates_50)) -+ - static const char *mwl8k_cmd_name(__le16 cmd, char *buf, int bufsize) - { - u16 command = le16_to_cpu(cmd); -@@ -1016,8 +1019,9 @@ mwl8k_rxd_ap_process(void *_rxd, struct - - if (rxd->channel > 14) { - status->band = NL80211_BAND_5GHZ; -- if (!(status->encoding == RX_ENC_HT)) -- status->rate_idx -= 5; -+ if (!(status->encoding == RX_ENC_HT) && -+ status->rate_idx >= MWL8K_LEGACY_5G_RATE_OFFSET) -+ status->rate_idx -= MWL8K_LEGACY_5G_RATE_OFFSET; - } else { - status->band = NL80211_BAND_2GHZ; - } -@@ -1124,8 +1128,9 @@ mwl8k_rxd_sta_process(void *_rxd, struct - - if (rxd->channel > 14) { - status->band = NL80211_BAND_5GHZ; -- if (!(status->encoding == RX_ENC_HT)) -- status->rate_idx -= 5; -+ if (!(status->encoding == RX_ENC_HT) && -+ status->rate_idx >= MWL8K_LEGACY_5G_RATE_OFFSET) -+ status->rate_idx -= MWL8K_LEGACY_5G_RATE_OFFSET; - } else { - status->band = NL80211_BAND_2GHZ; - } -- cgit v1.2.3