From patchwork Sat Jul 30 23:38:05 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hauke Mehrtens X-Patchwork-Id: 1662220 X-Patchwork-Delegate: hauke@hauke-m.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=mRoPihKW; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=hauke-m.de header.i=@hauke-m.de header.a=rsa-sha256 header.s=MBO0001 header.b=ztSYxm68; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4LwLX2162Jz9sGG for ; Sun, 31 Jul 2022 09:42:08 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=jsVZpBWg2ZzQtRRAMHvl72lzehdobgsSxZpI0p8M7fs=; b=mRoPihKWMK1Bbj LZUUGqrmB06br3toW1m+wwMZ/d/RVFxE9gxNeulvVzXxsyiB/nP6tVdOalRwxTtI6Y96lUMX6qTSS pr4Q+TkXGW1oc68ncT1Sto1ImI1OsSYIPgEgCEdTnJqdRUxxcMrxoRW6DNMTuPXC8R8Vqd5ujE5J+ 6XEigCYpoKUoZRboyhO+pvJJ+1sNjKUtJU/rU4KxxIGOiHpyVjLkxbsI1mrpekLniYE8DbmAoeYjd o2qX9c1FUTXeDH60w4cCkRfIy4S1gGaSnZYQD+zQS64N/JbqU80OUc1mw629GG9jpuojysu2Tmiqd 0par+GH+cTApIhfLeF0g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oHw2b-005d0Z-6A; Sat, 30 Jul 2022 23:38:41 +0000 Received: from mout-p-202.mailbox.org ([2001:67c:2050:0:465::202]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oHw2S-005cwW-Ls for openwrt-devel@lists.openwrt.org; Sat, 30 Jul 2022 23:38:38 +0000 Received: from smtp202.mailbox.org (smtp202.mailbox.org [IPv6:2001:67c:2050:b231:465::202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-202.mailbox.org (Postfix) with ESMTPS id 4LwLRh6dzBz9sTB; Sun, 31 Jul 2022 01:38:24 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hauke-m.de; s=MBO0001; t=1659224304; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=29a8qJhZn3AKIfUS3itHtQb6Z20ehoWqrFsOopplhiY=; b=ztSYxm68bHGNW9/q44ai9GPztk8Gps8QTbGZHT/oEmdUA18i3J27tFZdSRyKy2JpZ0owHp cXMWYAG/lEFtF7W8jUOOWSWzHRK7iO+nPbi7Cl6S+a/SI2RwSMrf0BP6tQ79MolplBc1j3 I1Sajhmpoos0rLmQInnppf1XM8Rt89SNBUTQclfSaRz4vDFpOS6DaerBcpgg5ydcHFCpVJ gdmf7ylxKl2Ar0bZdUwTfIV4SzlXnXrZDX5kL2NfFBfbYDtg3WH2ADh0EpBYeXD0UD+HxP nlwggaaGpiZEXW1xZEI18SITnXCP0otONsrARZeGAxYiXMaagy8bbQhoS9i1bQ== From: Hauke Mehrtens To: openwrt-devel@lists.openwrt.org Cc: Hauke Mehrtens Subject: mac80211: Update to version 5.15.58-1 Date: Sun, 31 Jul 2022 01:38:05 +0200 Message-Id: <20220730233805.939717-1-hauke@hauke-m.de> MIME-Version: 1.0 X-Rspamd-Queue-Id: 4LwLRh6dzBz9sTB X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220730_163833_240083_5FBBA19A X-CRM114-Status: GOOD ( 19.68 ) X-Spam-Score: -0.2 (/) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: This updates mac80211 to version 5.15.58-1 which is based on kernel 5.15.58. The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens --- package/kernel/mac80211/Makefile | 6 +- .../patches/ath/402-ath_regd_optional.patch | 2 +- .../patches/ath/404-regd_no_assoc_hints.patch | 4 +- ... [...] Content analysis details: (-0.2 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: OpenWrt Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org This updates mac80211 to version 5.15.58-1 which is based on kernel 5.15.58. The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens --- package/kernel/mac80211/Makefile | 6 +- .../patches/ath/402-ath_regd_optional.patch | 2 +- .../patches/ath/404-regd_no_assoc_hints.patch | 4 +- .../ath10k/080-ath10k_thermal_config.patch | 2 +- ...add-encapsulation-offloading-support.patch | 8 +-- .../930-ath10k_add_tpt_led_trigger.patch | 4 +- ...rolling-support-for-various-chipsets.patch | 2 +- ...75-ath10k-use-tpt-trigger-by-default.patch | 2 +- .../ath9k/551-ath9k_ubnt_uap_plus_hsr.patch | 2 +- .../580-ath9k_ar9561_fix_bias_level.patch | 42 ------------- ...d-alternative-firmware-names-from-DT.patch | 31 ++++------ .../patches/build/060-no_local_ssb_bcma.patch | 10 +-- ...crease-the-global-limit-up-to-4-SSID.patch | 13 ++-- ...ringified-name-of-command-in-error-l.patch | 29 +++------ .../602-rt2x00-introduce-rt2x00eeprom.patch | 2 +- ...-the-fwd_skb-dev-for-mesh-forwarding.patch | 2 +- ...211_hwsim-make-6-GHz-channels-usable.patch | 8 +-- ...d-support-for-.ndo_fill_forward_path.patch | 2 +- ...l_ht-reduce-fluctuations-in-rate-pro.patch | 2 +- ...l_ht-rework-rate-downgrade-code-and-.patch | 16 ++--- ...11-MBSSID-and-EMA-support-in-AP-mode.patch | 22 +++---- ...nt-APIs-for-dedicated-radar-detectio.patch | 6 +- ...ontinuous-radar-monitoring-on-offcha.patch | 6 +- ...offchannel_chain-structs-to-backgrou.patch | 4 +- ...l_ht-fix-where-rate-stats-are-stored.patch | 61 ------------------- ...airtime-fairness-back-to-deficit-rou.patch | 10 +-- ...er-PHY-AQL-limit-to-improve-fairness.patch | 2 +- ...ue-selection-for-mesh-OCB-interfaces.patch | 28 --------- .../subsys/350-bss-color-collision.patch | 4 +- .../500-mac80211_configure_antenna_gain.patch | 6 +- 30 files changed, 91 insertions(+), 247 deletions(-) delete mode 100644 package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch delete mode 100644 package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch delete mode 100644 package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile index 3917f48f05a6..0d1e6dfac80c 100644 --- a/package/kernel/mac80211/Makefile +++ b/package/kernel/mac80211/Makefile @@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=mac80211 -PKG_VERSION:=5.15.33-1 +PKG_VERSION:=5.15.58-test6 PKG_RELEASE:=1 -PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.15.33/ -PKG_HASH:=1b6b3bded4c81814ebebe2d194c2f8966d2399005b85ebb0557285b6e73f5422 +PKG_SOURCE_URL:=https://hauke-m.de/files/backports-test/ +PKG_HASH:=9aa5587409a0bd7f2e823f5e0f3c20f4f4b4ff941f085e132708ad16758c1aed PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION) diff --git a/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch b/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch index 514cfd9e5eff..4ea33365d18f 100644 --- a/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch +++ b/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch @@ -82,7 +82,7 @@ help --- a/local-symbols +++ b/local-symbols -@@ -83,6 +83,7 @@ ADM8211= +@@ -106,6 +106,7 @@ ADM8211= ATH_COMMON= WLAN_VENDOR_ATH= ATH_DEBUG= diff --git a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch index c8eef504c6f2..02281adf4a29 100644 --- a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch +++ b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch @@ -1,6 +1,6 @@ --- a/net/wireless/reg.c +++ b/net/wireless/reg.c -@@ -3304,6 +3304,8 @@ void regulatory_hint_country_ie(struct w +@@ -3309,6 +3309,8 @@ void regulatory_hint_country_ie(struct w enum environment_cap env = ENVIRON_ANY; struct regulatory_request *request = NULL, *lr; @@ -9,7 +9,7 @@ /* IE len must be evenly divisible by 2 */ if (country_ie_len & 0x01) return; -@@ -3555,6 +3557,7 @@ static bool is_wiphy_all_set_reg_flag(en +@@ -3560,6 +3562,7 @@ static bool is_wiphy_all_set_reg_flag(en void regulatory_hint_disconnect(void) { diff --git a/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch b/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch index de6f9d9bb079..d9a3cd534c8b 100644 --- a/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch +++ b/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch @@ -37,7 +37,7 @@ void ath10k_thermal_event_temperature(struct ath10k *ar, int temperature); --- a/local-symbols +++ b/local-symbols -@@ -142,6 +142,7 @@ ATH10K_SNOC= +@@ -165,6 +165,7 @@ ATH10K_SNOC= ATH10K_DEBUG= ATH10K_DEBUGFS= ATH10K_SPECTRAL= diff --git a/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch b/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch index cb02dede6410..abca7aac9e92 100644 --- a/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch +++ b/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch @@ -123,7 +123,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com ret = ath10k_htt_tx_inc_pending(htt); if (ret) { -@@ -5447,6 +5465,30 @@ static int ath10k_mac_set_txbf_conf(stru +@@ -5463,6 +5481,30 @@ static int ath10k_mac_set_txbf_conf(stru ar->wmi.vdev_param->txbf, value); } @@ -154,7 +154,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com /* * TODO: * Figure out how to handle WMI_VDEV_SUBTYPE_P2P_DEVICE, -@@ -5656,15 +5698,7 @@ static int ath10k_add_interface(struct i +@@ -5672,15 +5714,7 @@ static int ath10k_add_interface(struct i arvif->def_wep_key_idx = -1; @@ -171,7 +171,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com /* Configuring number of spatial stream for monitor interface is causing * target assert in qca9888 and qca6174. -@@ -9352,6 +9386,7 @@ static const struct ieee80211_ops ath10k +@@ -9368,6 +9402,7 @@ static const struct ieee80211_ops ath10k .stop = ath10k_stop, .config = ath10k_config, .add_interface = ath10k_add_interface, @@ -179,7 +179,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com .remove_interface = ath10k_remove_interface, .configure_filter = ath10k_configure_filter, .bss_info_changed = ath10k_bss_info_changed, -@@ -10021,6 +10056,12 @@ int ath10k_mac_register(struct ath10k *a +@@ -10037,6 +10072,12 @@ int ath10k_mac_register(struct ath10k *a if (test_bit(WMI_SERVICE_TDLS_UAPSD_BUFFER_STA, ar->wmi.svc_map)) ieee80211_hw_set(ar->hw, SUPPORTS_TDLS_BUFFER_STA); diff --git a/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch b/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch index 9cbc52b88f0e..9dfde4385ebc 100644 --- a/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch +++ b/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch @@ -1,6 +1,6 @@ --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c -@@ -9878,6 +9878,21 @@ static int ath10k_mac_init_rd(struct ath +@@ -9894,6 +9894,21 @@ static int ath10k_mac_init_rd(struct ath return 0; } @@ -22,7 +22,7 @@ int ath10k_mac_register(struct ath10k *ar) { static const u32 cipher_suites[] = { -@@ -10236,6 +10251,12 @@ int ath10k_mac_register(struct ath10k *a +@@ -10252,6 +10267,12 @@ int ath10k_mac_register(struct ath10k *a ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER; diff --git a/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch b/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch index f1e7f5ecc69d..47b52416ab1d 100644 --- a/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch +++ b/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch @@ -114,7 +114,7 @@ v13: ath10k_core-$(CONFIG_DEV_COREDUMP) += coredump.o --- a/local-symbols +++ b/local-symbols -@@ -143,6 +143,7 @@ ATH10K_DEBUG= +@@ -166,6 +166,7 @@ ATH10K_DEBUG= ATH10K_DEBUGFS= ATH10K_SPECTRAL= ATH10K_THERMAL= diff --git a/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch b/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch index 4c1b73b1c169..842853ddf415 100644 --- a/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch +++ b/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch @@ -42,7 +42,7 @@ Signed-off-by: Mathias Kresin if (ret) --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c -@@ -10253,7 +10253,7 @@ int ath10k_mac_register(struct ath10k *a +@@ -10269,7 +10269,7 @@ int ath10k_mac_register(struct ath10k *a ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER; #ifdef CPTCFG_MAC80211_LEDS diff --git a/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch b/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch index 291bc6d1e156..6b5c0dc51493 100644 --- a/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch +++ b/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch @@ -371,7 +371,7 @@ --- a/local-symbols +++ b/local-symbols -@@ -110,6 +110,7 @@ ATH9K_WOW= +@@ -133,6 +133,7 @@ ATH9K_WOW= ATH9K_RFKILL= ATH9K_CHANNEL_CONTEXT= ATH9K_PCOEM= diff --git a/package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch b/package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch deleted file mode 100644 index b883177b9f71..000000000000 --- a/package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 4509e523dba46f789377cfec6f20579adf743416 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Thibaut=20VAR=C3=88NE?= -Date: Sun, 17 Apr 2022 11:31:35 +0200 -Subject: [PATCH v2] ath9k: fix QCA9561 PA bias level -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This patch fixes an invalid TX PA DC bias level on QCA9561, which -results in a very low output power and very low throughput as devices -are further away from the AP (compared to other 2.4GHz APs). - -This patch was suggested by Felix Fietkau, who noted[1]: -"The value written to that register is wrong, because while the mask -definition AR_CH0_TOP2_XPABIASLVL uses a different value for 9561, the -shift definition AR_CH0_TOP2_XPABIASLVL_S is hardcoded to 12, which is -wrong for 9561." - -In real life testing, without this patch the 2.4GHz throughput on -Yuncore XD3200 is around 10Mbps sitting next to the AP, and closer to -practical maximum with the patch applied. - -[1] https://lore.kernel.org/all/91c58969-c60e-2f41-00ac-737786d435ae@nbd.name - -Signed-off-by: Thibaut VARÈNE ---- -v2: Adjust #define per Felix's suggestion ---- - drivers/net/wireless/ath/ath9k/ar9003_phy.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/net/wireless/ath/ath9k/ar9003_phy.h -+++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.h -@@ -720,7 +720,7 @@ - #define AR_CH0_TOP2 (AR_SREV_9300(ah) ? 0x1628c : \ - (AR_SREV_9462(ah) ? 0x16290 : 0x16284)) - #define AR_CH0_TOP2_XPABIASLVL (AR_SREV_9561(ah) ? 0x1e00 : 0xf000) --#define AR_CH0_TOP2_XPABIASLVL_S 12 -+#define AR_CH0_TOP2_XPABIASLVL_S (AR_SREV_9561(ah) ? 9 : 12) - - #define AR_CH0_XTAL (AR_SREV_9300(ah) ? 0x16294 : \ - ((AR_SREV_9462(ah) || AR_SREV_9565(ah)) ? 0x16298 : \ diff --git a/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch b/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch index 6d9cfe7b1444..8adb8c42a106 100644 --- a/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch +++ b/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch @@ -14,11 +14,9 @@ Signed-off-by: Phil Elwell .../broadcom/brcm80211/brcmfmac/sdio.c | 47 +++++++++++++++++-- 3 files changed, 87 insertions(+), 3 deletions(-) -diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c -index 2f7bc3a70c65..c2d6b8a22858 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c -@@ -10,6 +10,7 @@ +@@ -11,6 +11,7 @@ #include "debug.h" #include "core.h" #include "common.h" @@ -26,7 +24,7 @@ index 2f7bc3a70c65..c2d6b8a22858 100644 #include "of.h" static int brcmf_of_get_country_codes(struct device *dev, -@@ -118,3 +119,38 @@ void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, +@@ -153,3 +154,38 @@ void brcmf_of_probe(struct device *dev, sdio->oob_irq_nr = irq; sdio->oob_irq_flags = irqf; } @@ -65,8 +63,6 @@ index 2f7bc3a70c65..c2d6b8a22858 100644 + + return count ? fwnames : NULL; +} -diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h -index 10bf52253337..5b39a39812d0 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h @@ -5,9 +5,16 @@ @@ -86,8 +82,6 @@ index 10bf52253337..5b39a39812d0 100644 + return NULL; +} #endif /* CONFIG_OF */ -diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c -index 89de65d32ed5..88c08fee58f6 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c @@ -35,6 +35,7 @@ @@ -98,7 +92,7 @@ index 89de65d32ed5..88c08fee58f6 100644 #define DCMD_RESP_TIMEOUT msecs_to_jiffies(2500) #define CTL_DONE_TIMEOUT msecs_to_jiffies(2500) -@@ -634,7 +635,7 @@ MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH "brcmfmac*-sdio.*.txt"); +@@ -633,7 +634,7 @@ MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH "b /* per-board firmware binaries */ MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH "brcmfmac*-sdio.*.bin"); @@ -107,7 +101,7 @@ index 89de65d32ed5..88c08fee58f6 100644 BRCMF_FW_ENTRY(BRCM_CC_43143_CHIP_ID, 0xFFFFFFFF, 43143), BRCMF_FW_ENTRY(BRCM_CC_43241_CHIP_ID, 0x0000001F, 43241B0), BRCMF_FW_ENTRY(BRCM_CC_43241_CHIP_ID, 0x00000020, 43241B4), -@@ -660,6 +661,9 @@ static const struct brcmf_firmware_mapping brcmf_sdio_fwnames[] = { +@@ -659,6 +660,9 @@ static const struct brcmf_firmware_mappi BRCMF_FW_ENTRY(CY_CC_43752_CHIP_ID, 0xFFFFFFFF, 43752) }; @@ -117,8 +111,8 @@ index 89de65d32ed5..88c08fee58f6 100644 #define TXCTL_CREDITS 2 static void pkt_align(struct sk_buff *p, int len, int align) -@@ -4151,7 +4155,7 @@ int brcmf_sdio_get_fwname(struct device *dev, const char *ext, u8 *fw_name, - } +@@ -4140,7 +4144,7 @@ int brcmf_sdio_get_fwname(struct device + fwreq = brcmf_fw_alloc_request(bus_if->chip, bus_if->chiprev, brcmf_sdio_fwnames, - ARRAY_SIZE(brcmf_sdio_fwnames), @@ -126,7 +120,7 @@ index 89de65d32ed5..88c08fee58f6 100644 fwnames, ARRAY_SIZE(fwnames)); if (!fwreq) return -ENOMEM; -@@ -4207,6 +4211,9 @@ static const struct brcmf_bus_ops brcmf_sdio_bus_ops = { +@@ -4196,6 +4200,9 @@ static const struct brcmf_bus_ops brcmf_ #define BRCMF_SDIO_FW_CODE 0 #define BRCMF_SDIO_FW_NVRAM 1 @@ -136,7 +130,7 @@ index 89de65d32ed5..88c08fee58f6 100644 static void brcmf_sdio_firmware_callback(struct device *dev, int err, struct brcmf_fw_request *fwreq) { -@@ -4222,6 +4229,22 @@ static void brcmf_sdio_firmware_callback(struct device *dev, int err, +@@ -4211,6 +4218,22 @@ static void brcmf_sdio_firmware_callback brcmf_dbg(TRACE, "Enter: dev=%s, err=%d\n", dev_name(dev), err); @@ -159,7 +153,7 @@ index 89de65d32ed5..88c08fee58f6 100644 if (err) goto fail; -@@ -4430,7 +4453,7 @@ brcmf_sdio_prepare_fw_request(struct brcmf_sdio *bus) +@@ -4419,7 +4442,7 @@ brcmf_sdio_prepare_fw_request(struct brc fwreq = brcmf_fw_alloc_request(bus->ci->chip, bus->ci->chiprev, brcmf_sdio_fwnames, @@ -168,7 +162,7 @@ index 89de65d32ed5..88c08fee58f6 100644 fwnames, ARRAY_SIZE(fwnames)); if (!fwreq) return NULL; -@@ -4448,6 +4471,9 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) +@@ -4437,6 +4460,9 @@ struct brcmf_sdio *brcmf_sdio_probe(stru struct brcmf_sdio *bus; struct workqueue_struct *wq; struct brcmf_fw_request *fwreq; @@ -178,7 +172,7 @@ index 89de65d32ed5..88c08fee58f6 100644 brcmf_dbg(TRACE, "Enter\n"); -@@ -4530,6 +4556,21 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) +@@ -4519,6 +4545,21 @@ struct brcmf_sdio *brcmf_sdio_probe(stru brcmf_dbg(INFO, "completed!!\n"); @@ -200,6 +194,3 @@ index 89de65d32ed5..88c08fee58f6 100644 fwreq = brcmf_sdio_prepare_fw_request(bus); if (!fwreq) { ret = -ENOMEM; --- -2.30.2 - diff --git a/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch b/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch index 19a60d7956cb..089ff2117bd9 100644 --- a/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch +++ b/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch @@ -1,6 +1,6 @@ --- a/local-symbols +++ b/local-symbols -@@ -428,43 +428,6 @@ USB_VL600= +@@ -451,43 +451,6 @@ USB_VL600= USB_NET_CH9200= USB_NET_AQC111= USB_RTL8153_ECM= @@ -192,7 +192,7 @@ select BRCMUTIL --- a/Kconfig.local +++ b/Kconfig.local -@@ -1288,117 +1288,6 @@ config BACKPORTED_USB_NET_AQC111 +@@ -1357,117 +1357,6 @@ config BACKPORTED_USB_NET_AQC111 config BACKPORTED_USB_RTL8153_ECM tristate default USB_RTL8153_ECM @@ -312,7 +312,7 @@ default USB_ACM --- a/Kconfig.sources +++ b/Kconfig.sources -@@ -9,9 +9,6 @@ source "$BACKPORT_DIR/drivers/bus/mhi/Kc +@@ -10,9 +10,6 @@ source "$BACKPORT_DIR/drivers/soc/qcom/K source "$BACKPORT_DIR/drivers/net/wireless/Kconfig" source "$BACKPORT_DIR/drivers/net/usb/Kconfig" @@ -324,8 +324,8 @@ source "$BACKPORT_DIR/drivers/staging/Kconfig" --- a/Makefile.kernel +++ b/Makefile.kernel -@@ -42,8 +42,6 @@ obj-$(CPTCFG_MAC80211) += net/mac80211/ - obj-$(CPTCFG_QRTR) += net/qrtr/ +@@ -43,8 +43,6 @@ obj-$(CPTCFG_QRTR) += net/qrtr/ + obj-$(CPTCFG_QCOM_QMI_HELPERS) += drivers/soc/qcom/ obj-$(CPTCFG_MHI_BUS) += drivers/bus/mhi/ obj-$(CPTCFG_WLAN) += drivers/net/wireless/ -obj-$(CPTCFG_SSB) += drivers/ssb/ diff --git a/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch b/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch index 0b9f552f95ae..4115eeccbb36 100644 --- a/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch +++ b/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch @@ -19,28 +19,23 @@ the card-specific structure. drivers/net/wireless/marvell/mwifiex/decl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -diff --git a/drivers/net/wireless/marvell/mwifiex/decl.h b/drivers/net/wireless/marvell/mwifiex/decl.h -index cdc9972..f9bcbf5 100644 --- a/drivers/net/wireless/marvell/mwifiex/decl.h +++ b/drivers/net/wireless/marvell/mwifiex/decl.h @@ -30,7 +30,7 @@ #include - + #define MWIFIEX_BSS_COEX_COUNT 2 -#define MWIFIEX_MAX_BSS_NUM (3) +#define MWIFIEX_MAX_BSS_NUM (4) - + #define MWIFIEX_DMA_ALIGN_SZ 64 #define MWIFIEX_RX_HEADROOM 64 @@ -112,7 +112,7 @@ #define MWIFIEX_RATE_INDEX_OFDM0 4 - + #define MWIFIEX_MAX_STA_NUM 3 -#define MWIFIEX_MAX_UAP_NUM 3 +#define MWIFIEX_MAX_UAP_NUM 4 #define MWIFIEX_MAX_P2P_NUM 3 - + #define MWIFIEX_A_BAND_START_FREQ 5000 --- -2.30.2 - diff --git a/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch b/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch index 17e7df27225a..8fa3924e60d1 100644 --- a/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch +++ b/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch @@ -17,8 +17,6 @@ Signed-off-by: Pali Rohár .../net/wireless/marvell/mwifiex/uap_cmd.c | 3 +- 4 files changed, 95 insertions(+), 11 deletions(-) -diff --git a/drivers/net/wireless/marvell/mwifiex/cmdevt.c b/drivers/net/wireless/marvell/mwifiex/cmdevt.c -index 5a2788955f1c..1b05002330ff 100644 --- a/drivers/net/wireless/marvell/mwifiex/cmdevt.c +++ b/drivers/net/wireless/marvell/mwifiex/cmdevt.c @@ -28,6 +28,85 @@ @@ -107,7 +105,7 @@ index 5a2788955f1c..1b05002330ff 100644 /* * This function initializes a command node. * -@@ -205,8 +284,8 @@ static int mwifiex_dnld_cmd_to_fw(struct mwifiex_private *priv, +@@ -205,8 +284,8 @@ static int mwifiex_dnld_cmd_to_fw(struct cmd_code != HostCmd_CMD_FUNC_SHUTDOWN && cmd_code != HostCmd_CMD_FUNC_INIT) { mwifiex_dbg(adapter, ERROR, @@ -118,7 +116,7 @@ index 5a2788955f1c..1b05002330ff 100644 mwifiex_recycle_cmd_node(adapter, cmd_node); queue_work(adapter->workqueue, &adapter->main_work); return -1; -@@ -660,8 +739,8 @@ int mwifiex_send_cmd(struct mwifiex_private *priv, u16 cmd_no, +@@ -660,8 +739,8 @@ int mwifiex_send_cmd(struct mwifiex_priv /* Return error, since the command preparation failed */ if (ret) { mwifiex_dbg(adapter, ERROR, @@ -129,7 +127,7 @@ index 5a2788955f1c..1b05002330ff 100644 mwifiex_insert_cmd_to_free_q(adapter, cmd_node); return -1; } -@@ -900,8 +979,9 @@ int mwifiex_process_cmdresp(struct mwifiex_adapter *adapter) +@@ -900,8 +979,9 @@ int mwifiex_process_cmdresp(struct mwifi if (adapter->hw_status == MWIFIEX_HW_STATUS_INITIALIZING) { if (ret) { mwifiex_dbg(adapter, ERROR, @@ -139,9 +137,9 @@ index 5a2788955f1c..1b05002330ff 100644 + "initialization\n", __func__, + mwifiex_cmd_to_str(cmdresp_no), cmdresp_no); mwifiex_init_fw_complete(adapter); - //if (adapter->if_ops.card_reset) - // adapter->if_ops.card_reset(adapter); -@@ -1266,8 +1346,8 @@ mwifiex_process_sleep_confirm_resp(struct mwifiex_adapter *adapter, + return -1; + } else if (adapter->last_init_cmd == cmdresp_no) +@@ -1264,8 +1344,8 @@ mwifiex_process_sleep_confirm_resp(struc if (command != HostCmd_CMD_802_11_PS_MODE_ENH) { mwifiex_dbg(adapter, ERROR, @@ -152,11 +150,9 @@ index 5a2788955f1c..1b05002330ff 100644 return; } -diff --git a/drivers/net/wireless/marvell/mwifiex/main.h b/drivers/net/wireless/marvell/mwifiex/main.h -index 5923c5c14c8d..0d30f61a9d3c 100644 --- a/drivers/net/wireless/marvell/mwifiex/main.h +++ b/drivers/net/wireless/marvell/mwifiex/main.h -@@ -1106,6 +1106,8 @@ void mwifiex_cancel_all_pending_cmd(struct mwifiex_adapter *adapter); +@@ -1106,6 +1106,8 @@ void mwifiex_cancel_all_pending_cmd(stru void mwifiex_cancel_pending_scan_cmd(struct mwifiex_adapter *adapter); void mwifiex_cancel_scan(struct mwifiex_adapter *adapter); @@ -165,11 +161,9 @@ index 5923c5c14c8d..0d30f61a9d3c 100644 void mwifiex_recycle_cmd_node(struct mwifiex_adapter *adapter, struct cmd_ctrl_node *cmd_node); -diff --git a/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c b/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c -index 6b5d35d9e69f..ae6554f7b583 100644 --- a/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c +++ b/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c -@@ -48,8 +48,9 @@ mwifiex_process_cmdresp_error(struct mwifiex_private *priv, +@@ -48,8 +48,9 @@ mwifiex_process_cmdresp_error(struct mwi struct host_cmd_ds_802_11_ps_mode_enh *pm; mwifiex_dbg(adapter, ERROR, @@ -181,11 +175,9 @@ index 6b5d35d9e69f..ae6554f7b583 100644 if (adapter->curr_cmd->wait_q_enabled) adapter->cmd_wait_q.status = -1; -diff --git a/drivers/net/wireless/marvell/mwifiex/uap_cmd.c b/drivers/net/wireless/marvell/mwifiex/uap_cmd.c -index 18e89777b784..29b8af55f522 100644 --- a/drivers/net/wireless/marvell/mwifiex/uap_cmd.c +++ b/drivers/net/wireless/marvell/mwifiex/uap_cmd.c -@@ -806,7 +806,8 @@ int mwifiex_uap_prepare_cmd(struct mwifiex_private *priv, u16 cmd_no, +@@ -806,7 +806,8 @@ int mwifiex_uap_prepare_cmd(struct mwifi break; default: mwifiex_dbg(priv->adapter, ERROR, @@ -195,6 +187,3 @@ index 18e89777b784..29b8af55f522 100644 return -1; } --- -2.20.1 - diff --git a/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch b/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch index afe8cea2057b..bd33b2efbd9c 100644 --- a/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch +++ b/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch @@ -1,6 +1,6 @@ --- a/local-symbols +++ b/local-symbols -@@ -322,6 +322,7 @@ RT2X00_LIB_FIRMWARE= +@@ -345,6 +345,7 @@ RT2X00_LIB_FIRMWARE= RT2X00_LIB_CRYPTO= RT2X00_LIB_LEDS= RT2X00_LIB_DEBUGFS= diff --git a/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch b/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch index 777c93cb90c1..1ceb2be25c23 100644 --- a/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch +++ b/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch @@ -52,7 +52,7 @@ Signed-off-by: Xing Song --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c -@@ -2949,6 +2949,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80 +@@ -2948,6 +2948,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80 if (!fwd_skb) goto out; diff --git a/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch b/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch index c534d1570a70..fba0912e80cc 100644 --- a/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch +++ b/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch @@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c -@@ -3001,15 +3001,19 @@ static void mac80211_hwsim_he_capab(stru +@@ -3004,15 +3004,19 @@ static void mac80211_hwsim_he_capab(stru { u16 n_iftype_data; @@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau return; } -@@ -3299,6 +3303,12 @@ static int mac80211_hwsim_new_radio(stru +@@ -3302,6 +3306,12 @@ static int mac80211_hwsim_new_radio(stru sband->vht_cap.vht_mcs.tx_mcs_map = sband->vht_cap.vht_mcs.rx_mcs_map; break; @@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau case NL80211_BAND_S1GHZ: memcpy(&sband->s1g_cap, &hwsim_s1g_cap, sizeof(sband->s1g_cap)); -@@ -3309,6 +3319,13 @@ static int mac80211_hwsim_new_radio(stru +@@ -3312,6 +3322,13 @@ static int mac80211_hwsim_new_radio(stru continue; } @@ -61,7 +61,7 @@ Signed-off-by: Felix Fietkau sband->ht_cap.ht_supported = true; sband->ht_cap.cap = IEEE80211_HT_CAP_SUP_WIDTH_20_40 | IEEE80211_HT_CAP_GRN_FLD | -@@ -3322,10 +3339,6 @@ static int mac80211_hwsim_new_radio(stru +@@ -3325,10 +3342,6 @@ static int mac80211_hwsim_new_radio(stru sband->ht_cap.mcs.rx_mask[0] = 0xff; sband->ht_cap.mcs.rx_mask[1] = 0xff; sband->ht_cap.mcs.tx_params = IEEE80211_HT_MCS_TX_DEFINED; diff --git a/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch b/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch index 272d84f35ea6..4b9d874cfe77 100644 --- a/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch +++ b/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch @@ -69,7 +69,7 @@ Signed-off-by: Johannes Berg #endif /* __MAC80211_DRIVER_OPS */ --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -1485,7 +1485,7 @@ struct ieee80211_local { +@@ -1490,7 +1490,7 @@ struct ieee80211_local { }; static inline struct ieee80211_sub_if_data * diff --git a/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch b/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch index 16bcbc2ef914..3be43b878288 100644 --- a/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch +++ b/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch @@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/rc80211_minstrel_ht.c +++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -700,7 +700,8 @@ minstrel_ht_calc_rate_stats(struct minst +@@ -703,7 +703,8 @@ minstrel_ht_calc_rate_stats(struct minst unsigned int cur_prob; if (unlikely(mrs->attempts > 0)) { diff --git a/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch b/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch index a6817bd4a6dc..13bed48ec637 100644 --- a/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch +++ b/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch @@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/rc80211_minstrel_ht.c +++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -511,6 +511,14 @@ minstrel_ht_set_best_prob_rate(struct mi +@@ -514,6 +514,14 @@ minstrel_ht_set_best_prob_rate(struct mi int cur_tp_avg, cur_group, cur_idx; int max_gpr_group, max_gpr_idx; int max_gpr_tp_avg, max_gpr_prob; @@ -33,7 +33,7 @@ Signed-off-by: Felix Fietkau cur_group = MI_RATE_GROUP(index); cur_idx = MI_RATE_IDX(index); -@@ -532,11 +540,6 @@ minstrel_ht_set_best_prob_rate(struct mi +@@ -535,11 +543,6 @@ minstrel_ht_set_best_prob_rate(struct mi !minstrel_ht_is_legacy_group(max_tp_group)) return; @@ -45,7 +45,7 @@ Signed-off-by: Felix Fietkau max_gpr_group = MI_RATE_GROUP(mg->max_group_prob_rate); max_gpr_idx = MI_RATE_IDX(mg->max_group_prob_rate); max_gpr_prob = mi->groups[max_gpr_group].rates[max_gpr_idx].prob_avg; -@@ -594,40 +597,6 @@ minstrel_ht_assign_best_tp_rates(struct +@@ -597,40 +600,6 @@ minstrel_ht_assign_best_tp_rates(struct } @@ -86,7 +86,7 @@ Signed-off-by: Felix Fietkau static u16 __minstrel_ht_get_sample_rate(struct minstrel_ht_sta *mi, enum minstrel_sample_type type) -@@ -1107,8 +1076,6 @@ minstrel_ht_update_stats(struct minstrel +@@ -1110,8 +1079,6 @@ minstrel_ht_update_stats(struct minstrel mi->max_prob_rate = tmp_max_prob_rate; @@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau minstrel_ht_refill_sample_rates(mi); #ifdef CPTCFG_MAC80211_DEBUGFS -@@ -1153,7 +1120,7 @@ minstrel_ht_txstat_valid(struct minstrel +@@ -1156,7 +1123,7 @@ minstrel_ht_txstat_valid(struct minstrel } static void @@ -104,7 +104,7 @@ Signed-off-by: Felix Fietkau { int group, orig_group; -@@ -1168,11 +1135,7 @@ minstrel_downgrade_rate(struct minstrel_ +@@ -1171,11 +1138,7 @@ minstrel_downgrade_rate(struct minstrel_ minstrel_mcs_groups[orig_group].streams) continue; @@ -117,7 +117,7 @@ Signed-off-by: Felix Fietkau } } -@@ -1183,7 +1146,7 @@ minstrel_ht_tx_status(void *priv, struct +@@ -1186,7 +1149,7 @@ minstrel_ht_tx_status(void *priv, struct struct ieee80211_tx_info *info = st->info; struct minstrel_ht_sta *mi = priv_sta; struct ieee80211_tx_rate *ar = info->status.rates; @@ -126,7 +126,7 @@ Signed-off-by: Felix Fietkau struct minstrel_priv *mp = priv; u32 update_interval = mp->update_interval; bool last, update = false; -@@ -1233,18 +1196,13 @@ minstrel_ht_tx_status(void *priv, struct +@@ -1236,18 +1199,13 @@ minstrel_ht_tx_status(void *priv, struct /* * check for sudden death of spatial multiplexing, * downgrade to a lower number of streams if necessary. diff --git a/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch b/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch index 4fc8b592c2d4..429886d701d1 100644 --- a/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch +++ b/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch @@ -238,7 +238,7 @@ Signed-off-by: Johannes Berg static const struct nla_policy nl80211_policy[NUM_NL80211_ATTR] = { [0] = { .strict_start_type = NL80211_ATTR_HE_OBSS_PD }, [NL80211_ATTR_WIPHY] = { .type = NLA_U32 }, -@@ -783,6 +793,9 @@ static const struct nla_policy nl80211_p +@@ -788,6 +798,9 @@ static const struct nla_policy nl80211_p [NL80211_ATTR_COLOR_CHANGE_COUNT] = { .type = NLA_U8 }, [NL80211_ATTR_COLOR_CHANGE_COLOR] = { .type = NLA_U8 }, [NL80211_ATTR_COLOR_CHANGE_ELEMS] = NLA_POLICY_NESTED(nl80211_policy), @@ -248,7 +248,7 @@ Signed-off-by: Johannes Berg }; /* policy for the key attributes */ -@@ -2231,6 +2244,35 @@ fail: +@@ -2236,6 +2249,35 @@ fail: return -ENOBUFS; } @@ -284,7 +284,7 @@ Signed-off-by: Johannes Berg struct nl80211_dump_wiphy_state { s64 filter_wiphy; long start; -@@ -2816,6 +2858,9 @@ static int nl80211_send_wiphy(struct cfg +@@ -2821,6 +2863,9 @@ static int nl80211_send_wiphy(struct cfg if (nl80211_put_sar_specs(rdev, msg)) goto nla_put_failure; @@ -294,7 +294,7 @@ Signed-off-by: Johannes Berg /* done */ state->split_start = 0; break; -@@ -5005,6 +5050,96 @@ static int validate_beacon_tx_rate(struc +@@ -5020,6 +5065,96 @@ static int validate_beacon_tx_rate(struc return 0; } @@ -391,7 +391,7 @@ Signed-off-by: Johannes Berg static int nl80211_parse_beacon(struct cfg80211_registered_device *rdev, struct nlattr *attrs[], struct cfg80211_beacon_data *bcn) -@@ -5085,6 +5220,17 @@ static int nl80211_parse_beacon(struct c +@@ -5100,6 +5235,17 @@ static int nl80211_parse_beacon(struct c bcn->ftm_responder = -1; } @@ -409,7 +409,7 @@ Signed-off-by: Johannes Berg return 0; } -@@ -5541,6 +5687,17 @@ static int nl80211_start_ap(struct sk_bu +@@ -5556,6 +5702,17 @@ static int nl80211_start_ap(struct sk_bu goto out; } @@ -427,7 +427,7 @@ Signed-off-by: Johannes Berg nl80211_calculate_ap_params(¶ms); if (info->attrs[NL80211_ATTR_EXTERNAL_AUTH_SUPPORT]) -@@ -5562,6 +5719,11 @@ static int nl80211_start_ap(struct sk_bu +@@ -5577,6 +5734,11 @@ static int nl80211_start_ap(struct sk_bu out: kfree(params.acl); @@ -439,7 +439,7 @@ Signed-off-by: Johannes Berg return err; } -@@ -5586,12 +5748,14 @@ static int nl80211_set_beacon(struct sk_ +@@ -5601,12 +5763,14 @@ static int nl80211_set_beacon(struct sk_ err = nl80211_parse_beacon(rdev, info->attrs, ¶ms); if (err) @@ -455,7 +455,7 @@ Signed-off-by: Johannes Berg return err; } -@@ -9268,12 +9432,14 @@ static int nl80211_channel_switch(struct +@@ -9283,12 +9447,14 @@ static int nl80211_channel_switch(struct err = nl80211_parse_beacon(rdev, info->attrs, ¶ms.beacon_after); if (err) @@ -473,7 +473,7 @@ Signed-off-by: Johannes Berg err = nla_parse_nested_deprecated(csa_attrs, NL80211_ATTR_MAX, info->attrs[NL80211_ATTR_CSA_IES], -@@ -9392,6 +9558,8 @@ skip_beacons: +@@ -9407,6 +9573,8 @@ skip_beacons: wdev_unlock(wdev); free: @@ -482,7 +482,7 @@ Signed-off-by: Johannes Berg kfree(csa_attrs); return err; } -@@ -14939,6 +15107,8 @@ static int nl80211_color_change(struct s +@@ -14959,6 +15127,8 @@ static int nl80211_color_change(struct s wdev_unlock(wdev); out: diff --git a/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch b/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch index 90c56b4e4311..2038ee69db71 100644 --- a/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch +++ b/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch @@ -286,7 +286,7 @@ Signed-off-by: Johannes Berg +} --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -796,6 +796,7 @@ static const struct nla_policy nl80211_p +@@ -801,6 +801,7 @@ static const struct nla_policy nl80211_p [NL80211_ATTR_MBSSID_CONFIG] = NLA_POLICY_NESTED(nl80211_mbssid_config_policy), [NL80211_ATTR_MBSSID_ELEMS] = { .type = NLA_NESTED }, @@ -294,7 +294,7 @@ Signed-off-by: Johannes Berg }; /* policy for the key attributes */ -@@ -9272,12 +9273,6 @@ static int nl80211_start_radar_detection +@@ -9287,12 +9288,6 @@ static int nl80211_start_radar_detection if (err) return err; @@ -307,7 +307,7 @@ Signed-off-by: Johannes Berg err = cfg80211_chandef_dfs_required(wiphy, &chandef, wdev->iftype); if (err < 0) return err; -@@ -9288,6 +9283,16 @@ static int nl80211_start_radar_detection +@@ -9303,6 +9298,16 @@ static int nl80211_start_radar_detection if (!cfg80211_chandef_dfs_usable(wiphy, &chandef)) return -EINVAL; diff --git a/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch b/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch index 567743d84df8..a1b6e3c80d6b 100644 --- a/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch +++ b/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch @@ -118,7 +118,7 @@ Signed-off-by: Johannes Berg NL80211_RADAR_CAC_ABORTED); --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -9263,42 +9263,60 @@ static int nl80211_start_radar_detection +@@ -9278,42 +9278,60 @@ static int nl80211_start_radar_detection struct cfg80211_chan_def chandef; enum nl80211_dfs_regions dfs_region; unsigned int cac_time_ms; @@ -198,7 +198,7 @@ Signed-off-by: Johannes Berg cac_time_ms = cfg80211_chandef_dfs_cac_time(&rdev->wiphy, &chandef); if (WARN_ON(!cac_time_ms)) -@@ -9311,6 +9329,9 @@ static int nl80211_start_radar_detection +@@ -9326,6 +9344,9 @@ static int nl80211_start_radar_detection wdev->cac_start_time = jiffies; wdev->cac_time_ms = cac_time_ms; } @@ -208,7 +208,7 @@ Signed-off-by: Johannes Berg return err; } -@@ -15941,7 +15962,8 @@ static const struct genl_small_ops nl802 +@@ -15961,7 +15982,8 @@ static const struct genl_small_ops nl802 .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP, .doit = nl80211_start_radar_detection, .flags = GENL_UNS_ADMIN_PERM, diff --git a/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch b/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch index c3a4c0db25fa..483b87cd88c5 100644 --- a/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch +++ b/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch @@ -472,7 +472,7 @@ Signed-off-by: Johannes Berg } --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -796,7 +796,7 @@ static const struct nla_policy nl80211_p +@@ -801,7 +801,7 @@ static const struct nla_policy nl80211_p [NL80211_ATTR_MBSSID_CONFIG] = NLA_POLICY_NESTED(nl80211_mbssid_config_policy), [NL80211_ATTR_MBSSID_ELEMS] = { .type = NLA_NESTED }, @@ -481,7 +481,7 @@ Signed-off-by: Johannes Berg }; /* policy for the key attributes */ -@@ -9291,9 +9291,9 @@ static int nl80211_start_radar_detection +@@ -9306,9 +9306,9 @@ static int nl80211_start_radar_detection goto unlock; } diff --git a/package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch b/package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch deleted file mode 100644 index d7832acce500..000000000000 --- a/package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch +++ /dev/null @@ -1,61 +0,0 @@ -From: Peter Seiderer -Date: Mon, 4 Apr 2022 18:54:14 +0200 -Subject: [PATCH] mac80211: minstrel_ht: fix where rate stats are stored (fixes - debugfs output) - -Using an ath9k card the debugfs output of minstrel_ht looks like the following -(note the zero values for the first four rates sum-of success/attempts): - - best ____________rate__________ ____statistics___ _____last____ ______sum-of________ -mode guard # rate [name idx airtime max_tp] [avg(tp) avg(prob)] [retry|suc|att] [#success | #attempts] -OFDM 1 DP 6.0M 272 1640 5.2 3.1 53.8 3 0 0 0 0 -OFDM 1 C 9.0M 273 1104 7.7 4.6 53.8 4 0 0 0 0 -OFDM 1 B 12.0M 274 836 10.0 6.0 53.8 4 0 0 0 0 -OFDM 1 A S 18.0M 275 568 14.3 8.5 53.8 5 0 0 0 0 -OFDM 1 S 24.0M 276 436 18.1 0.0 0.0 5 0 1 80 1778 -OFDM 1 36.0M 277 300 24.9 0.0 0.0 0 0 1 0 107 -OFDM 1 S 48.0M 278 236 30.4 0.0 0.0 0 0 0 0 75 -OFDM 1 54.0M 279 212 33.0 0.0 0.0 0 0 0 0 72 - -Total packet count:: ideal 16582 lookaround 885 -Average # of aggregated frames per A-MPDU: 1.0 - -Debugging showed that the rate statistics for the first four rates where -stored in the MINSTREL_CCK_GROUP instead of the MINSTREL_OFDM_GROUP because -in minstrel_ht_get_stats() the supported check was not honoured as done in -various other places, e.g net/mac80211/rc80211_minstrel_ht_debugfs.c: - - 74 if (!(mi->supported[i] & BIT(j))) - 75 continue; - -With the patch applied the output looks good: - - best ____________rate__________ ____statistics___ _____last____ ______sum-of________ -mode guard # rate [name idx airtime max_tp] [avg(tp) avg(prob)] [retry|suc|att] [#success | #attempts] -OFDM 1 D 6.0M 272 1640 5.2 5.2 100.0 3 0 0 1 1 -OFDM 1 C 9.0M 273 1104 7.7 7.7 100.0 4 0 0 38 38 -OFDM 1 B 12.0M 274 836 10.0 9.9 89.5 4 2 2 372 395 -OFDM 1 A P 18.0M 275 568 14.3 14.3 97.2 5 52 53 6956 7181 -OFDM 1 S 24.0M 276 436 18.1 0.0 0.0 0 0 1 6 163 -OFDM 1 36.0M 277 300 24.9 0.0 0.0 0 0 1 0 35 -OFDM 1 S 48.0M 278 236 30.4 0.0 0.0 0 0 0 0 38 -OFDM 1 S 54.0M 279 212 33.0 0.0 0.0 0 0 0 0 38 - -Total packet count:: ideal 7097 lookaround 287 -Average # of aggregated frames per A-MPDU: 1.0 - -Signed-off-by: Peter Seiderer ---- - ---- a/net/mac80211/rc80211_minstrel_ht.c -+++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -364,6 +364,9 @@ minstrel_ht_get_stats(struct minstrel_pr - - group = MINSTREL_CCK_GROUP; - for (idx = 0; idx < ARRAY_SIZE(mp->cck_rates); idx++) { -+ if (!(mi->supported[group] & BIT(idx))) -+ continue; -+ - if (rate->idx != mp->cck_rates[idx]) - continue; - diff --git a/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch b/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch index 1a66aa8c00fa..0ca53860a54c 100644 --- a/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch +++ b/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch @@ -359,7 +359,7 @@ Signed-off-by: Felix Fietkau struct work_struct csa_finalize_work; bool csa_block_tx; /* write-protected by sdata_lock and local->mtx */ struct cfg80211_chan_def csa_chandef; -@@ -1180,44 +1182,6 @@ enum mac80211_scan_state { +@@ -1185,44 +1187,6 @@ enum mac80211_scan_state { SCAN_ABORT, }; @@ -404,7 +404,7 @@ Signed-off-by: Felix Fietkau DECLARE_STATIC_KEY_FALSE(aql_disable); struct ieee80211_local { -@@ -1231,8 +1195,13 @@ struct ieee80211_local { +@@ -1236,8 +1200,13 @@ struct ieee80211_local { struct codel_params cparams; /* protects active_txqs and txqi->schedule_order */ @@ -419,7 +419,7 @@ Signed-off-by: Felix Fietkau u32 aql_threshold; atomic_t aql_total_pending_airtime; -@@ -1649,125 +1618,6 @@ static inline bool txq_has_queue(struct +@@ -1654,125 +1623,6 @@ static inline bool txq_has_queue(struct return !(skb_queue_empty(&txqi->frags) && !txqi->tin.backlog_packets); } @@ -545,7 +545,7 @@ Signed-off-by: Felix Fietkau static inline int ieee80211_bssid_match(const u8 *raddr, const u8 *addr) { return ether_addr_equal(raddr, addr) || -@@ -2013,14 +1863,6 @@ int ieee80211_tx_control_port(struct wip +@@ -2018,14 +1868,6 @@ int ieee80211_tx_control_port(struct wip u64 *cookie); int ieee80211_probe_mesh_link(struct wiphy *wiphy, struct net_device *dev, const u8 *buf, size_t len); @@ -594,7 +594,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c -@@ -1584,8 +1584,12 @@ static void sta_ps_start(struct sta_info +@@ -1583,8 +1583,12 @@ static void sta_ps_start(struct sta_info for (tid = 0; tid < IEEE80211_NUM_TIDS; tid++) { struct ieee80211_txq *txq = sta->sta.txq[tid]; diff --git a/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch b/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch index 89718a827375..42e1671ed6c3 100644 --- a/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch +++ b/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch @@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -1211,6 +1211,7 @@ struct ieee80211_local { +@@ -1216,6 +1216,7 @@ struct ieee80211_local { u32 aql_txq_limit_high[IEEE80211_NUM_ACS]; u32 aql_threshold; atomic_t aql_total_pending_airtime; diff --git a/package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch b/package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch deleted file mode 100644 index 9547db03d11b..000000000000 --- a/package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch +++ /dev/null @@ -1,28 +0,0 @@ -From: Felix Fietkau -Date: Sat, 2 Jul 2022 16:41:32 +0200 -Subject: [PATCH] mac80211: fix queue selection for mesh/OCB interfaces - -When using iTXQ, the code assumes that there is only one vif queue for -broadcast packets, using the BE queue. Allowing non-BE queue marking -violates that assumption and txq->ac == skb_queue_mapping is no longer -guaranteed. This can cause issues with queue handling in the driver and -also causes issues with the recent ATF change, resulting in an AQL -underflow warning. - -Cc: stable@vger.kernel.org -Signed-off-by: Felix Fietkau ---- - ---- a/net/mac80211/wme.c -+++ b/net/mac80211/wme.c -@@ -147,8 +147,8 @@ u16 __ieee80211_select_queue(struct ieee - bool qos; - - /* all mesh/ocb stations are required to support WME */ -- if (sdata->vif.type == NL80211_IFTYPE_MESH_POINT || -- sdata->vif.type == NL80211_IFTYPE_OCB) -+ if (sta && (sdata->vif.type == NL80211_IFTYPE_MESH_POINT || -+ sdata->vif.type == NL80211_IFTYPE_OCB)) - qos = true; - else if (sta) - qos = sta->sta.wme; diff --git a/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch b/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch index d2a43304bd33..1e3486accd54 100644 --- a/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch +++ b/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch @@ -56,7 +56,7 @@ Signed-off-by: Johannes Berg --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c -@@ -3181,6 +3181,49 @@ static void ieee80211_process_sa_query_r +@@ -3180,6 +3180,49 @@ static void ieee80211_process_sa_query_r ieee80211_tx_skb(sdata, skb); } @@ -106,7 +106,7 @@ Signed-off-by: Johannes Berg static ieee80211_rx_result debug_noinline ieee80211_rx_h_mgmt_check(struct ieee80211_rx_data *rx) { -@@ -3206,6 +3249,9 @@ ieee80211_rx_h_mgmt_check(struct ieee802 +@@ -3205,6 +3248,9 @@ ieee80211_rx_h_mgmt_check(struct ieee802 !(rx->flags & IEEE80211_RX_BEACON_REPORTED)) { int sig = 0; diff --git a/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch b/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch index 171af5ee56d6..50c24a774669 100644 --- a/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch +++ b/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch @@ -87,7 +87,7 @@ CFG80211_TESTMODE_DUMP(ieee80211_testmode_dump) --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -1441,6 +1441,7 @@ struct ieee80211_local { +@@ -1448,6 +1448,7 @@ struct ieee80211_local { int dynamic_ps_forced_timeout; int user_power_level; /* in dBm, for all interfaces */ @@ -129,7 +129,7 @@ local->hw.max_mtu = IEEE80211_MAX_DATA_LEN; --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -797,6 +797,7 @@ static const struct nla_policy nl80211_p +@@ -802,6 +802,7 @@ static const struct nla_policy nl80211_p NLA_POLICY_NESTED(nl80211_mbssid_config_policy), [NL80211_ATTR_MBSSID_ELEMS] = { .type = NLA_NESTED }, [NL80211_ATTR_RADAR_BACKGROUND] = { .type = NLA_FLAG }, @@ -137,7 +137,7 @@ }; /* policy for the key attributes */ -@@ -3377,6 +3378,22 @@ static int nl80211_set_wiphy(struct sk_b +@@ -3391,6 +3392,22 @@ static int nl80211_set_wiphy(struct sk_b if (result) goto out; }