diff --git a/package/kernel/mt76/Makefile b/package/kernel/mt76/Makefile index c44ed4d1da..3f48c76faa 100644 --- a/package/kernel/mt76/Makefile +++ b/package/kernel/mt76/Makefile @@ -1,16 +1,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mt76 -PKG_RELEASE=2 +PKG_RELEASE=1 PKG_LICENSE:=GPLv2 PKG_LICENSE_FILES:= PKG_SOURCE_URL:=https://github.com/openwrt/mt76 PKG_SOURCE_PROTO:=git -PKG_SOURCE_DATE:=2024-03-18 -PKG_SOURCE_VERSION:=2135e201e7a9339e018d4e2d4a33c73266e674d7 -PKG_MIRROR_HASH:=530db8a70d18295677989aafc9c1757b151ef77e359985417f1d36e7d2415d33 +PKG_SOURCE_DATE:=2024-04-03 +PKG_SOURCE_VERSION:=1e336a8582dce2ef32ddd440d423e9afef961e71 +PKG_MIRROR_HASH:=f3801af80d5f9c1aa266c9401d4dfa2d501df0382c81fd249150e17dddc70936 PKG_MAINTAINER:=Felix Fietkau PKG_USE_NINJA:=0 diff --git a/package/kernel/mt76/patches/100-fix-build-on-linux-kernel-6.6.patch b/package/kernel/mt76/patches/100-fix-build-on-linux-kernel-6.6.patch deleted file mode 100644 index 4fdba0c472..0000000000 --- a/package/kernel/mt76/patches/100-fix-build-on-linux-kernel-6.6.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- a/mac80211.c -+++ b/mac80211.c -@@ -4,7 +4,9 @@ - */ - #include - #include -+#if LINUX_VERSION_CODE < KERNEL_VERSION(6,6,0) - #include -+#endif - #include "mt76.h" - - #define CHAN2G(_idx, _freq) { \ ---- a/mt76.h -+++ b/mt76.h -@@ -13,6 +13,9 @@ - #include - #include - #include -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,6,0) -+#include -+#endif - #include - #include - #include "util.h" diff --git a/package/kernel/mt76/patches/101-wifi-mt76-mt7603-add-debugfs-attr-for-disabling-fram.patch b/package/kernel/mt76/patches/101-wifi-mt76-mt7603-add-debugfs-attr-for-disabling-fram.patch deleted file mode 100644 index 7d2b7eccbf..0000000000 --- a/package/kernel/mt76/patches/101-wifi-mt76-mt7603-add-debugfs-attr-for-disabling-fram.patch +++ /dev/null @@ -1,81 +0,0 @@ -From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= -Date: Mon, 25 Mar 2024 18:54:02 +0100 -Subject: [PATCH] wifi: mt76: mt7603: add debugfs attr for disabling frames - buffering -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -MT7603EN and MT7628AN were reported by multiple users to be unstable -under high traffic. Transmission of packets could stop for seconds often -leading to disconnections. - -Long research & debugging revelaed a close relation between MCU -interrupts of type PKT_TYPE_TXS and slowdowns / stalls. That led to -questioning frames buffering feature. - -It turns out that disabling SKBs loopback code makes mt7603 devices much -more stable under load. There are still some traffic hiccups but those -happen like once every an hour and end up in recovery in most cases. - -Add a debugfs option for disabling frames buffering so users can give it -a try. If this solution yields a success we can make this feature -disabled by default. - -This change was successfully tested using 2 GHz AP interface on: -1. Netgear R6220 - MT7621ST (SoC) + MT7603EN (WiFi) + MT7612EN (WiFi) -2. Xiaomi Mi Router 4C - MT7628AN (Wi-Fi SoC) - -Link: https://lore.kernel.org/linux-wireless/7c96d5ee-86c1-8068-1b58-40db6087a24f@gmail.com/ -Closes: https://github.com/openwrt/mt76/issues/865 -Fixes: c8846e101502 ("mt76: add driver for MT7603E and MT7628/7688") -Signed-off-by: Rafał Miłecki ---- - mt7603/debugfs.c | 2 ++ - mt7603/dma.c | 3 +++ - mt7603/init.c | 1 + - mt7603/mt7603.h | 2 ++ - 4 files changed, 8 insertions(+) - ---- a/mt7603/debugfs.c -+++ b/mt7603/debugfs.c -@@ -115,4 +115,6 @@ void mt7603_init_debugfs(struct mt7603_d - &dev->sensitivity_limit); - debugfs_create_bool("dynamic_sensitivity", 0600, dir, - &dev->dynamic_sensitivity); -+ debugfs_create_bool("frames_buffering", 0600, dir, -+ &dev->frames_buffering); - } ---- a/mt7603/dma.c -+++ b/mt7603/dma.c -@@ -27,6 +27,9 @@ mt7603_rx_loopback_skb(struct mt7603_dev - u32 val; - u8 tid = 0; - -+ if (!dev->frames_buffering) -+ goto free; -+ - if (skb->len < MT_TXD_SIZE + sizeof(struct ieee80211_hdr)) - goto free; - ---- a/mt7603/init.c -+++ b/mt7603/init.c -@@ -517,6 +517,7 @@ int mt7603_register_device(struct mt7603 - dev->slottime = 9; - dev->sensitivity_limit = 28; - dev->dynamic_sensitivity = true; -+ dev->frames_buffering = true; - - ret = mt7603_init_hardware(dev); - if (ret) ---- a/mt7603/mt7603.h -+++ b/mt7603/mt7603.h -@@ -155,6 +155,8 @@ struct mt7603_dev { - u32 reset_test; - - unsigned int reset_cause[__RESET_CAUSE_MAX]; -+ -+ bool frames_buffering; - }; - - extern const struct mt76_driver_ops mt7603_drv_ops;