[rdkb][common][bsp][Refactor and sync wifi from openwrt]

[Description]
387b6ecf [MAC80211][WiFi6][core][Add exported function for SoftMAC driver to get QoS map]
4e3cb5c0 [MAC80211][Rebase Patch][Fix inconsistent QoS mapping between SW and HW]
03f284d9 [MAC80211][WiFi6][mt76][Fix inconsistent QoS mapping between SW and HW]
cdd2ea74 [MAC80211][WiFi6][mt76][Fix rcu stall issue in testmode]
8f684af1 [MAC80211][Release][Add commit revision for Filogic 880/860 release]
bf9808d3 [MAC80211][WiFi6][mt76][Refactor add dummy HW offload of IEEE 802.11 fragmentation]
00b8ee9c [MAC80211][misc][Update Release Information v2]
efcc36f2 [MAC80211][misc][Update Release Information]
8249196d [MAC80211][WiFi7][misc][Add UCI radio disabled for testmode]

[Release-log]

Change-Id: I0e39f84703dc98e6f25cf7d59e98729d33cc6f12
diff --git a/recipes-wifi/atenl/files/iwpriv.sh b/recipes-wifi/atenl/files/iwpriv.sh
index dac4914..5fd17c0 100644
--- a/recipes-wifi/atenl/files/iwpriv.sh
+++ b/recipes-wifi/atenl/files/iwpriv.sh
@@ -1438,6 +1438,11 @@
 
     if [ "${cmd}" = "testmode" ]; then
         testmode_enable="1"
+        do_cmd "wifi down"
+        do_cmd "uci set wireless.radio0.disabled=1"
+        do_cmd "uci set wireless.radio1.disabled=1"
+        do_cmd "uci set wireless.radio2.disabled=1"
+        do_cmd "uci commit"
     fi
 
     if [ "${eeprom_mode}" = "flash" ]; then
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch
index 55286b8..b149bda 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch
@@ -16,7 +16,6 @@
 The mac80211 layer already has a new variable "update",
 so the redundant variable "disable" has been removed.
 
-CR-ID: WCNCR00240597
 Signed-off-by: MeiChia Chiu <MeiChia.Chiu@mediatek.com>
 ---
  hostapd/ctrl_iface.c         | 66 ++++++++++++++++++++++++++++++++++++
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch
index ade8550..03513eb 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch
@@ -8,9 +8,7 @@
 NULL check is necessary before access the 'sta'.
 Only one such check was missed in this function, and this patch fixs it.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I028b7779acfbce5292a60c9f800a83c57c999943
 ---
  src/ap/ieee802_11.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch
index cfb3f3d..6a9f126 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 075/104] hostapd: mtk: ACS: remove chan/freq list check when
  scan request and factor calculation
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/acs.c | 12 ------------
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch
index 3cf864d..4fa5b6f 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch
@@ -3,7 +3,6 @@
 Date: Tue, 26 Dec 2023 08:05:41 +0800
 Subject: [PATCH 086/104] mtk: hostapd: add mld_primary option
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  hostapd/config_file.c | 2 ++
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch
index 9634a0c..ac847f5 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch
@@ -9,9 +9,7 @@
 Note that setting 'mld_allowed_phy' to 0 makes no phy allowed for MLO.
 In other word, the STA becomes a legacy STA.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I5ad15d3748c6fef476aa067cc4901157a96f8804
 ---
  wpa_supplicant/config.c      |  1 +
  wpa_supplicant/config.h      |  1 +
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch
index a04abae..1ba9e75 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch
@@ -9,9 +9,7 @@
 1. get_mu: $ hostapd_cli -i <intf> get_mu <band_idx>
 2. set_mu: $ hostapd_cli -i <intf> set_mu <mu_onff>:<band_idx>
 
-CR-Id: WCNCR00240772
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
-Change-Id: I58635e588225a8876a77346c417ec281f9b76e4c
 ---
  hostapd/config_file.c        |  9 +++++
  hostapd/ctrl_iface.c         | 78 ++++++++++++++++++++++++++++--------
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch
index fab4ef8..cbf05f5 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch
@@ -9,13 +9,10 @@
 3. Only flush the old stations for the first BSS; otherwise, after DFS CAC
 stations would be flushed again.
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Idbeba92aeadd8b34f61202e4c3df52bae19d9b73
 
 Add background radar handling
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  src/ap/ap_drv_ops.c                |  9 +++++++++
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch
index 8f3096b..129f54b 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch
@@ -5,7 +5,6 @@
 
 temporary workaround for mlo channel switch
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  hostapd/ctrl_iface.c   | 3 +--
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch
index 1ce57ff..4ee23cd 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch
@@ -6,9 +6,7 @@
 1. Add mld_assoc_sta to get the primary sta_info.
 2. Find hapd according to mld address.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: Ic2d67c0623299dfc00021925296c54e25fe86959
 ---
  src/ap/drv_callbacks.c       |  3 ++-
  src/ap/ieee802_11.c          |  8 ++++++++
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch
index 607e260..0cff032 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 093/104] mtk: hostapd: prevent getting non-MLD STA for other
  links
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/sta_info.c | 3 ++-
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch
index a5e6812..c276024 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch
@@ -11,9 +11,7 @@
 (The original gerrit somehow disappears, so I commit it again)
 (https://gerrit.mediatek.inc/c/gateway/WiFi7/mac80211/hostapd/+/8715613)
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I938f0fb80862074b95fc33b3c4f566f92ae21de1
 ---
  src/ap/ap_drv_ops.c | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch
index 90da0fd..e31a05c 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch
@@ -4,9 +4,7 @@
 Subject: [PATCH 095/104] mtk: hostapd: using MLD addr as SA/BSSID for
  broadcast DEAUTH
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I4ba7763a0f5c5a16174cf80393b5f1588a9ce42c
 ---
  src/ap/ap_drv_ops.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch
index 6fd7d62..f311581 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch
@@ -6,9 +6,7 @@
 Without this commit, the maximum vht bfee sts can only be 0x3. This commit
 support to read BF-ANTENNA-5 to set vht bfee sts capability as 4.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
-Change-Id: I3ec1dc28149961bbb01c31a12cd4acd0fd77c2f4
 ---
  hostapd/config_file.c | 3 +++
  1 file changed, 3 insertions(+)
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch
index 061f038..9c4c4e5 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch
@@ -7,8 +7,6 @@
 2. add csi set/dump flow
 3. add csi raw data to json
 
-CR-Id: WCNCR00364748
-Change-Id: If16d4b39ebb7942e47ed4bf4459589d6191983ac
 Signed-off-by: mtk20656 <chank.chen@mediatek.com>
 ---
  hostapd/ctrl_iface.c              | 193 ++++++++++++++++++++++++
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch
index a63f81a..c27e065 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch
@@ -12,9 +12,7 @@
 Without this patch, wds mode cannot work and the AP would not be
 aware that station is using 4 address.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I9661226ed0847abb1de0d8c808daf3ad8cd5dc99
 ---
  src/ap/drv_callbacks.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch
index e688a56..7e2c70b 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 100/104] mtk: hostapd: MLD: find partner links by BSSID and
  SSID
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  wpa_supplicant/bss.c |  8 ++++++--
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch
index 27f986a..08814ed 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch
@@ -12,7 +12,6 @@
 
 Advanced support includes BW cynchronization and channel switch.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/ucode.c         | 52 ++++++++++++++++++++++++++++++++++++++----
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch
index 8881b72..c958591 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch
@@ -5,8 +5,6 @@
 
 Add band_idx attribute in pp cmd for vendor cmd under mld setting.
 
-CR-Id: WCNCR00259302
-Change-Id: I3c4c7e9dff5eaa2ff48537dc0c5398006a305713
 ---
  hostapd/config_file.c        |  6 ++--
  hostapd/ctrl_iface.c         | 69 +++++++++++++++++++++++++-----------
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch
index 9f5346e..cca2e9a 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch
@@ -19,9 +19,7 @@
 Note that in NL80211_CMD_NEW_BEACON, we also set beacon interval to 0,
 which helps to bypass some mac80211 beacon active checks, e.g., during ACS.
 
-CR-Id: WCNCR00238098
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: I99320f7802041dc7d8e780041bb686ce3700c0b6
 ---
  hostapd/config_file.c |  2 ++
  src/ap/ap_config.h    |  2 ++
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch
index 95be18f..e1c0274 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch
@@ -7,7 +7,6 @@
 This function returns ture only if all links fromt all MLD APs are
 ready.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/ucode.c | 18 ++++++++++++++++++
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/0105-mtk-hostapd-free-station-when-hapd-deinit.patch b/recipes-wifi/hostapd/files/patches-2.10.3/0105-mtk-hostapd-free-station-when-hapd-deinit.patch
new file mode 100644
index 0000000..81b2015
--- /dev/null
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/0105-mtk-hostapd-free-station-when-hapd-deinit.patch
@@ -0,0 +1,43 @@
+From 95dcf88b68837221ad937fe7c675b169c8034384 Mon Sep 17 00:00:00 2001
+From: Peter Chiu <chui-hao.chiu@mediatek.com>
+Date: Mon, 22 Apr 2024 08:40:18 +0800
+Subject: [PATCH] mtk: hostapd: free station when hapd deinit
+
+Free all stations in the same MLD when a bss is deinit.
+Without this patch, the AP_VLAN interface may be free after
+stop ap and leads to kernel crash.
+
+Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
+---
+ src/ap/hostapd.c | 14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c
+index c31e0badd..62943c561 100644
+--- a/src/ap/hostapd.c
++++ b/src/ap/hostapd.c
+@@ -842,7 +842,21 @@ static int hostapd_flush_old_stations(struct hostapd_data *hapd, u16 reason)
+ 
+ void hostapd_bss_deinit_no_free(struct hostapd_data *hapd)
+ {
++#ifdef CONFIG_IEEE80211BE
++	struct hostapd_data *link;
++
++	/* FIXME: free all stations to remvoe AP_VLAN interface. Allocate */
++	/* per-link structures for AP_VLAN in mac80211 and only remove single */
++	/* link here. */
++	if (hostapd_is_mld_ap(hapd)) {
++		for_each_mld_link(link, hapd)
++			hostapd_free_stas(link);
++	} else {
++		hostapd_free_stas(hapd);
++	}
++#else
+ 	hostapd_free_stas(hapd);
++#endif
+ 	hostapd_flush_old_stations(hapd, WLAN_REASON_DEAUTH_LEAVING);
+ #ifdef CONFIG_WEP
+ 	hostapd_clear_wep(hapd);
+-- 
+2.18.0
+
diff --git a/recipes-wifi/hostapd/files/patches-2.10.3/patches.inc b/recipes-wifi/hostapd/files/patches-2.10.3/patches.inc
index e7987dd..d61727b 100644
--- a/recipes-wifi/hostapd/files/patches-2.10.3/patches.inc
+++ b/recipes-wifi/hostapd/files/patches-2.10.3/patches.inc
@@ -103,4 +103,5 @@
     file://0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch \
     file://0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch \
     file://0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch \
+    file://0105-mtk-hostapd-free-station-when-hapd-deinit.patch \
     "
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0011-mtk-cfg80211-implement-DFS-status-show-cac-and-nop-s.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0011-mtk-cfg80211-implement-DFS-status-show-cac-and-nop-s.patch
index 5b1cb2a..be103d3 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0011-mtk-cfg80211-implement-DFS-status-show-cac-and-nop-s.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0011-mtk-cfg80211-implement-DFS-status-show-cac-and-nop-s.patch
@@ -8,9 +8,7 @@
 
 Refactor DFS debugfs command for MLO
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I5e50523684bdc5086a18d36177e0d81530ba0e3f
 ---
  include/net/cfg80211.h  |   1 +
  net/mac80211/cfg.c      |  25 +++
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0013-mtk-mac80211-check-the-control-channel-before-downgr.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0013-mtk-mac80211-check-the-control-channel-before-downgr.patch
index 4671638..6aaf0f5 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0013-mtk-mac80211-check-the-control-channel-before-downgr.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0013-mtk-mac80211-check-the-control-channel-before-downgr.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 13/61] mtk: mac80211: check the control channel before
  downgrading the bandwidth
 
-Change-Id: I25f0495818194a18e4acf23d6c45393f12e32080
 ---
  net/mac80211/mlme.c | 23 +++++++++++++++++++++++
  1 file changed, 23 insertions(+)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0015-mtk-mac80211-add-fill-receive-path-ops-to-get-wed-id.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0015-mtk-mac80211-add-fill-receive-path-ops-to-get-wed-id.patch
index d02a2c0..1521470 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0015-mtk-mac80211-add-fill-receive-path-ops-to-get-wed-id.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0015-mtk-mac80211-add-fill-receive-path-ops-to-get-wed-id.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 15/61] mtk: mac80211: add fill receive path ops to get wed idx
 
 Signed-off-by: Sujuan Chen <sujuan.chen@mediatek.com>
-Change-Id: Ib3dbf4a1d960e4b0aad3ebdb1327912ae087f877
 ---
  include/net/mac80211.h    |  5 +++++
  net/mac80211/driver-ops.h | 13 +++++++++++++
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0016-mtk-mac80211-track-obss-color-bitmap.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0016-mtk-mac80211-track-obss-color-bitmap.patch
index dbbfb55..01c513d 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0016-mtk-mac80211-track-obss-color-bitmap.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0016-mtk-mac80211-track-obss-color-bitmap.patch
@@ -9,7 +9,6 @@
 echo 1 > /sys/kernel/debug/tracing/events/mac80211/bss_color_bitmap/enable
 echo 1 > /sys/kernel/debug/tracing/events/mac80211/bss_color_collision/enable
 
-Change-Id: I24ebcc3181c05476b41107ce8fe7f3d4c8907e81
 ---
  include/net/mac80211.h |  1 +
  net/mac80211/rx.c      |  6 +++++-
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0017-mtk-mac80211-update-max_bssid_indicator-based-on-rea.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0017-mtk-mac80211-update-max_bssid_indicator-based-on-rea.patch
index 31e8a28..b764033 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0017-mtk-mac80211-update-max_bssid_indicator-based-on-rea.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0017-mtk-mac80211-update-max_bssid_indicator-based-on-rea.patch
@@ -6,8 +6,6 @@
 
 Fix max_bssid_indicator get empty value due to wrong pointer.
 
-CR-Id: WCNCR00259302
-Change-Id: I2a9bcd96e9432569a9968ba9e519c55ebe13cdfe
 ---
  net/mac80211/cfg.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0019-mtk-mac80211-add-sta-assisted-DFS-state-update-mecha.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0019-mtk-mac80211-add-sta-assisted-DFS-state-update-mecha.patch
index 244689c..aa94d8f 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0019-mtk-mac80211-add-sta-assisted-DFS-state-update-mecha.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0019-mtk-mac80211-add-sta-assisted-DFS-state-update-mecha.patch
@@ -5,7 +5,6 @@
  mechanism
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Ida821ebb42825cd1895eaccfbbfda1106e598009
 ---
  include/net/cfg80211.h       | 14 +++++++++
  include/uapi/linux/nl80211.h |  6 ++++
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0024-mtk-mac80211-avoid-calling-switch_vif_chanctx-when-u.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0024-mtk-mac80211-avoid-calling-switch_vif_chanctx-when-u.patch
index edfa07a..6a68e82 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0024-mtk-mac80211-avoid-calling-switch_vif_chanctx-when-u.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0024-mtk-mac80211-avoid-calling-switch_vif_chanctx-when-u.patch
@@ -5,7 +5,6 @@
  use_chanctx is false
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I2876d763ed1ecb5b7c7e5c53b2623dcd34ece774
 ---
  net/mac80211/chan.c | 14 ++++++++------
  1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0033-mtk-mac80211-add-per-bss-flag-to-support-vendors-cou.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0033-mtk-mac80211-add-per-bss-flag-to-support-vendors-cou.patch
index 081bd72..cdc396e 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0033-mtk-mac80211-add-per-bss-flag-to-support-vendors-cou.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0033-mtk-mac80211-add-per-bss-flag-to-support-vendors-cou.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 33/61] mtk: mac80211: add per-bss flag to support vendors
  counter
 
-Change-Id: I73fcae64d933c66b9eef9b6f55f7bb1e4ce19501
 ---
  include/uapi/linux/nl80211.h |  1 +
  net/mac80211/rx.c            |  8 ++++++--
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0034-mtk-mac80211-set-eht_support-to-false-when-AP-is-not.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0034-mtk-mac80211-set-eht_support-to-false-when-AP-is-not.patch
index 9faae94..ecdc233 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0034-mtk-mac80211-set-eht_support-to-false-when-AP-is-not.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0034-mtk-mac80211-set-eht_support-to-false-when-AP-is-not.patch
@@ -4,8 +4,6 @@
 Subject: [PATCH 34/61] mtk: mac80211: set eht_support to false when AP is not
  in EHT mode
 
-CR-ID: WCNCR00240597
-Change-Id: I826428e26ba70a0e77fcc8c9bc0dca440060e880
 Signed-off-by: MeiChia Chiu <meichia.chiu@mediatek.com>
 ---
  net/mac80211/cfg.c | 1 +
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0035-mtk-mac80211-Add-cert-mode-to-disable-ba-timeout.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0035-mtk-mac80211-Add-cert-mode-to-disable-ba-timeout.patch
index 50e53f9..9d76079 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0035-mtk-mac80211-Add-cert-mode-to-disable-ba-timeout.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0035-mtk-mac80211-Add-cert-mode-to-disable-ba-timeout.patch
@@ -6,13 +6,10 @@
 Add a switch of certification mode in debugfs as cert_mode. In the case
 we use it to disable BA timeout from STA to prevent crashing STA.
 
-CR-Id: WCNCR00259302
-Change-Id: I537715030d2eeae3c795725093c79c4878086f1a
 Signed-off-by: Allen.Ye <allen.ye@mediatek.com>
 
 Move the variable 'cert_mode' from ieee80211_local to ieee80211_hw
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  include/net/mac80211.h |  6 ++++++
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0036-backports-update-kernel-version-check-for-eth_hw_add.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0036-backports-update-kernel-version-check-for-eth_hw_add.patch
index 95fac53..01f9aaf 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0036-backports-update-kernel-version-check-for-eth_hw_add.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0036-backports-update-kernel-version-check-for-eth_hw_add.patch
@@ -7,9 +7,7 @@
 Kernel v5.4.260 has added this API, so update kernel version check in
 backports include.
 
-CR-Id: WCNCR00238098
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: I708aabbe51de9d480932ce03b30d004bf1d67ebd
 ---
  backport-include/linux/etherdevice.h | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0037-mac80211-mtk-ACS-channel-time-is-reset-by-ch_restore.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0037-mac80211-mtk-ACS-channel-time-is-reset-by-ch_restore.patch
index 88560ce..806bfd5 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0037-mac80211-mtk-ACS-channel-time-is-reset-by-ch_restore.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0037-mac80211-mtk-ACS-channel-time-is-reset-by-ch_restore.patch
@@ -22,9 +22,7 @@
 Mac80211 scan state will be set in scanning, and will be reset after
 scan done and before restore to duty channel.
 
-CR-Id: WCNCR00357653
 Signed-off-by: fancy.liu <fancy.liu@mediatek.com>
-Change-Id: I480a956c8a362929040d941247d74ff0e5d06ffb
 ---
  include/net/mac80211.h | 7 +++++++
  net/mac80211/util.c    | 9 +++++++++
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0038-mtk-mac80211-Fix-SMPS-action-frame-cap-check.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0038-mtk-mac80211-Fix-SMPS-action-frame-cap-check.patch
index f958799..93a9f79 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0038-mtk-mac80211-Fix-SMPS-action-frame-cap-check.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0038-mtk-mac80211-Fix-SMPS-action-frame-cap-check.patch
@@ -7,9 +7,7 @@
 Due to 6G band doesn't have HT cap, we change cap check into each action
 frame section.
 
-CR-Id: WCNCR00259302
 Signed-off-by: Allen.Ye <allen.ye@mediatek.com>
-Change-Id: I65d2cc29efdb4a78ac670890842496a2056fc2ba
 ---
  net/mac80211/rx.c | 8 +++++---
  1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0039-mtk-mac80211-allow-multiple-links-for-STA-vif.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0039-mtk-mac80211-allow-multiple-links-for-STA-vif.patch
index 4c56b5c..2161fef 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0039-mtk-mac80211-allow-multiple-links-for-STA-vif.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0039-mtk-mac80211-allow-multiple-links-for-STA-vif.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 39/61] mtk: mac80211: allow multiple links for STA vif
 
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: I92d07be6ec87523ef3fdc3855151daea382eb290
 ---
  net/mac80211/link.c | 3 ---
  1 file changed, 3 deletions(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0040-mtk-mac80211-increase-association-timeout-time.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0040-mtk-mac80211-increase-association-timeout-time.patch
index ff69c5a..eb85ebc 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0040-mtk-mac80211-increase-association-timeout-time.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0040-mtk-mac80211-increase-association-timeout-time.patch
@@ -7,7 +7,6 @@
 hanlding the request.
 
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: I5ea21682b2498c73acc88095a665db1a3f7e7302
 ---
  net/mac80211/mlme.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0041-mtk-mac80211-fix-crash-when-starting-tx-ba-session.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0041-mtk-mac80211-fix-crash-when-starting-tx-ba-session.patch
index 7427cc3..aa1b7ae 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0041-mtk-mac80211-fix-crash-when-starting-tx-ba-session.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0041-mtk-mac80211-fix-crash-when-starting-tx-ba-session.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 41/61] mtk: mac80211: fix crash when starting tx ba session
 
 Signed-off-by: Bo Jiao <Bo.Jiao@mediatek.com>
-Change-Id: I62a463f9a37b25d4a2bfaff00e721c369e532e98
 ---
  net/mac80211/agg-tx.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0042-mtk-mac80211-use-link-address-for-eapol-source-in-ie.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0042-mtk-mac80211-use-link-address-for-eapol-source-in-ie.patch
index 09b76a0..f223bff 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0042-mtk-mac80211-use-link-address-for-eapol-source-in-ie.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0042-mtk-mac80211-use-link-address-for-eapol-source-in-ie.patch
@@ -5,7 +5,6 @@
  ieee80211_tx_control_port()
 
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: I67453fa4299a25a921a971cd5a2b7098844c5b8d
 ---
  net/mac80211/tx.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0043-cfg80211-mtk-implement-DFS-radar-detect-for-MLO.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0043-cfg80211-mtk-implement-DFS-radar-detect-for-MLO.patch
index 6ad3b95..b2a7cbf 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0043-cfg80211-mtk-implement-DFS-radar-detect-for-MLO.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0043-cfg80211-mtk-implement-DFS-radar-detect-for-MLO.patch
@@ -11,15 +11,11 @@
 channel switch will use it, so wait until channel switch is completed.
    (b) ieee80211_dfs_cac_cancel, ieee80211_dfs_radar_detected_work, ...
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Ic3004607081ae407dd05095769f9e2855a068dd2
 
 rework radar detected flow for mlo
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I1c76d0b12db52fdb14e73c410d7da69de65bf115
 ---
  include/net/cfg80211.h     |  4 +++-
  net/mac80211/cfg.c         | 26 +++++++++++++++++++-------
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0044-mtk-wifi-mac80211-add-wds-mlo-support.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0044-mtk-wifi-mac80211-add-wds-mlo-support.patch
index a82a203..52e91c0 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0044-mtk-wifi-mac80211-add-wds-mlo-support.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0044-mtk-wifi-mac80211-add-wds-mlo-support.patch
@@ -1,4 +1,4 @@
-From 14fd30e05515edba0fcca8a7238d402cb2d9dd27 Mon Sep 17 00:00:00 2001
+From 5f294c8632c08814df00df8ed297e852d21b0e02 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Fri, 19 Jan 2024 15:22:00 +0800
 Subject: [PATCH 44/61] mtk: wifi: mac80211: add wds mlo support
@@ -8,14 +8,12 @@
 2. Copy link information to AP_VLAN interface.
 3. Fill 4addr nullfunc by mld address.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I620bb51e47965c2558751ae266609dad61d421b6
 ---
  net/mac80211/cfg.c   |  7 -------
- net/mac80211/iface.c | 19 +++++++++++--------
+ net/mac80211/iface.c | 23 +++++++++++++++--------
  net/mac80211/mlme.c  | 15 +++++++++------
- 3 files changed, 20 insertions(+), 21 deletions(-)
+ 3 files changed, 24 insertions(+), 21 deletions(-)
 
 diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
 index 3233e2a..0cb68fb 100644
@@ -43,10 +41,10 @@
  }
  
 diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
-index 0ae31a9..083da12 100644
+index 0ae31a9..fce9834 100644
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -381,19 +381,22 @@ static int ieee80211_check_concurrent_iface(struct ieee80211_sub_if_data *sdata,
+@@ -381,19 +381,26 @@ static int ieee80211_check_concurrent_iface(struct ieee80211_sub_if_data *sdata,
  							nsdata->vif.type))
  				return -ENOTUNIQ;
  
@@ -70,6 +68,10 @@
 +				sdata->vif.active_links = nsdata->vif.active_links;
 +				sdata->vif.dormant_links = nsdata->vif.dormant_links;
 +				for (i = 0; i < IEEE80211_MLD_MAX_NUM_LINKS; i++) {
++					if (!ieee80211_vif_is_mld(&nsdata->vif) &&
++					    sdata->link[i] == &sdata->deflink)
++						continue;
++
 +					sdata->link[i] = nsdata->link[i];
 +					sdata->vif.link_conf[i] = nsdata->vif.link_conf[i];
 +				}
@@ -121,5 +123,5 @@
  	if (!assoc_data)
  		return -ENOMEM;
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0045-mtk-mac80211-fix-ieee80211_probe_client-warning.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0045-mtk-mac80211-fix-ieee80211_probe_client-warning.patch
index 7f3eef0..1bb036d 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0045-mtk-mac80211-fix-ieee80211_probe_client-warning.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0045-mtk-mac80211-fix-ieee80211_probe_client-warning.patch
@@ -1,12 +1,10 @@
-From 9a234460e4fcc0013ade098c9e8efb6f201068fc Mon Sep 17 00:00:00 2001
+From 65e5845ce53a6060cb3201a7dcae96b57eb2ea45 Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Mon, 29 Jan 2024 18:37:15 +0800
 Subject: [PATCH 45/61] mtk: mac80211: fix ieee80211_probe_client warning
 
 Only get chanctx for non-mld VIF.
 
-CR-Id: WCNCR00238098
-Change-Id: I0a6861fc16d11e97fb29b775d5e641925b7dd92f
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
 ---
  net/mac80211/cfg.c | 10 ++++++----
@@ -35,5 +33,5 @@
  	if (qos) {
  		fc = cpu_to_le16(IEEE80211_FTYPE_DATA |
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0046-mtk-mac80211-remove-link-0-warn-on-in-rate_control_r.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0046-mtk-mac80211-remove-link-0-warn-on-in-rate_control_r.patch
index 745751b..94b0038 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0046-mtk-mac80211-remove-link-0-warn-on-in-rate_control_r.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0046-mtk-mac80211-remove-link-0-warn-on-in-rate_control_r.patch
@@ -1,4 +1,4 @@
-From b22d9da27623db1d7c3bf7f677afcdb99ec5ec27 Mon Sep 17 00:00:00 2001
+From 5ec53c93f1361412ff263a1bf8eb38c18e447d4a Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Wed, 31 Jan 2024 11:40:28 +0800
 Subject: [PATCH 46/61] mtk: mac80211: remove link != 0 warn on in
@@ -6,7 +6,6 @@
 
 Remove link warning for mlo channel switch
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  net/mac80211/rate.c | 10 ++++++++--
@@ -39,5 +38,5 @@
  			rcu_read_unlock();
  			return;
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0047-mtk-mac80211-fix-radar-required-of-link-issue-in-res.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0047-mtk-mac80211-fix-radar-required-of-link-issue-in-res.patch
index d3324ff..d79d929 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0047-mtk-mac80211-fix-radar-required-of-link-issue-in-res.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0047-mtk-mac80211-fix-radar-required-of-link-issue-in-res.patch
@@ -1,4 +1,4 @@
-From 588692667ae3d8a198760c19d335d33b0dca6ba0 Mon Sep 17 00:00:00 2001
+From f5a7e57bca203a7d063faf0b9b54b4da8c42f884 Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Thu, 1 Feb 2024 17:46:49 +0800
 Subject: [PATCH 47/61] mtk: mac80211: fix radar required of link issue in
@@ -9,9 +9,7 @@
 This will lead to DFS RDD init incomplete (RDD_CAC_START, RDD_CAC_END &
 RDD_DET_MODE is not set to fw)
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I44eeb32be5ff42202639f94418d079930369fde9
 ---
  net/mac80211/chan.c | 2 ++
  1 file changed, 2 insertions(+)
@@ -37,5 +35,5 @@
  	if (err) {
  		if (ieee80211_chanctx_refcount(local, new_ctx) == 0)
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0048-mtk-cfg80211-rework-cac-started-cac-start-time-for-m.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0048-mtk-cfg80211-rework-cac-started-cac-start-time-for-m.patch
index eb3bca0..f711fcd 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0048-mtk-cfg80211-rework-cac-started-cac-start-time-for-m.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0048-mtk-cfg80211-rework-cac-started-cac-start-time-for-m.patch
@@ -1,12 +1,10 @@
-From d65bfb08d34fadb98ad271a91365004e8b674b84 Mon Sep 17 00:00:00 2001
+From 286c36e1252e070ae30be3231b1349edb8cb74b6 Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Thu, 1 Feb 2024 10:57:39 +0800
 Subject: [PATCH 48/61] mtk: cfg80211: rework cac started, cac start time for
  multi-link support
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Ib47630f1a01fd0d4bf7edb1964b2907f2b4ec8f3
 ---
  include/net/cfg80211.h | 20 ++++++++++++++------
  net/mac80211/cfg.c     | 26 +++++++++++++-------------
@@ -153,10 +151,10 @@
  	}
  }
 diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
-index 083da12..cdeb787 100644
+index fce9834..be52a83 100644
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -559,13 +559,21 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, bool going_do
+@@ -563,13 +563,21 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, bool going_do
  	wiphy_delayed_work_cancel(local->hw.wiphy,
  				  &sdata->deflink.dfs_cac_timer_work);
  
@@ -386,5 +384,5 @@
  			if (!chandef || !chandef->chan ||
  			    chandef->chan->band != NL80211_BAND_5GHZ)
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0049-mtk-mac80211-remove-links-when-removing-AP_VLAN-inte.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0049-mtk-mac80211-remove-links-when-removing-AP_VLAN-inte.patch
index d6fd5f4..9bbab60 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0049-mtk-mac80211-remove-links-when-removing-AP_VLAN-inte.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0049-mtk-mac80211-remove-links-when-removing-AP_VLAN-inte.patch
@@ -1,4 +1,4 @@
-From cf275081660642ebfc9aaef0722ac499922fb17b Mon Sep 17 00:00:00 2001
+From c1553f36bfb1b80be2306a50d98c0a2d256725b7 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Tue, 6 Feb 2024 15:03:49 +0800
 Subject: [PATCH 49/61] mtk: mac80211: remove links when removing AP_VLAN
@@ -8,9 +8,7 @@
 Without this patch, there would be a kernel crash when station disconnect
 from AP.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: Idffdc83cd6a13bc01b7f877fb748a8a08e99c212
 ---
  net/mac80211/cfg.c   | 14 ++++++++++++++
  net/mac80211/iface.c |  4 ++--
@@ -44,13 +42,13 @@
  
  	ieee80211_vif_set_links(sdata, wdev->valid_links, 0);
 diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
-index cdeb787..83b579a 100644
+index be52a83..e41bf5c 100644
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -393,8 +393,8 @@ static int ieee80211_check_concurrent_iface(struct ieee80211_sub_if_data *sdata,
- 				sdata->vif.active_links = nsdata->vif.active_links;
- 				sdata->vif.dormant_links = nsdata->vif.dormant_links;
- 				for (i = 0; i < IEEE80211_MLD_MAX_NUM_LINKS; i++) {
+@@ -397,8 +397,8 @@ static int ieee80211_check_concurrent_iface(struct ieee80211_sub_if_data *sdata,
+ 					    sdata->link[i] == &sdata->deflink)
+ 						continue;
+ 
 -					sdata->link[i] = nsdata->link[i];
 -					sdata->vif.link_conf[i] = nsdata->vif.link_conf[i];
 +					rcu_assign_pointer(sdata->link[i], nsdata->link[i]);
@@ -90,5 +88,5 @@
  	 * links are controlled by upper layers (userspace/cfg)
  	 * only for AP mode, so only remove them here for AP
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0050-mtk-mac80211-fix-AP-mgmt-not-encrypted-in-WDS-mode-w.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0050-mtk-mac80211-fix-AP-mgmt-not-encrypted-in-WDS-mode-w.patch
index 25fbe6c..41f46d6 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0050-mtk-mac80211-fix-AP-mgmt-not-encrypted-in-WDS-mode-w.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0050-mtk-mac80211-fix-AP-mgmt-not-encrypted-in-WDS-mode-w.patch
@@ -1,4 +1,4 @@
-From de8d3f6fa5fdebd105e1c7e99f635c94e7f37344 Mon Sep 17 00:00:00 2001
+From d90c8383297753b4d89012b6b5e5760e919b6503 Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Thu, 25 Jan 2024 14:07:23 +0800
 Subject: [PATCH 50/61] mtk: mac80211: fix AP mgmt not encrypted in WDS mode
@@ -9,8 +9,6 @@
 if called to find sta from AP_VLAN, and then interface type & 4-addr
 using is checked.
 
-Change-Id: Ie94fbb22ca2cf7a96d94897e74314b5c61153380
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  net/mac80211/tx.c | 7 +++++++
@@ -35,5 +33,5 @@
  	}
  
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0051-mtk-mac80211-fix-ieee80211_ht_cap_ie_to_sta_ht_cap-w.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0051-mtk-mac80211-fix-ieee80211_ht_cap_ie_to_sta_ht_cap-w.patch
index e31009b..70677dd 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0051-mtk-mac80211-fix-ieee80211_ht_cap_ie_to_sta_ht_cap-w.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0051-mtk-mac80211-fix-ieee80211_ht_cap_ie_to_sta_ht_cap-w.patch
@@ -1,4 +1,4 @@
-From edef4ae672b3d124b573c1c9856d6435f30b6bb5 Mon Sep 17 00:00:00 2001
+From 53ca97bf26ea7ce77d2cf34b90349e08d2569326 Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Thu, 15 Feb 2024 14:30:02 +0800
 Subject: [PATCH 51/61] mtk: mac80211: fix ieee80211_ht_cap_ie_to_sta_ht_cap
@@ -9,9 +9,7 @@
 Therefore, 6G link will enter ieee80211_ht_cap_ie_to_sta_ht_cap, as elems->ht_cap_elem of 2/5G is NOT NULL.
 This should be avoided; otherwise, if 6G is bw 320, then the warning will be triggered.
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I3be945036afe677a54e328685fd2fe7b725c6ed5
 ---
  net/mac80211/mlme.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
@@ -31,5 +29,5 @@
  						  elems->ht_cap_elem,
  						  link_sta);
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0052-mtk-mac80211-fix-mac-address-to-support-hw-path-in-s.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0052-mtk-mac80211-fix-mac-address-to-support-hw-path-in-s.patch
index ffba153..74531ef 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0052-mtk-mac80211-fix-mac-address-to-support-hw-path-in-s.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0052-mtk-mac80211-fix-mac-address-to-support-hw-path-in-s.patch
@@ -1,4 +1,4 @@
-From 9bd4c9f67e46919eff0f755bfe675a6ac5c1ac4e Mon Sep 17 00:00:00 2001
+From 93ef1345d2859a21daf239a6c931b16e46286d59 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Fri, 16 Feb 2024 17:38:22 +0800
 Subject: [PATCH 52/61] mtk: mac80211: fix mac address to support hw path in
@@ -6,18 +6,16 @@
 
 Use AP's MLD address instead of using deflink.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I6df2419d165406ef9b31ccb19600685d121e6d56
 ---
  net/mac80211/iface.c | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)
 
 diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
-index 83b579a..026436e 100644
+index e41bf5c..b267b21 100644
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -983,7 +983,10 @@ static int ieee80211_netdev_fill_forward_path(struct net_device_path_ctx *ctx,
+@@ -987,7 +987,10 @@ static int ieee80211_netdev_fill_forward_path(struct net_device_path_ctx *ctx,
  			}
  		}
  
@@ -30,5 +28,5 @@
  	default:
  		goto out;
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0053-mtk-mac80211-workaround-for-configuring-txpower-in-m.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0053-mtk-mac80211-workaround-for-configuring-txpower-in-m.patch
index 3318c20..40da0b4 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0053-mtk-mac80211-workaround-for-configuring-txpower-in-m.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0053-mtk-mac80211-workaround-for-configuring-txpower-in-m.patch
@@ -1,4 +1,4 @@
-From e564e83652ae93e37f624eac45f98d3ee17cb811 Mon Sep 17 00:00:00 2001
+From 23f6000da41a1c393b3c2e85554e6c8da4d728a2 Mon Sep 17 00:00:00 2001
 From: Allen Ye <allen.ye@mediatek.com>
 Date: Thu, 22 Feb 2024 15:21:49 +0800
 Subject: [PATCH 53/61] mtk: mac80211: workaround for configuring txpower in
@@ -12,7 +12,6 @@
 Apply the patch will make uci and iw set txpower commamd only effect
 the link which id is 0 when we enable mld AP.
 
-CR-Id: WCNCR00259302
 ---
  net/mac80211/cfg.c         | 15 ++++++++++++---
  net/mac80211/chan.c        |  4 ++--
@@ -101,7 +100,7 @@
  
  static inline bool ieee80211_sdata_running(struct ieee80211_sub_if_data *sdata)
 diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
-index 026436e..3400811 100644
+index b267b21..5070c24 100644
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
 @@ -44,13 +44,14 @@
@@ -161,5 +160,5 @@
  	return 0;
  }
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0054-mtk-mac80211-send-broadcast-multicast-mgmt.-via-all-.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0054-mtk-mac80211-send-broadcast-multicast-mgmt.-via-all-.patch
index 35c82f2..26c07c3 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0054-mtk-mac80211-send-broadcast-multicast-mgmt.-via-all-.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0054-mtk-mac80211-send-broadcast-multicast-mgmt.-via-all-.patch
@@ -1,4 +1,4 @@
-From 487ac10c66d16a0dd2ef526b7223cce87cbded40 Mon Sep 17 00:00:00 2001
+From 06d3d93fc257b9f8cef083b9b84711fc9c3cee19 Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Wed, 21 Feb 2024 16:32:13 +0800
 Subject: [PATCH 54/61] mtk: mac80211: send broadcast/multicast mgmt. via all
@@ -6,7 +6,6 @@
 
 This patch makes broadcast/multicast mgmt. be sent via all links.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Change-id: Id1bd06694a73cc29b3f571a57c4c864ee3742441
 ---
@@ -45,5 +44,5 @@
  		goto out_unlock;
  	}
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0055-mtk-mac80211-fix-mlo-BW-160-channel-switch-issue.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0055-mtk-mac80211-fix-mlo-BW-160-channel-switch-issue.patch
index cd79879..e210794 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0055-mtk-mac80211-fix-mlo-BW-160-channel-switch-issue.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0055-mtk-mac80211-fix-mlo-BW-160-channel-switch-issue.patch
@@ -1,4 +1,4 @@
-From 6d5903a35436fb71f4a245f7b9ddd6279d640adc Mon Sep 17 00:00:00 2001
+From 3529be517dc9be0c911b06a1165ae80e3d051238 Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Fri, 15 Mar 2024 14:34:11 +0800
 Subject: [PATCH 55/61] mtk: mac80211: fix mlo BW 160 channel switch issue
@@ -8,7 +8,6 @@
 The original commit has link_id instead of 0
 https://patchwork.kernel.org/project/linux-wireless/list/?series=821321&state=*
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  net/mac80211/cfg.c | 2 +-
@@ -28,5 +27,5 @@
  
  	if (changed) {
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0056-mtk-mac80211-extend-IEEE80211_KEY_FLAG_GENERATE_MMIE.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0056-mtk-mac80211-extend-IEEE80211_KEY_FLAG_GENERATE_MMIE.patch
index 3a2ff85..a3cdf5e 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0056-mtk-mac80211-extend-IEEE80211_KEY_FLAG_GENERATE_MMIE.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0056-mtk-mac80211-extend-IEEE80211_KEY_FLAG_GENERATE_MMIE.patch
@@ -1,4 +1,4 @@
-From 67aa5809167470add6b82fb0049ce6d33327592e Mon Sep 17 00:00:00 2001
+From c2aed160872b89580f253fdfb2369e59951e3695 Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Thu, 21 Mar 2024 10:58:59 +0800
 Subject: [PATCH 56/61] mtk: mac80211: extend IEEE80211_KEY_FLAG_GENERATE_MMIE
@@ -8,9 +8,7 @@
 CMAC-256 and GMAC for the same reason that this flag was added.
 (a0b449: mac80211: add IEEE80211_KEY_FLAG_GENERATE_MMIE to ieee80211_key_flags)
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I0ce5f8894de42a42e257ffce75c51399a440f003
 ---
  net/mac80211/wpa.c | 12 ++++++++++--
  1 file changed, 10 insertions(+), 2 deletions(-)
@@ -60,5 +58,5 @@
  
  	hdr = (struct ieee80211_hdr *)skb->data;
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0057-mtk-wifi-mt76-mt7996-not-to-check-need_offchan-for-M.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0057-mtk-wifi-mt76-mt7996-not-to-check-need_offchan-for-M.patch
index 1995700..16278ac 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0057-mtk-wifi-mt76-mt7996-not-to-check-need_offchan-for-M.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0057-mtk-wifi-mt76-mt7996-not-to-check-need_offchan-for-M.patch
@@ -1,4 +1,4 @@
-From 4bd23c637585903378fcd35828cd9d0e01d7d565 Mon Sep 17 00:00:00 2001
+From b311c85cdc3fe0a91d4b93628b6f559a2dfe3f5c Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Mon, 25 Mar 2024 18:59:35 +0800
 Subject: [PATCH 57/61] mtk: wifi: mt76: mt7996: not to check 'need_offchan'
@@ -7,9 +7,7 @@
 Multicast mgmt. sent by the MLD AP should be transmitted via all links,
 so it is not necessary to check 'need_offchan'.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I850d337ea98456b8d81fd767ceea1727333aa6ca
 ---
  net/mac80211/offchannel.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
@@ -29,5 +27,5 @@
  		int i;
  
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0058-mtk-wifi-mt76-mt7996-assign-link-address-to-the-head.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0058-mtk-wifi-mt76-mt7996-assign-link-address-to-the-head.patch
index eb8db1a..136ef38 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0058-mtk-wifi-mt76-mt7996-assign-link-address-to-the-head.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0058-mtk-wifi-mt76-mt7996-assign-link-address-to-the-head.patch
@@ -1,4 +1,4 @@
-From 70e027ce4ac9e4de16829c88ee846b7e12f14953 Mon Sep 17 00:00:00 2001
+From db3b035491cb7be00b1ac169863a172a5aebbacf Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Mon, 25 Mar 2024 16:26:34 +0800
 Subject: [PATCH 58/61] mtk: wifi: mt76: mt7996: assign link address to the
@@ -8,9 +8,7 @@
 This commit assigns link address to the header of cloned broadcast mgmt.
 for the correct AAD calculation.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: Ieeee17cc2121fdbc9eb34f171f2d4da583d91154
 ---
  net/mac80211/offchannel.c | 16 +++++++++++++---
  1 file changed, 13 insertions(+), 3 deletions(-)
@@ -50,5 +48,5 @@
  			kfree_skb(skb);
  		} else {
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0059-mtk-wifi-mt76-mt7996-Do-MLD-address-translation-befo.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0059-mtk-wifi-mt76-mt7996-Do-MLD-address-translation-befo.patch
index 2a098b4..7d99fae 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0059-mtk-wifi-mt76-mt7996-Do-MLD-address-translation-befo.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0059-mtk-wifi-mt76-mt7996-Do-MLD-address-translation-befo.patch
@@ -1,4 +1,4 @@
-From 0f6fde17638d83518432f95ef7b75f2ef883ff1e Mon Sep 17 00:00:00 2001
+From 26fc78265ac13821bb7d075be2859a1f5896f924 Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Tue, 26 Mar 2024 11:36:35 +0800
 Subject: [PATCH 59/61] mtk: wifi: mt76: mt7996: Do MLD address translation
@@ -13,9 +13,7 @@
 This commit does MLD address translation again after the AAD calculation
 and before STA's mgmt. frames processing.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I2a96ced315780b09f0cfc142f0f09b5f4a9a7312
 ---
  net/mac80211/mlme.c | 9 +++++++++
  1 file changed, 9 insertions(+)
@@ -41,5 +39,5 @@
  	case IEEE80211_STYPE_BEACON:
  		ieee80211_rx_mgmt_beacon(link, (void *)mgmt,
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0060-mtk-wifi-mac80211-defer-enabling-beacon-for-MLD-AP.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0060-mtk-wifi-mac80211-defer-enabling-beacon-for-MLD-AP.patch
index a3ead0e..2dfd135 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0060-mtk-wifi-mac80211-defer-enabling-beacon-for-MLD-AP.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0060-mtk-wifi-mac80211-defer-enabling-beacon-for-MLD-AP.patch
@@ -1,4 +1,4 @@
-From 5b90a58e50482689a246cfce127bc44ad05f79af Mon Sep 17 00:00:00 2001
+From cd576eae15b45ef97e3ee180482d2e884889fb09 Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Fri, 12 Apr 2024 11:45:41 +0800
 Subject: [PATCH 60/61] mtk: wifi: mac80211: defer enabling beacon for MLD AP
@@ -9,9 +9,7 @@
 This is used to make sure that MLD AP start beacon after all links
 finish settings.
 
-CR-Id: WCNCR00238098
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: Id2a4137b9101bae3777037f8d26b0380bfe1da48
 ---
  net/mac80211/cfg.c | 7 ++++++-
  1 file changed, 6 insertions(+), 1 deletion(-)
@@ -42,5 +40,5 @@
  	if (ieee80211_num_beaconing_links(sdata) <= 1)
  		netif_carrier_on(dev);
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0061-mtk-wifi-mac80211-fix-radar-trigger-issue-due-to-ref.patch b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0061-mtk-wifi-mac80211-fix-radar-trigger-issue-due-to-ref.patch
index 6673cb6..8e19d75 100644
--- a/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0061-mtk-wifi-mac80211-fix-radar-trigger-issue-due-to-ref.patch
+++ b/recipes-wifi/linux-mac80211/files/patches-6.x/subsys/0061-mtk-wifi-mac80211-fix-radar-trigger-issue-due-to-ref.patch
@@ -1,4 +1,4 @@
-From 250ed9ee9f5f7e422dd4d96c1ba328b517c55040 Mon Sep 17 00:00:00 2001
+From 017795da32681ed521917cf446ddacf5d33f649d Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Thu, 18 Apr 2024 18:08:48 +0800
 Subject: [PATCH 61/61] mtk: wifi: mac80211: fix radar trigger issue due to
@@ -7,7 +7,6 @@
 Since we change to single wiphy, we cannot directly return during cac cancel if the link conf in local->interfaces list is not for 5G band.
 local->interfaces might contain 2/5/6G sdata
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  net/mac80211/util.c | 2 +-
@@ -27,5 +26,5 @@
  		wiphy_delayed_work_cancel(local->hw.wiphy,
  					  &link->dfs_cac_timer_work);
 -- 
-2.39.2
+2.18.0
 
diff --git a/recipes-wifi/linux-mac80211/files/patches/subsys/mtk-0031-mac80211-mtk-add-exported-function-for-SoftMAC-drive.patch b/recipes-wifi/linux-mac80211/files/patches/subsys/mtk-0031-mac80211-mtk-add-exported-function-for-SoftMAC-drive.patch
new file mode 100644
index 0000000..a26fc33
--- /dev/null
+++ b/recipes-wifi/linux-mac80211/files/patches/subsys/mtk-0031-mac80211-mtk-add-exported-function-for-SoftMAC-drive.patch
@@ -0,0 +1,58 @@
+From ac1e8443a250f418b6124e7b4f4ea65a03c4d02b Mon Sep 17 00:00:00 2001
+From: Benjamin Lin <benjamin-jw.lin@mediatek.com>
+Date: Fri, 26 Apr 2024 09:29:39 +0800
+Subject: [PATCH] mac80211: mtk: add exported function for SoftMAC driver to
+ get QoS map
+
+The mapping from IP DSCP to IEEE 802.11 user priority may be customized.
+Therefore, driver needs to pass the mapping to HW, so that the QoS type of traffic can be mapped in a consistent manner for both SW and HW paths.
+
+Signed-off-by: Benjamin Lin <benjamin-jw.lin@mediatek.com>
+---
+ include/net/mac80211.h | 12 ++++++++++++
+ net/mac80211/util.c    | 10 +++++++++-
+ 2 files changed, 21 insertions(+), 1 deletion(-)
+
+diff --git a/include/net/mac80211.h b/include/net/mac80211.h
+index 5c26752..420963f 100644
+--- a/include/net/mac80211.h
++++ b/include/net/mac80211.h
+@@ -6942,4 +6942,16 @@ static inline bool ieee80211_is_tx_data(struct sk_buff *skb)
+  * @hw: pointer as obtained from ieee80211_alloc_hw()
+  */
+ unsigned long ieee80211_get_scanning(struct ieee80211_hw *hw);
++
++/**
++ * ieee80211_get_qos_map - get QoS mapping information.
++ *
++ * @vif: &struct ieee80211_vif pointer from the add_interface callback.
++ *
++ * Return: Pointer to the QoS mapping information.
++ *
++ * Note that the return value is an RCU-protected pointer, so rcu_read_lock()
++ * must be held when calling this function.
++ */
++struct cfg80211_qos_map *ieee80211_get_qos_map(struct ieee80211_vif *vif);
+ #endif /* MAC80211_H */
+diff --git a/net/mac80211/util.c b/net/mac80211/util.c
+index e07fe73..865c4ac 100644
+--- a/net/mac80211/util.c
++++ b/net/mac80211/util.c
+@@ -4643,4 +4643,12 @@ unsigned long ieee80211_get_scanning(struct ieee80211_hw *hw)
+ 
+ 	return local->scanning;
+ }
+-EXPORT_SYMBOL(ieee80211_get_scanning);
+\ No newline at end of file
++EXPORT_SYMBOL(ieee80211_get_scanning);
++
++struct cfg80211_qos_map *ieee80211_get_qos_map(struct ieee80211_vif *vif)
++{
++	struct mac80211_qos_map *qos_map = rcu_dereference(vif_to_sdata(vif)->qos_map);
++
++	return qos_map ? &qos_map->qos_map : NULL;
++}
++EXPORT_SYMBOL(ieee80211_get_qos_map);
+-- 
+2.18.0
+
diff --git a/recipes-wifi/linux-mac80211/files/patches/subsys/subsys.inc b/recipes-wifi/linux-mac80211/files/patches/subsys/subsys.inc
index f61f662..a12060b 100644
--- a/recipes-wifi/linux-mac80211/files/patches/subsys/subsys.inc
+++ b/recipes-wifi/linux-mac80211/files/patches/subsys/subsys.inc
@@ -88,6 +88,7 @@
     file://mtk-0028-mac80211-mtk-backport-refactor-STA-CSA-paring-flow.patch \
     file://mtk-0029-mac80211-mtk-send-4-addr-nullfunc-after-drv_event_ca.patch \
     file://mtk-0030-mac80211-mtk-fix-incorrect-VIF-assignment-for-IEEE-8.patch \
+    file://mtk-0031-mac80211-mtk-add-exported-function-for-SoftMAC-drive.patch \
     file://mtk-9900-mac80211-mtk-mask-kernel-version-limitation-and-fill.patch \
     file://mtk-9901-mac80211-mtk-add-fill-receive-path-ops-to-get-wed-id.patch \
     file://mtk-9902-mac80211-mtk-add-support-for-letting-drivers-registe.patch \
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0003-mtk-wifi-mt76-mt7996-let-upper-layer-handle-MGMT-fra.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0003-mtk-wifi-mt76-mt7996-let-upper-layer-handle-MGMT-fra.patch
index 0b35ce2..77eb801 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0003-mtk-wifi-mt76-mt7996-let-upper-layer-handle-MGMT-fra.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0003-mtk-wifi-mt76-mt7996-let-upper-layer-handle-MGMT-fra.patch
@@ -12,7 +12,6 @@
 Therefore, to simplify the logic, do not set the IGTK to firmware and
 let the encryption of management frames be handled by upper layer.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
 ---
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0004-wifi-mt76-mt7996-use-hweight16-to-get-correct-tx_ant.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0004-wifi-mt76-mt7996-use-hweight16-to-get-correct-tx_ant.patch
index 0f821aa..b333c68 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0004-wifi-mt76-mt7996-use-hweight16-to-get-correct-tx_ant.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0004-wifi-mt76-mt7996-use-hweight16-to-get-correct-tx_ant.patch
@@ -11,8 +11,6 @@
 BUG: KASAN: stack-out-of-bounds in mt7996_mcu_add_sta+0x12e0/0x16e0 [mt7996e]
 
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-CR-Id: WCNCR00240772
-Change-Id: I5ccd634431c6047371e687c7c4bb4f315f2c97e5
 ---
  mt7996/mcu.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0006-wifi-mt76-mt7996-fix-HE-and-EHT-phy-cap.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0006-wifi-mt76-mt7996-fix-HE-and-EHT-phy-cap.patch
index 82e083c..b5dd0e5 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0006-wifi-mt76-mt7996-fix-HE-and-EHT-phy-cap.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0006-wifi-mt76-mt7996-fix-HE-and-EHT-phy-cap.patch
@@ -11,8 +11,6 @@
 Fixes: 348533eb968d ("wifi: mt76: mt7996: add EHT capability init")
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
 
-Change-Id: Ic853ec1b62344ac08787673ae22254f9829e0e6e
-CR-Id: WCNCR00240772
 ---
  mt7996/init.c | 65 ++++++++++++++++++++++++++++++++++-----------------
  1 file changed, 43 insertions(+), 22 deletions(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0007-mtk-wifi-mt76-mt7996-adjust-Beamformee-SS-capability.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0007-mtk-wifi-mt76-mt7996-adjust-Beamformee-SS-capability.patch
index d2cd068..b8fdf57 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0007-mtk-wifi-mt76-mt7996-adjust-Beamformee-SS-capability.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0007-mtk-wifi-mt76-mt7996-adjust-Beamformee-SS-capability.patch
@@ -10,8 +10,6 @@
 maximum capability of Beamformee SS that chipsets support.
 
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
-CR-Id: WCNCR00240772
-Change-Id: I8a7efedbb02790925affdd3b4d81b623f459589c
 ---
  mt7996/init.c | 23 +++++++++++++++++------
  1 file changed, 17 insertions(+), 6 deletions(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0008-wifi-mt76-mt7992-adjust-beamform-mcu-cmd-configurati.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0008-wifi-mt76-mt7992-adjust-beamform-mcu-cmd-configurati.patch
index 327a8e3..c516ea3 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0008-wifi-mt76-mt7992-adjust-beamform-mcu-cmd-configurati.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0008-wifi-mt76-mt7992-adjust-beamform-mcu-cmd-configurati.patch
@@ -7,8 +7,6 @@
 Adjust the correct beamform mcu cmd configuration for mt7992 chipsets.
 
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
-CR-Id: WCNCR00240772
-Change-Id: I2230c3a43d735ab7db114299a005b9cc1e89de41
 ---
  mt7996/mcu.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0011-mtk-wifi-mt76-mt7996-enable-ser-query.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0011-mtk-wifi-mt76-mt7996-enable-ser-query.patch
index e6eb857..b1ae890 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0011-mtk-wifi-mt76-mt7996-enable-ser-query.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0011-mtk-wifi-mt76-mt7996-enable-ser-query.patch
@@ -6,7 +6,6 @@
 Do not return -EINVAL when action is UNI_CMD_SER_QUERY for user
 to dump SER information from FW.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
 ---
  mt7996/mcu.c | 2 ++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0012-mtk-wifi-mt76-mt7996-set-key-flag-IEEE80211_KEY_FLAG.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0012-mtk-wifi-mt76-mt7996-set-key-flag-IEEE80211_KEY_FLAG.patch
index e99403e..c116951 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0012-mtk-wifi-mt76-mt7996-set-key-flag-IEEE80211_KEY_FLAG.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0012-mtk-wifi-mt76-mt7996-set-key-flag-IEEE80211_KEY_FLAG.patch
@@ -9,7 +9,6 @@
 'IEEE80211_KEY_GENERATE_MMIE' on so that MAC80211 generates and initializes
 MMIE for us.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  mt7996/main.c | 8 ++++----
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0013-mtk-wifi-mt76-mt7996-Fix-TGax-HE-4.51.1_24G-fail.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0013-mtk-wifi-mt76-mt7996-Fix-TGax-HE-4.51.1_24G-fail.patch
index 68798c3..4ae6237 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0013-mtk-wifi-mt76-mt7996-Fix-TGax-HE-4.51.1_24G-fail.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0013-mtk-wifi-mt76-mt7996-Fix-TGax-HE-4.51.1_24G-fail.patch
@@ -7,8 +7,6 @@
 without this patch, TGax HE-4.51.1_24G will test fail
 
 Signed-off-by: mtk27745 <rex.lu@mediatek.com>
-CR-Id: WCNCR00259516
-Change-Id: Ic51473fcc24757887f0f9f81a31b6f01dee2c845
 ---
  mt7996/main.c | 7 ++++++-
  1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0014-mtk-wifi-mt76-mt7996-add-support-for-different-varia.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0014-mtk-wifi-mt76-mt7996-add-support-for-different-varia.patch
index 6cbec2f..13233e0 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0014-mtk-wifi-mt76-mt7996-add-support-for-different-varia.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0014-mtk-wifi-mt76-mt7996-add-support-for-different-varia.patch
@@ -14,20 +14,16 @@
 Chip manufactoring factories may transfer, which leads to different adie chip versions,
 so we add this efuse check to avoid 7976c recognition failure.
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I98caec6675670e3d1c0ee953bef2aeb71c3cf74e
 
 GPIO ADie Combination of BE5040 should be considered as don't care
 instead of 0
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 
 Only check eeprom chip id when fem type (= MT7996_FEM_UNSET) is not determined yet
 Without this fix, mt7996_check_eeprom will return EINVAL in mt7996_eeprom_check_fw_mode
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mt7996/eeprom.c | 40 +++++++++++++++++++++++++++++--
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0015-mtk-wifi-mt76-mt7996-ACS-channel-time-too-long-on-du.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0015-mtk-wifi-mt76-mt7996-ACS-channel-time-too-long-on-du.patch
index 778e91f..ecb5d29 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0015-mtk-wifi-mt76-mt7996-ACS-channel-time-too-long-on-du.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0015-mtk-wifi-mt76-mt7996-ACS-channel-time-too-long-on-du.patch
@@ -16,7 +16,6 @@
 Solution:
 When scan start, need to reset chan_stat in each channel switch.
 
-CR-Id: WCNCR00351054
 Signed-off-by: fancy.liu <fancy.liu@mediatek.com>
 
 Issue:
@@ -38,7 +37,6 @@
 Mac80211 scan state will be set in scanning, and will be reset after
 scan done and before restore to duty channel.
 
-CR-Id: WCNCR00357653
 Signed-off-by: fancy.liu <fancy.liu@mediatek.com>
 ---
  mac80211.c | 3 ++-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0016-mtk-wifi-mt76-mt7996-Fixed-null-pointer-dereference-.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0016-mtk-wifi-mt76-mt7996-Fixed-null-pointer-dereference-.patch
index 646da41..1d9046b 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0016-mtk-wifi-mt76-mt7996-Fixed-null-pointer-dereference-.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0016-mtk-wifi-mt76-mt7996-Fixed-null-pointer-dereference-.patch
@@ -9,8 +9,6 @@
 there will be a race condition that causes a crash to occur because the AP
 access "msta->vif" that has not been fully initialized.
 
-CR-ID: WCNCR00240597
-Change-Id: Ie17fbdd8ab11651a9ae0c30faac0b5ad82176e95
 Signed-off-by: Bo Jiao <Bo.Jiao@mediatek.com>
 Signed-off-by: Money Wang <money.wang@mediatek.com>
 Signed-off-by: MeiChia Chiu <meichia.chiu@mediatek.com>
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0017-mtk-wifi-mt76-add-sanity-check-to-prevent-kernel-cra.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0017-mtk-wifi-mt76-add-sanity-check-to-prevent-kernel-cra.patch
index 27ef133..732937a 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0017-mtk-wifi-mt76-add-sanity-check-to-prevent-kernel-cra.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0017-mtk-wifi-mt76-add-sanity-check-to-prevent-kernel-cra.patch
@@ -7,9 +7,7 @@
 wcid may not be initialized when mac80211 calls mt76.tx and it would lead to
 kernel crash.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I90004271c6e91620c6991195dd332780ce28380e
 ---
  tx.c | 8 ++++++++
  1 file changed, 8 insertions(+)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0018-mtk-wifi-mt76-mt7996-add-firmware-WA-s-coredump.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0018-mtk-wifi-mt76-mt7996-add-firmware-WA-s-coredump.patch
index ac443b0..feecebe 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0018-mtk-wifi-mt76-mt7996-add-firmware-WA-s-coredump.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0018-mtk-wifi-mt76-mt7996-add-firmware-WA-s-coredump.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 018/116] mtk: wifi: mt76: mt7996: add firmware WA's coredump.
 
 Signed-off-by: Bo Jiao <Bo.Jiao@mediatek.com>
-Change-Id: I51f115b4ae15bc0f871f93652570d72511dbf880
 ---
  mt7996/coredump.c | 180 ++++++++++++++++++++++++++++++----------------
  mt7996/coredump.h |  35 ++++++---
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0019-mtk-wifi-mt76-mt7996-for-build-pass.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0019-mtk-wifi-mt76-mt7996-for-build-pass.patch
index dd21584..101893a 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0019-mtk-wifi-mt76-mt7996-for-build-pass.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0019-mtk-wifi-mt76-mt7996-for-build-pass.patch
@@ -3,7 +3,6 @@
 Date: Thu, 3 Nov 2022 00:27:17 +0800
 Subject: [PATCH 019/116] mtk: wifi: mt76: mt7996: for build pass
 
-Change-Id: Ieb44c33ee6e6a2e6058c1ef528404c1a1cbcfdaf
 ---
  debugfs.c         | 3 +++
  dma.c             | 2 +-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0020-mtk-wifi-mt76-mt7996-add-debug-tool.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0020-mtk-wifi-mt76-mt7996-add-debug-tool.patch
index 828eee7..90bd7b1 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0020-mtk-wifi-mt76-mt7996-add-debug-tool.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0020-mtk-wifi-mt76-mt7996-add-debug-tool.patch
@@ -3,19 +3,15 @@
 Date: Fri, 24 Mar 2023 14:02:32 +0800
 Subject: [PATCH 020/116] mtk: wifi: mt76: mt7996: add debug tool
 
-Change-Id: Ie10390b01f17db893dbfbf3221bf63a4bd1fe38f
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 
 Add PSM bit in sta_info
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I591b558a9eec2fbd46d166c9bb1580a94e22072c
 
 Remove the duplicate function in mtk_debugfs.c & mtk_debug_i.c
 Only enable mt7996_mcu_fw_log_2_host function in mcu.c
 
-CR-ID: WCNCR00240597
 Signed-off-by: MeiChia Chiu <meichia.chiu@mediatek.com>
 
 Support more ids category NDPA/NDP TXD/FBK and debug log recommended by
@@ -27,8 +23,6 @@
 2. iwpriv ra0 set fw_dbg=2:84
 3. iwpriv ra0 set fw_dbg=1:101
 
-CR-Id: WCNCR00261410
-Change-Id: Ifddd4db86982d39f2d39d198b8f5d3e7028983c2
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
 
 mtk: wifi: mt76: mt7996: add wtbl_info support for mt7992
@@ -43,9 +37,7 @@
 
 Refactor code for FW log.
 
-CR-Id: WCNCR00298425
 Signed-off-by: Benjamin Lin <benjamin-jw.lin@mediatek.com>
-Change-Id: I00c760b31009142848e32b1249d305800585e7fd
 
 mtk: wifi: mt76: mt7996: support disable muru debug info when recording fwlog
 
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0021-mtk-wifi-mt76-mt7996-add-check-for-hostapd-config-he.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0021-mtk-wifi-mt76-mt7996-add-check-for-hostapd-config-he.patch
index ccf5c1c..7b80a5d 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0021-mtk-wifi-mt76-mt7996-add-check-for-hostapd-config-he.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0021-mtk-wifi-mt76-mt7996-add-check-for-hostapd-config-he.patch
@@ -9,9 +9,6 @@
 
 Add check for STA LDPC cap, if STA only have BCC we should not overwrite the phy_cap with config he_ldpc.
 
-CR-Id: WCNCR00259302
-Change-Id: I6d6f59df8897e3c00f2e0a1e3c6e5701e31c5e4b
-Change-Id: Ibe7e40ec1dbb40bd3f3d96741e9933ec00b50df0
 Signed-off-by: Allen.Ye <allen.ye@mediatek.com>
 ---
  mt7996/mcu.c | 12 +++++++++---
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0022-mtk-wifi-mt76-testmode-add-basic-testmode-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0022-mtk-wifi-mt76-testmode-add-basic-testmode-support.patch
index 167a546..21a18ea 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0022-mtk-wifi-mt76-testmode-add-basic-testmode-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0022-mtk-wifi-mt76-testmode-add-basic-testmode-support.patch
@@ -4,11 +4,9 @@
 Subject: [PATCH 022/116] mtk: wifi: mt76: testmode: add basic testmode support
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I0e09e7f5bc0fb9aa4e4ec906a0f5f169bcc261cb
 
 Add testmode eeprom buffer mode support
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 
 Fix power & freq offset issue for iTest power cal & tx/rx verifcation
@@ -18,13 +16,10 @@
 and 2G band. Therefore, we should avoid reseting freq offset to 0 when
 6G interface is off.
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I849b11b4ccdecd2b7b525b29801c02b5207bbf91
 
 edcca return err in testmode; therefore, bypass it when we are in testmode idle state or testmode bf is on
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  eeprom.c          |   6 +-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0023-mtk-wifi-mt76-testmode-add-testmode-pre-calibration-.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0023-mtk-wifi-mt76-testmode-add-testmode-pre-calibration-.patch
index dc9298f..4c519cf 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0023-mtk-wifi-mt76-testmode-add-testmode-pre-calibration-.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0023-mtk-wifi-mt76-testmode-add-testmode-pre-calibration-.patch
@@ -5,7 +5,6 @@
  pre-calibration support
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: If8a6cc02fa20e35f079c826e0571e8c04c3f9c7e
 ---
  mac80211.c        |  21 ---
  mt76.h            |  22 +++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0026-mtk-wifi-mt76-mt7996-add-txpower-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0026-mtk-wifi-mt76-mt7996-add-txpower-support.patch
index b056189..22228e5 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0026-mtk-wifi-mt76-mt7996-add-txpower-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0026-mtk-wifi-mt76-mt7996-add-txpower-support.patch
@@ -15,7 +15,6 @@
 
 Fix wrong power value when user set limit close to path table limit.
 
-CR-Id: WCNCR00259302
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Signed-off-by: Allen Ye <allen.ye@mediatek.com>
 ---
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0027-mtk-wifi-mt76-mt7996-add-binfile-mode-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0027-mtk-wifi-mt76-mt7996-add-binfile-mode-support.patch
index 5ae752a..2afa335 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0027-mtk-wifi-mt76-mt7996-add-binfile-mode-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0027-mtk-wifi-mt76-mt7996-add-binfile-mode-support.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 027/116] mtk: wifi: mt76: mt7996: add binfile mode support
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I06369a46f75c0707d9ababd8ade70d79a89b1a1c
 
 Fix binfile cannot sync precal data to atenl
 Binfile is viewed as efuse mode in atenl, so atenl does not allocate
@@ -14,9 +13,7 @@
 
 Align upstream
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I4c8fd2b0a9956d2ee961b70cd28973e2e9410aca
 ---
  eeprom.c             |  25 +++++++++++
  mt76.h               |   3 ++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0029-mtk-wifi-mt76-mt7996-support-eagle-ZWDFS-on-iFEM.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0029-mtk-wifi-mt76-mt7996-support-eagle-ZWDFS-on-iFEM.patch
index e7908ef..818e125 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0029-mtk-wifi-mt76-mt7996-support-eagle-ZWDFS-on-iFEM.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0029-mtk-wifi-mt76-mt7996-support-eagle-ZWDFS-on-iFEM.patch
@@ -7,7 +7,6 @@
 interface setup.
 Refactor ifem adie logic (if/else to switch, use sku_type & fem_type)
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mt7996/main.c   | 65 ++++++++++++++++++++++++++++++++++++++++++++++---
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0030-mtk-wifi-mt76-mt7996-refactor-eeprom-loading-flow-fo.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0030-mtk-wifi-mt76-mt7996-refactor-eeprom-loading-flow-fo.patch
index 30750f5..b0ec37f 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0030-mtk-wifi-mt76-mt7996-refactor-eeprom-loading-flow-fo.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0030-mtk-wifi-mt76-mt7996-refactor-eeprom-loading-flow-fo.patch
@@ -12,9 +12,7 @@
 3. RF path & streams
    (to distinguish cases such as BE7200 4i5i, BE6500 3i5i, and BE5040 2i3i)
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: If1905086f2a876a593d07f23a5facad35067f94a
 
 1. Reset eeprom content before loading efuse
    eeprom array might contain incomplete data read from flash or
@@ -26,7 +24,6 @@
    eeprom for each sku (especially kite's sku) in our SDK.
 3. Set testmode_en field for default bin mode for consistency sake
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 
 1.
@@ -35,7 +32,6 @@
 2.
 Add Eagle BE19000 ifem default bin, add Eagle default bin bootstrip
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mt7996/eeprom.c      | 207 ++++++++++++++++++++++++-------------------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0033-mtk-wifi-mt76-mt7996-Add-mt7992-coredump-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0033-mtk-wifi-mt76-mt7996-Add-mt7992-coredump-support.patch
index d0aa9bb..3a286e2 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0033-mtk-wifi-mt76-mt7996-Add-mt7992-coredump-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0033-mtk-wifi-mt76-mt7996-Add-mt7992-coredump-support.patch
@@ -6,9 +6,7 @@
 1. Add mt7992 coredump support
 2. fixed if new ic have not support coredump, it may cause crash when remove module
 
-CR-Id: WCNCR00259516
 Signed-off-by: Rex Lu <rex.lu@mediatek.com>
-Change-Id: I2ae5425aac6be8ff69a2c411e796be308b558b6b
 ---
  mt7996/coredump.c | 80 ++++++++++++++++++++++++++++++++++++++---------
  mt7996/mt7996.h   |  1 +
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0035-mtk-wifi-mt76-mt7996-add-support-spatial-reuse-debug.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0035-mtk-wifi-mt76-mt7996-add-support-spatial-reuse-debug.patch
index 4b4c28f..4a925be 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0035-mtk-wifi-mt76-mt7996-add-support-spatial-reuse-debug.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0035-mtk-wifi-mt76-mt7996-add-support-spatial-reuse-debug.patch
@@ -16,7 +16,6 @@
 To learn more details of these commands, please check:
 https://wiki.mediatek.inc/display/APKB/mt76+Phy+feature+debug+Cheetsheet#mt76PhyfeaturedebugCheetsheet-SpatialReuse
 
-Change-Id: I5bf83013ea2788dfc93caaaef08486a4f97a3649
 ---
  mt76_connac_mcu.h    |   1 +
  mt7996/main.c        |   6 +++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0038-mtk-wifi-mt76-mt7996-support-dup-wtbl.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0038-mtk-wifi-mt76-mt7996-support-dup-wtbl.patch
index 2d8b5d1..23f01e1 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0038-mtk-wifi-mt76-mt7996-support-dup-wtbl.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0038-mtk-wifi-mt76-mt7996-support-dup-wtbl.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 038/116] mtk: wifi: mt76: mt7996: support dup wtbl
 
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: I14ba41ace8341c23c1cfb6e9c4fbb2d5e93a5714
 ---
  mt7996/init.c    |  1 +
  mt7996/mt7996.h  |  1 +
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0039-mtk-wifi-mt76-try-more-times-when-send-message-timeo.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0039-mtk-wifi-mt76-try-more-times-when-send-message-timeo.patch
index 918badb..13e486c 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0039-mtk-wifi-mt76-try-more-times-when-send-message-timeo.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0039-mtk-wifi-mt76-try-more-times-when-send-message-timeo.patch
@@ -4,9 +4,7 @@
 Subject: [PATCH 039/116] mtk: wifi: mt76: try more times when send message
  timeout.
 
-CR-Id: WCNCR00334773
 Signed-off-by: Bo Jiao <Bo.Jiao@mediatek.com>
-Change-Id: Ib7c01e6c9f74f68d8404a3d8bada9e5a10c4e232
 ---
  dma.c        |  7 ++++--
  mcu.c        | 65 ++++++++++++++++++++++++++++++++++++----------------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0040-mtk-wifi-mt76-mt7996-add-SER-overlap-handle.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0040-mtk-wifi-mt76-mt7996-add-SER-overlap-handle.patch
index 1a2df19..b6ec672 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0040-mtk-wifi-mt76-mt7996-add-SER-overlap-handle.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0040-mtk-wifi-mt76-mt7996-add-SER-overlap-handle.patch
@@ -3,7 +3,6 @@
 Date: Tue, 21 Nov 2023 09:55:46 +0800
 Subject: [PATCH 040/116] mtk: wifi: mt76: mt7996: add SER overlap handle
 
-CR-ID: WCNCR00355921
 Signed-off-by: Bo Jiao <Bo.Jiao@mediatek.com>
 ---
  mcu.c           |  3 ++-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0043-mtk-wifi-mt76-mt7996-support-BF-MIMO-debug-commands.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0043-mtk-wifi-mt76-mt7996-support-BF-MIMO-debug-commands.patch
index 59dd3bf..d24cacb 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0043-mtk-wifi-mt76-mt7996-support-BF-MIMO-debug-commands.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0043-mtk-wifi-mt76-mt7996-support-BF-MIMO-debug-commands.patch
@@ -11,12 +11,9 @@
 4. fix muru rate
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Id6cbaf16e4e6f63238a495ac9f45744e1dd38e9b
 
 fix the wrong wlan_idx for user3
 
-CR-Id: WCNCR00261410
-Change-Id: I7ece7399370f2bd22d2564029025baeda27057a5
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
 
 Align the format of mcu event "mt7996_mcu_bf_starec_read" with
@@ -25,7 +22,6 @@
 Fw gerrit change:
 https://gerrit.mediatek.inc/c/neptune/firmware/bora/wifi/core/+/8218143
 
-CR-Id: WCNCR00240772
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
 ---
  mt7996/mcu.c         |   5 +
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0044-mtk-wifi-mt76-mt7996-add-build-the-following-MURU-mc.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0044-mtk-wifi-mt76-mt7996-add-build-the-following-MURU-mc.patch
index a68e7f7..0c42ddf 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0044-mtk-wifi-mt76-mt7996-add-build-the-following-MURU-mc.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0044-mtk-wifi-mt76-mt7996-add-build-the-following-MURU-mc.patch
@@ -8,7 +8,6 @@
 1. MURU tlv id 0x10, 0x33, 0xC8, 0xC9, 0xCA, 0xCC, 0xCD
 2. BF tlv id 0x1c
 
-Change-Id: I0ae5cbed5b4370d39a6cfca50721873845659006
 ---
  mt7996/mcu.h         |  1 +
  mt7996/mt7996.h      |  3 ++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0045-mtk-wifi-mt76-mt7996-add-cert-patch.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0045-mtk-wifi-mt76-mt7996-add-cert-patch.patch
index 6113da2..eafe7db 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0045-mtk-wifi-mt76-mt7996-add-cert-patch.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0045-mtk-wifi-mt76-mt7996-add-cert-patch.patch
@@ -9,7 +9,6 @@
 
 Add vendor cmd set ap wireless rts_sigta support
 
-CR-ID: WCNCR00348946
 Signed-off-by: ye he <ye.he@mediatek.com>
 ---
  mt7996/mac.c     |   9 ++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0048-mtk-wifi-mt76-testmode-add-channel-68-96.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0048-mtk-wifi-mt76-testmode-add-channel-68-96.patch
index 3aa9441..fc82555 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0048-mtk-wifi-mt76-testmode-add-channel-68-96.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0048-mtk-wifi-mt76-testmode-add-channel-68-96.patch
@@ -9,12 +9,10 @@
 Also, "mtk: wifi: mt76: testmode: add channel 68 & 96" can be
 merged into to "mtk: wifi: mt76: testmode: add basic testmode support"
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 
 Fix 5g channel list size
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mac80211.c        |  9 +++++++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0049-mtk-wifi-mt76-testmode-add-kite-testmode-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0049-mtk-wifi-mt76-testmode-add-kite-testmode-support.patch
index 7279514..f18fd7d 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0049-mtk-wifi-mt76-testmode-add-kite-testmode-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0049-mtk-wifi-mt76-testmode-add-kite-testmode-support.patch
@@ -7,7 +7,6 @@
 1. avoid entering connac 2 testmode flow in kite
 2. refactor prek implementation for handling chip difference
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mt7996/eeprom.c   | 63 +++++++++++++-----------------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0050-mtk-wifi-mt76-mt7996-assign-DEAUTH-to-ALTX-queue-for.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0050-mtk-wifi-mt76-mt7996-assign-DEAUTH-to-ALTX-queue-for.patch
index 87a2270..152574e 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0050-mtk-wifi-mt76-mt7996-assign-DEAUTH-to-ALTX-queue-for.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0050-mtk-wifi-mt76-mt7996-assign-DEAUTH-to-ALTX-queue-for.patch
@@ -5,7 +5,6 @@
  for CERT
 
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-CR-Id: WCNCR00289305
 ---
  mt7996/mac.c | 10 ++++++++++
  1 file changed, 10 insertions(+)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0051-mtk-wifi-mt76-mt7996-add-no_beacon-vendor-command-fo.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0051-mtk-wifi-mt76-mt7996-add-no_beacon-vendor-command-fo.patch
index 98055c0..d7cc7f3 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0051-mtk-wifi-mt76-mt7996-add-no_beacon-vendor-command-fo.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0051-mtk-wifi-mt76-mt7996-add-no_beacon-vendor-command-fo.patch
@@ -12,8 +12,6 @@
 0: enable beacon
 1: disable beacon
 
-CR-ID: WCNCR00240597
-Change-Id: Ia16707317135aeb02d6a5f6d50983e5174cc9e77
 Signed-off-by: MeiChia Chiu <meichia.chiu@mediatek.com>
 ---
  mt7996/mcu.c    | 11 +++++++++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0052-mtk-wifi-mt76-mt7996-add-adie-efuse-merge-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0052-mtk-wifi-mt76-mt7996-add-adie-efuse-merge-support.patch
index 6aaed8b..f9ea292 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0052-mtk-wifi-mt76-mt7996-add-adie-efuse-merge-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0052-mtk-wifi-mt76-mt7996-add-adie-efuse-merge-support.patch
@@ -7,9 +7,7 @@
 Note that Eagle BE14000 is not considered yet.
 Add efuse dump command.
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Ib088b90147c75d7437f40dd3569e3584c6ff9ab0
 ---
  mt7996/debugfs.c  |  41 +++++++++++++
  mt7996/eeprom.c   | 144 ++++++++++++++++++++++++++++++++++++++++++++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0053-mtk-wifi-mt7996-add-Eagle-2adie-TBTC-BE14000-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0053-mtk-wifi-mt7996-add-Eagle-2adie-TBTC-BE14000-support.patch
index a8214cc..755a238 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0053-mtk-wifi-mt7996-add-Eagle-2adie-TBTC-BE14000-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0053-mtk-wifi-mt7996-add-Eagle-2adie-TBTC-BE14000-support.patch
@@ -6,13 +6,11 @@
 
 Add fwdl/default eeprom load support for Eagle 2 adie TBTC
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 
 Add Eagle 2adie TBTC efuse merge
 Add Eagle 2adie TBTC group prek size
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mt7996/eeprom.c |  8 ++++++--
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0054-mtk-wifi-mt76-mt7996-add-background-radar-hw-cap-che.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0054-mtk-wifi-mt76-mt7996-add-background-radar-hw-cap-che.patch
index 4668cc9..1e3131d 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0054-mtk-wifi-mt76-mt7996-add-background-radar-hw-cap-che.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0054-mtk-wifi-mt76-mt7996-add-background-radar-hw-cap-che.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 054/116] mtk: wifi: mt76: mt7996: add background radar hw cap
  check
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mt7996/debugfs.c |  5 +++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0055-mtk-wifi-mt76-mt7996-add-fallback-in-case-of-missing.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0055-mtk-wifi-mt76-mt7996-add-fallback-in-case-of-missing.patch
index e692eea..1f6fbdf 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0055-mtk-wifi-mt76-mt7996-add-fallback-in-case-of-missing.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0055-mtk-wifi-mt76-mt7996-add-fallback-in-case-of-missing.patch
@@ -7,7 +7,6 @@
 Align Wi-Fi 6 upstream changes
 https://github.com/openwrt/mt76/commit/2135e201e7a9339e018d4e2d4a33c73266e674d7
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  mt7996/eeprom.c | 30 +++++++++++++++++++++---------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0056-mtk-wifi-mt76-mt7996-add-kite-part-number-support.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0056-mtk-wifi-mt76-mt7996-add-kite-part-number-support.patch
index 0aa0f55..1e7ba92 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0056-mtk-wifi-mt76-mt7996-add-kite-part-number-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0056-mtk-wifi-mt76-mt7996-add-kite-part-number-support.patch
@@ -3,9 +3,7 @@
 Date: Wed, 27 Mar 2024 17:50:16 +0800
 Subject: [PATCH 056/116] mtk: wifi: mt76: mt7996: add kite part number support
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Ib06648398f18b47c324e18b476a57444d929608f
 ---
  mt7996/eeprom.c | 35 +++++++++++++++++++++++------------
  1 file changed, 23 insertions(+), 12 deletions(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0057-mtk-wifi-mt76-revert-page_poll-for-kernel-5.4.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0057-mtk-wifi-mt76-revert-page_poll-for-kernel-5.4.patch
index 68ec2b5..81dd482 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0057-mtk-wifi-mt76-revert-page_poll-for-kernel-5.4.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0057-mtk-wifi-mt76-revert-page_poll-for-kernel-5.4.patch
@@ -5,7 +5,6 @@
 
 This reverts commit e8c10835cf062c577ddf426913788c39d30b4bd7.
 
-Change-Id: I4e5764fc545087f691fb4c2f43e7a9cefd1e1657
 ---
  dma.c         | 75 ++++++++++++++++++++++++++-------------------------
  mac80211.c    | 56 --------------------------------------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0058-mtk-wifi-mt76-rework-wed-rx-flow.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0058-mtk-wifi-mt76-rework-wed-rx-flow.patch
index 5672878..a2bfd4f 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0058-mtk-wifi-mt76-rework-wed-rx-flow.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0058-mtk-wifi-mt76-rework-wed-rx-flow.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 058/116] mtk: wifi: mt76: rework wed rx flow
 
 Signed-off-by: Bo Jiao <Bo.Jiao@mediatek.com>
-Change-Id: Icd787345c811cb5ad30d9c7c1c5f9e5298bd3be6
 ---
  dma.c           | 125 +++++++++++++++++++++++++++++++-----------------
  mac80211.c      |   2 +-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0061-mtk-wifi-mt76-mt7996-reset-addr_elem-when-delete-ba.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0061-mtk-wifi-mt76-mt7996-reset-addr_elem-when-delete-ba.patch
index 2a00de3..8bd6c0e 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0061-mtk-wifi-mt76-mt7996-reset-addr_elem-when-delete-ba.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0061-mtk-wifi-mt76-mt7996-reset-addr_elem-when-delete-ba.patch
@@ -8,15 +8,12 @@
 0xff, and sta will find error SDP cause the SDP/SDL=0 issue.
 
 Signed-off-by: sujuan.chen <sujuan.chen@mediatek.com>
-Change-Id: I12fb27e28b2c0310f824e66af6103b4ceba3503e
 
 1. without this patch will delete wrong session id when delete ba.
 Due to fw change the cmd format.
 https://gerrit.mediatek.inc/c/neptune/firmware/bora/wifi/custom/+/7969193
 
 Signed-off-by: mtk27745 <rex.lu@mediatek.com>
-CR-Id: WCNCR00259516
-Change-Id: I456a5d3eb2320a2c40cf57247ba63083a6d50b2e
 ---
  mt76.h       |  1 +
  mt7996/mcu.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0062-mtk-wifi-mt76-wed-change-pcie0-R5-to-pcie1-to-get-6G.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0062-mtk-wifi-mt76-wed-change-pcie0-R5-to-pcie1-to-get-6G.patch
index 9e64c36..520353f 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0062-mtk-wifi-mt76-wed-change-pcie0-R5-to-pcie1-to-get-6G.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0062-mtk-wifi-mt76-wed-change-pcie0-R5-to-pcie1-to-get-6G.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 062/116] mtk: wifi: mt76: wed: change pcie0 R5 to pcie1 to get
  6G ICS
 
-Change-Id: I23a94e3e4b797b513a303b13e4c50e0a0d72bffb
 ---
  mt7996/dma.c  | 4 ++++
  mt7996/init.c | 6 ++----
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0063-mtk-wifi-mt76-add-SER-support-for-wed3.0.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0063-mtk-wifi-mt76-add-SER-support-for-wed3.0.patch
index 173c70d..aa28894 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0063-mtk-wifi-mt76-add-SER-support-for-wed3.0.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0063-mtk-wifi-mt76-add-SER-support-for-wed3.0.patch
@@ -3,7 +3,6 @@
 Date: Tue, 23 May 2023 12:06:29 +0800
 Subject: [PATCH 063/116] mtk: wifi: mt76: add SER support for wed3.0
 
-Change-Id: I2711b9dc336fca9a1ae32a8fbf27810a7e27b1e3
 ---
  dma.c         | 5 +++--
  mt7996/mmio.c | 1 +
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0064-mtk-wifi-mt76-mt7915-wed-find-rx-token-by-physical-a.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0064-mtk-wifi-mt76-mt7915-wed-find-rx-token-by-physical-a.patch
index 658863f..bdad93c 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0064-mtk-wifi-mt76-mt7915-wed-find-rx-token-by-physical-a.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0064-mtk-wifi-mt76-mt7915-wed-find-rx-token-by-physical-a.patch
@@ -9,7 +9,6 @@
 Add len == 0 check to drop garbage frames
 
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I4cd90294ad24990826075e92a710cc4e301dcbb7
 ---
  dma.c | 27 +++++++++++++++++++++++++--
  1 file changed, 25 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0067-mtk-wifi-mt76-mt7996-do-not-report-netdev-stats-on-m.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0067-mtk-wifi-mt76-mt7996-do-not-report-netdev-stats-on-m.patch
index c8e5001..fabd025 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0067-mtk-wifi-mt76-mt7996-do-not-report-netdev-stats-on-m.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0067-mtk-wifi-mt76-mt7996-do-not-report-netdev-stats-on-m.patch
@@ -13,8 +13,6 @@
 [  205.613935]  napi_threaded_poll+0x80/0xe8
 [  205.617934]  kthread+0x124/0x128
 
-CR-Id: WCNCR00238098
-Change-Id: I66f2449401888255bf8d3edddc1d9f20bd8ba3e7
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
 ---
  mt7996/mcu.c | 3 +++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0069-mtk-wifi-mt76-mt7996-wed-add-SER0.5-support-w-wed3.0.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0069-mtk-wifi-mt76-mt7996-wed-add-SER0.5-support-w-wed3.0.patch
index ed0b185..06890c2 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0069-mtk-wifi-mt76-mt7996-wed-add-SER0.5-support-w-wed3.0.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0069-mtk-wifi-mt76-mt7996-wed-add-SER0.5-support-w-wed3.0.patch
@@ -5,7 +5,6 @@
  wed3.0
 
 Signed-off-by: sujuan.chen <sujuan.chen@mediatek.com>
-Change-Id: I9b26cdbea6e8ee158a153fd153c2dea77b494f2f
 ---
  dma.c           |   9 ++--
  dma.h           |   4 +-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0070-mtk-wifi-mt76-mt7996-support-backaward-compatiable.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0070-mtk-wifi-mt76-mt7996-support-backaward-compatiable.patch
index fe42aee..1bf962b 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0070-mtk-wifi-mt76-mt7996-support-backaward-compatiable.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0070-mtk-wifi-mt76-mt7996-support-backaward-compatiable.patch
@@ -6,9 +6,7 @@
 
 revert upstream wed trigger mode to polling mode
 
-CR-Id: WCNCR00259341
 Signed-off-by: mtk27745 <rex.lu@mediatek.com>
-Change-Id: Ifd40df7094052b13e26f42f09908f6404917ad8e
 
 [Description]
 Change the SW token size from 1024 to 15360 according to HW capability.
@@ -16,8 +14,6 @@
 [Release-log]
 N/A
 
-CR-Id: WCNCR00240772
-Change-Id: I337f41aa80758d00b4c8e7a5cc4d6faeb6f0a4a2
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
 Signed-off-by: Rex Lu <rex.lu@mediatek.com>
 ---
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0071-mtk-wifi-mt76-mt7996-wed-add-wed-support-for-mt7992.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0071-mtk-wifi-mt76-mt7996-wed-add-wed-support-for-mt7992.patch
index 32897a4..3454663 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0071-mtk-wifi-mt76-mt7996-wed-add-wed-support-for-mt7992.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0071-mtk-wifi-mt76-mt7996-wed-add-wed-support-for-mt7992.patch
@@ -8,9 +8,7 @@
 
 Fix incomplete WED initialization for Kite band-1 RX ring.
 
-CR-Id: WCNCR00298425
 Signed-off-by: Benjamin Lin <benjamin-jw.lin@mediatek.com>
-Change-Id: I2da06c9f1412f8392d1b55feea3ad8ff48ff90ad
 ---
  mt7996/dma.c    | 91 +++++++++++++++++++++++++++++++++----------------
  mt7996/init.c   | 12 +++++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0073-mtk-wifi-mt76-mt7996-Remove-wed-rro-ring-add-napi-at.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0073-mtk-wifi-mt76-mt7996-Remove-wed-rro-ring-add-napi-at.patch
index 82e5096..2827342 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0073-mtk-wifi-mt76-mt7996-Remove-wed-rro-ring-add-napi-at.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0073-mtk-wifi-mt76-mt7996-Remove-wed-rro-ring-add-napi-at.patch
@@ -6,7 +6,6 @@
 
 without this patch. rro ring will add napi at initial state. once rro ring add napi, it will have chance to be used by host driver. if host driver accessed the ring data, it will cause some issue.
 
-CR-Id: WCNCR00259341
 Signed-off-by: mtk27745 <rex.lu@mediatek.com>
 ---
  dma.c | 4 ++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0074-mtk-wifi-mt76-mt7996-Remove-wed_stop-during-L1-SER.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0074-mtk-wifi-mt76-mt7996-Remove-wed_stop-during-L1-SER.patch
index 46633a2..ab2490f 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0074-mtk-wifi-mt76-mt7996-Remove-wed_stop-during-L1-SER.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0074-mtk-wifi-mt76-mt7996-Remove-wed_stop-during-L1-SER.patch
@@ -6,7 +6,6 @@
 
 Align logan L1 SER flow. During L1 SER, didn't need to close wed interrupt.
 
-CR-Id: WCNCR00259341
 Signed-off-by: Rex Lu <rex.lu@mediatek.com>
 ---
  mt7996/mac.c | 6 ------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0075-mtk-wifi-mt76-mt7996-Refactor-rro-del-ba-command-for.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0075-mtk-wifi-mt76-mt7996-Refactor-rro-del-ba-command-for.patch
index b319c54..817d12c 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0075-mtk-wifi-mt76-mt7996-Refactor-rro-del-ba-command-for.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0075-mtk-wifi-mt76-mt7996-Refactor-rro-del-ba-command-for.patch
@@ -7,9 +7,7 @@
 1. remove unused struct
 2. refactor upstream del ba command format
 
-CR-Id: WCNCR00259516
 Signed-off-by: Rex Lu <rex.lu@mediatek.com>
-Change-Id: Iab75446a54dd0bf3aa95dc80f32d7d80b6f7fc8b
 ---
  mt7996/mcu.h | 50 +++-----------------------------------------------
  1 file changed, 3 insertions(+), 47 deletions(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0076-mtk-wifi-mt76-mt7996-get-airtime-and-RSSI-via-MCU-co.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0076-mtk-wifi-mt76-mt7996-get-airtime-and-RSSI-via-MCU-co.patch
index 3591d4e..b395ff5 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0076-mtk-wifi-mt76-mt7996-get-airtime-and-RSSI-via-MCU-co.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0076-mtk-wifi-mt76-mt7996-get-airtime-and-RSSI-via-MCU-co.patch
@@ -8,8 +8,6 @@
 Moreover, frequent access to WTBL, whenever TX-Free-Done event is received, leads to heavy CPU overheads.
 Therefore, indirect access to WTBL, through FW, with lower frequence is performed.
 
-Change-Id: I978e7432603742fae9c753f055ff3087cf6b632c
-CR-Id: WCNCR00298425
 Signed-off-by: Yi-Chia Hsieh <yi-chia.hsieh@mediatek.com>
 Signed-off-by: Benjamin Lin <benjamin-jw.lin@mediatek.com>
 ---
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0077-mtk-wifi-mt76-mt7996-add-support-for-WMM-PBC-configu.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0077-mtk-wifi-mt76-mt7996-add-support-for-WMM-PBC-configu.patch
index 187b38d..7d6125e 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0077-mtk-wifi-mt76-mt7996-add-support-for-WMM-PBC-configu.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0077-mtk-wifi-mt76-mt7996-add-support-for-WMM-PBC-configu.patch
@@ -7,9 +7,7 @@
 Query per-AC-queue packet statistics from WA, and determine if multi-AC transmission is ongoing.
 If it is, enable WMM mode in WA. Otherwise, disable WMM mode.
 
-CR-Id: WCNCR00298425
 Signed-off-by: Benjamin Lin <benjamin-jw.lin@mediatek.com>
-Change-Id: I1852a45dc0e64780af5f091fd749ceab59697dbb
 ---
  mt76_connac_mcu.h |  2 ++
  mt7996/init.c     |  2 ++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0078-mtk-wifi-mt76-mt7996-eagle-support-extra-option_type.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0078-mtk-wifi-mt76-mt7996-eagle-support-extra-option_type.patch
index eb0ca10..e0cae7d 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0078-mtk-wifi-mt76-mt7996-eagle-support-extra-option_type.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0078-mtk-wifi-mt76-mt7996-eagle-support-extra-option_type.patch
@@ -7,15 +7,11 @@
 1. eagle + mt7988d option_type 2 support
 2. eagle single pcie support
 
-CR-Id: WCNCR00259516
-Change-Id: Ib8e741b3c9eba3c796704351259f926c1e4e9d69
 Signed-off-by: Rex Lu <rex.lu@mediatek.com>
 
 1. adjust pcie outstanding value by pcie speed. not no longer by option_type.
 
-CR-Id: WCNCR00259516
 Signed-off-by: Rex Lu <rex.lu@mediatek.com>
-Change-Id: I1c8fa6769aa0b192b32738aec0b14c86572a493b
 (cherry picked from commit 31d64e0f571eb06ed67f4916bc12fbcfe1263c47)
 ---
  mt7996/dma.c    | 51 +++++++++++++++++++++++++++++++++----
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0080-mtk-wifi-mt76-mt7996-support-thermal-recal-debug-com.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0080-mtk-wifi-mt76-mt7996-support-thermal-recal-debug-com.patch
index dcd5544..15694fa 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0080-mtk-wifi-mt76-mt7996-support-thermal-recal-debug-com.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0080-mtk-wifi-mt76-mt7996-support-thermal-recal-debug-com.patch
@@ -14,8 +14,6 @@
 1 = enable
 2 = manual trigger
 
-CR-Id: WCNCR00261410
-Change-Id: Ief064633dd7ab0faeb298ac3902ca1b399e70365
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
 ---
  mt76_connac_mcu.h    |  1 +
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0081-mtk-wifi-mt76-mt7996-add-kite-two-pcie-with-two-wed-.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0081-mtk-wifi-mt76-mt7996-add-kite-two-pcie-with-two-wed-.patch
index 663b42a..463df1f 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0081-mtk-wifi-mt76-mt7996-add-kite-two-pcie-with-two-wed-.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0081-mtk-wifi-mt76-mt7996-add-kite-two-pcie-with-two-wed-.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 081/116] mtk: wifi: mt76: mt7996: add kite two pcie with two
  wed support
 
-CR-Id: WCNCR00259516
 Signed-off-by: Rex Lu <rex.lu@mediatek.com>
 ---
  mt7996/dma.c  | 68 ++++++++++++++++++++++++++++++++++++++-------------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0082-mtk-wifi-mt76-mt7992-add-support-to-enable-index-FW-.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0082-mtk-wifi-mt76-mt7992-add-support-to-enable-index-FW-.patch
index bcb03ab..0ff551c 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0082-mtk-wifi-mt76-mt7992-add-support-to-enable-index-FW-.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0082-mtk-wifi-mt76-mt7992-add-support-to-enable-index-FW-.patch
@@ -25,9 +25,7 @@
 - Driver Log: log message printed at driver layer
 	- Location: /tmp/log/clog_(timestamp)/WIFI_KERNEL_(timestamp).clog
 
-CR-Id: WCNCR00298425
 Signed-off-by: Benjamin Lin <benjamin-jw.lin@mediatek.com>
-Change-Id: I5d72c844e920cdcbaed4c65f734de8f041e6f384
 ---
  mt7996/debugfs.c  |  90 +++++++++++++++++--
  mt7996/mac.c      |  10 ++-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0083-wifi-mt76-mt7996-implement-and-switch-to-hw-scan-cal.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0083-wifi-mt76-mt7996-implement-and-switch-to-hw-scan-cal.patch
index bb90a0e..ffec2d1 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0083-wifi-mt76-mt7996-implement-and-switch-to-hw-scan-cal.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0083-wifi-mt76-mt7996-implement-and-switch-to-hw-scan-cal.patch
@@ -13,7 +13,6 @@
 request should be unicast.
 This works for ML probe request, which should be unicast.
 
-Change-Id: Ic096b10e4a82211be4c5c435d3e34e0a76ea3b9e
 Co-developed-by: Peter Chiu <chui-hao.chiu@mediatek.com>
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
 Co-developed-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0084-wifi-mt76-mt7996-implement-and-switch-to-chanctx-cal.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0084-wifi-mt76-mt7996-implement-and-switch-to-chanctx-cal.patch
index efe816c..a413885 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0084-wifi-mt76-mt7996-implement-and-switch-to-chanctx-cal.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0084-wifi-mt76-mt7996-implement-and-switch-to-chanctx-cal.patch
@@ -8,7 +8,6 @@
 operate on multiple channels (links).
 This is a preliminary patch to add MLO support for mt7996 chipsets.
 
-Change-Id: Ie4530a3bc2ac9e51045184d5aecca14118177042
 Co-developed-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0085-wifi-mt76-mt7996-use-.sta_state-to-replace-.sta_add-.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0085-wifi-mt76-mt7996-use-.sta_state-to-replace-.sta_add-.patch
index 03615f1..6d221cf 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0085-wifi-mt76-mt7996-use-.sta_state-to-replace-.sta_add-.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0085-wifi-mt76-mt7996-use-.sta_state-to-replace-.sta_add-.patch
@@ -13,7 +13,6 @@
 
 This is a preliminary patch to add MLO support for mt7996 chipsets.
 
-Change-Id: I8a0faef919843f2c7d5ff3256702a3bf8384ea60
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
 ---
  mt7996/main.c   | 53 ++++++++++++++++++++-----------------------------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0108-mtk-mt76-mt7996-hw_scan-ACS-channel-time-too-long-on.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0108-mtk-mt76-mt7996-hw_scan-ACS-channel-time-too-long-on.patch
index d62352f..79732e8 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0108-mtk-mt76-mt7996-hw_scan-ACS-channel-time-too-long-on.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0108-mtk-mt76-mt7996-hw_scan-ACS-channel-time-too-long-on.patch
@@ -9,7 +9,6 @@
 
 This commit applys same solution for HW scan.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  mt7996/main.c | 3 ++-
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0109-wifi-mt76-mt7996-add-beacon-monitoring-in-driver-for.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0109-wifi-mt76-mt7996-add-beacon-monitoring-in-driver-for.patch
index b7c620f..8b41539 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0109-wifi-mt76-mt7996-add-beacon-monitoring-in-driver-for.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0109-wifi-mt76-mt7996-add-beacon-monitoring-in-driver-for.patch
@@ -8,9 +8,7 @@
 support connect monitoring if WIPHY_FLAG_SUPPORTS_MLO is set.
 (IEEE80211_HW_CONNECTION_MONITOR should be set)
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: I52211987abd6309bbb23dc648af3f377adf8982a
 ---
  mt7996/mac.c    | 56 +++++++++++++++++++++++++++++++++++++++++++++++++
  mt7996/main.c   | 50 +++++++++++++++++++++++++++++++++++++++++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0110-mtk-wifi-mt76-mt7996-support-band_idx-option-for-set.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0110-mtk-wifi-mt76-mt7996-support-band_idx-option-for-set.patch
index c07333f..af1295a 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0110-mtk-wifi-mt76-mt7996-support-band_idx-option-for-set.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0110-mtk-wifi-mt76-mt7996-support-band_idx-option-for-set.patch
@@ -7,8 +7,6 @@
 The vendor command set_mu and get_mu should be executed with band_idx.
 With band_idx, driver can access the corrsponding phy by band_idx.
 
-CR-Id: WCNCR00240772
-Change-Id: Id33d5efd3752e767fc11e852836d9939e4d6a088
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
 ---
  mt7996/mcu.c    | 26 +++++++++++++++++++-------
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0112-mtk-wifi-mt76-mt7996-enable-ampdu-limit-to-avoid-BA-.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0112-mtk-wifi-mt76-mt7996-enable-ampdu-limit-to-avoid-BA-.patch
index b2a0fda..f3dae49 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0112-mtk-wifi-mt76-mt7996-enable-ampdu-limit-to-avoid-BA-.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0112-mtk-wifi-mt76-mt7996-enable-ampdu-limit-to-avoid-BA-.patch
@@ -25,9 +25,7 @@
 [Release-log]
 N/A
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I64ea1d5df012c1eb9462391e5e9c20658ed7f4fe
 ---
  mt76_connac_mcu.h |  1 +
  mt7996/mcu.c      | 86 +++++++++++++++++++++++++++++++++++++++++++++++
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0113-wifi-mt76-mt7996-Fix-get_txpower-wrong-result-in-sin.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0113-wifi-mt76-mt7996-Fix-get_txpower-wrong-result-in-sin.patch
index 7b9c302..37fb204 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0113-wifi-mt76-mt7996-Fix-get_txpower-wrong-result-in-sin.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0113-wifi-mt76-mt7996-Fix-get_txpower-wrong-result-in-sin.patch
@@ -9,8 +9,6 @@
 
 Temporarily use link 0 bss due to mac80211 didn't pass link id here.
 
-CR-Id: WCNCR00259302
-Change-Id: I306897ded276b0e5aee191339f18f0f25ca322f2
 ---
  mt7996/main.c | 28 +++++++++++++++++++++++++++-
  1 file changed, 27 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0114-mtk-wifi-mt76-mt7996-add-beacon_int_min_gcd-to-suppo.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0114-mtk-wifi-mt76-mt7996-add-beacon_int_min_gcd-to-suppo.patch
index c997806..212f934 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0114-mtk-wifi-mt76-mt7996-add-beacon_int_min_gcd-to-suppo.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0114-mtk-wifi-mt76-mt7996-add-beacon_int_min_gcd-to-suppo.patch
@@ -12,9 +12,7 @@
 Without this patch, set beacon fail when different interfaces use
 different beacon interval.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: Ic92582c86f6bf41b58ac1dd03175289a16be32c8
 ---
  mt7996/init.c | 1 +
  1 file changed, 1 insertion(+)
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0115-mtk-wifi-mt76-mt7996-Add-connac3-csi-feature.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0115-mtk-wifi-mt76-mt7996-Add-connac3-csi-feature.patch
index 68acfd9..66f1d19 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/0115-mtk-wifi-mt76-mt7996-Add-connac3-csi-feature.patch
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0115-mtk-wifi-mt76-mt7996-Add-connac3-csi-feature.patch
@@ -7,8 +7,6 @@
 2. add bw320 support.
 3. add active mode.
 
-CR-Id: WCNCR00364748
-Change-Id: If37ac6de4781c3673671707ee3ee243dda8163f8
 Signed-off-by: mtk20656 <chank.chen@mediatek.com>
 ---
  mt76_connac_mcu.h |   2 +
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/0117-mtk-wifi-mt76-mt7996-remain-multiple-wiphy-model-for.patch b/recipes-wifi/linux-mt76/files/patches-3.x/0117-mtk-wifi-mt76-mt7996-remain-multiple-wiphy-model-for.patch
new file mode 100644
index 0000000..8eb928e
--- /dev/null
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/0117-mtk-wifi-mt76-mt7996-remain-multiple-wiphy-model-for.patch
@@ -0,0 +1,111 @@
+From ac266f21b594867461f3354940b84d218992a42f Mon Sep 17 00:00:00 2001
+From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
+Date: Mon, 22 Apr 2024 16:49:48 +0800
+Subject: [PATCH] mtk: wifi: mt76: mt7996: remain multiple wiphy model for
+ testmode
+
+Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
+---
+ mt7996/init.c   | 13 ++++++++-----
+ mt7996/main.c   | 14 ++++++++++----
+ mt7996/mt7996.h |  9 ++++-----
+ 3 files changed, 22 insertions(+), 14 deletions(-)
+
+diff --git a/mt7996/init.c b/mt7996/init.c
+index 047d2b78..3baf40d1 100644
+--- a/mt7996/init.c
++++ b/mt7996/init.c
+@@ -794,9 +794,11 @@ static int mt7996_register_phy(struct mt7996_dev *dev, struct mt7996_phy *phy,
+ 		mtk_wed_device_start(&dev->mt76.mmio.wed_hif2, MT_INT_TX_RX_DONE_EXT);
+ 	}
+ 
+-	/* TODO: FIXME: force to use single wiphy, need to rework init flow */
+-	phy->mt76->ori_hw = mphy->hw;
+-	mphy->hw = dev->phy.mt76->hw;
++	/* TODO: FIXME: force to use single wiphy for normal mode, need to rework init flow */
++	if (!dev->testmode_enable) {
++		phy->mt76->ori_hw = mphy->hw;
++		mphy->hw = dev->phy.mt76->hw;
++	}
+ 
+ 	return 0;
+ 
+@@ -832,8 +834,9 @@ mt7996_unregister_phy(struct mt7996_phy *phy, enum mt76_band_id band)
+ 	if (!phy)
+ 		return;
+ 
+-	/* TODO: FIXME: temp for single wiphy support */
+-	phy->mt76->hw = phy->mt76->ori_hw;
++	/* TODO: FIXME: temp for normal mode single wiphy support */
++	if (!phy->dev->testmode_enable)
++		phy->mt76->hw = phy->mt76->ori_hw;
+ 
+ #ifdef CONFIG_MTK_VENDOR
+ 	mt7996_unregister_csi(phy);
+diff --git a/mt7996/main.c b/mt7996/main.c
+index 74b87475..ea230921 100644
+--- a/mt7996/main.c
++++ b/mt7996/main.c
+@@ -140,8 +140,8 @@ static int mt7996_start(struct ieee80211_hw *hw)
+ 	struct mt7996_dev *dev = mt7996_hw_dev(hw);
+ 	int ret;
+ 
+-	/* only allow settings from hw0 */
+-	if (hw != dev->phy.mt76->hw)
++	/* only allow settings from hw0 for normal mode */
++	if (!dev->testmode_enable && hw != dev->phy.mt76->hw)
+ 		return -1;
+ 
+ 	flush_work(&dev->init_work);
+@@ -158,8 +158,8 @@ static void mt7996_stop(struct ieee80211_hw *hw)
+ 	struct mt7996_dev *dev = mt7996_hw_dev(hw);
+ 	int band;
+ 
+-	/* only allow settings from hw0 */
+-	if (hw != dev->phy.mt76->hw)
++	/* only allow settings from hw0 for normal mode */
++	if (!dev->testmode_enable && hw != dev->phy.mt76->hw)
+ 		return;
+ 
+ 	cancel_delayed_work_sync(&dev->scs_work);
+@@ -453,6 +453,12 @@ static int mt7996_add_interface(struct ieee80211_hw *hw,
+ 	    is_zero_ether_addr(vif->addr))
+ 		phy->monitor_vif = vif;
+ 
++	if (dev->testmode_enable && vif->type != NL80211_IFTYPE_MONITOR) {
++		mutex_unlock(&dev->mt76.mutex);
++		dev_err(dev->mt76.dev, "Only monitor interface is allowed in testmode\n");
++		return -EINVAL;
++	}
++
+ 	INIT_DELAYED_WORK(&mvif->beacon_mon_work, mt7996_beacon_mon_work);
+ 	mvif->dev = dev;
+ 	mvif->hw = hw;
+diff --git a/mt7996/mt7996.h b/mt7996/mt7996.h
+index 9a9eb75b..5555c11c 100644
+--- a/mt7996/mt7996.h
++++ b/mt7996/mt7996.h
+@@ -868,16 +868,15 @@ mt7996_get_background_radar_cap(struct mt7996_dev *dev)
+ static inline struct mt7996_phy *
+ mt7996_band_phy(struct ieee80211_hw *hw, enum nl80211_band band)
+ {
+-	struct mt76_dev *dev = hw->priv;
+-	struct mt76_phy *phy;
++	struct mt76_phy *phy = hw->priv;
+ 
+ 	/* TODO: mlo: temporarily hardcode */
+ 	if (band == NL80211_BAND_6GHZ)
+-		phy = dev->phys[MT_BAND2];
++		phy = phy->dev->phys[MT_BAND2];
+ 	else if (band == NL80211_BAND_5GHZ)
+-		phy = dev->phys[MT_BAND1];
++		phy = phy->dev->phys[MT_BAND1];
+ 	else
+-		phy = dev->phys[MT_BAND0];
++		phy = phy->dev->phys[MT_BAND0];
+ 
+ 	if (!phy)
+ 		return NULL;
+-- 
+2.18.0
+
diff --git a/recipes-wifi/linux-mt76/files/patches-3.x/patches.inc b/recipes-wifi/linux-mt76/files/patches-3.x/patches.inc
index 4764a18..8cf33b1 100644
--- a/recipes-wifi/linux-mt76/files/patches-3.x/patches.inc
+++ b/recipes-wifi/linux-mt76/files/patches-3.x/patches.inc
@@ -116,4 +116,5 @@
     file://0114-mtk-wifi-mt76-mt7996-add-beacon_int_min_gcd-to-suppo.patch \
     file://0115-mtk-wifi-mt76-mt7996-Add-connac3-csi-feature.patch \
     file://0116-mtk-wifi-mt76-mt7996-add-more-debug-info-for-MLO.patch \
+    file://0117-mtk-wifi-mt76-mt7996-remain-multiple-wiphy-model-for.patch \
     "
diff --git a/recipes-wifi/linux-mt76/files/patches/0016-wifi-mt76-mt7915-add-dummy-HW-offload-of-IEEE-802.11.patch b/recipes-wifi/linux-mt76/files/patches/0016-wifi-mt76-mt7915-add-dummy-HW-offload-of-IEEE-802.11.patch
index ac40da9..b062d40 100644
--- a/recipes-wifi/linux-mt76/files/patches/0016-wifi-mt76-mt7915-add-dummy-HW-offload-of-IEEE-802.11.patch
+++ b/recipes-wifi/linux-mt76/files/patches/0016-wifi-mt76-mt7915-add-dummy-HW-offload-of-IEEE-802.11.patch
@@ -36,7 +36,7 @@
 +static int
 +mt7915_set_frag_threshold(struct ieee80211_hw *hw, u32 val)
 +{
-+	return -EOPNOTSUPP;
++	return 0;
 +}
 +
  static int
diff --git a/recipes-wifi/linux-mt76/files/patches/0017-wifi-mt76-mt7915-fix-inconsistent-QoS-mapping-betwee.patch b/recipes-wifi/linux-mt76/files/patches/0017-wifi-mt76-mt7915-fix-inconsistent-QoS-mapping-betwee.patch
new file mode 100644
index 0000000..d4d3d2e
--- /dev/null
+++ b/recipes-wifi/linux-mt76/files/patches/0017-wifi-mt76-mt7915-fix-inconsistent-QoS-mapping-betwee.patch
@@ -0,0 +1,103 @@
+From 9c6e5082d5552ac2cefe5b4857da4b29b0c76685 Mon Sep 17 00:00:00 2001
+From: Benjamin Lin <benjamin-jw.lin@mediatek.com>
+Date: Thu, 25 Apr 2024 17:17:13 +0800
+Subject: [PATCH] wifi: mt76: mt7915: fix inconsistent QoS mapping between SW
+ and HW
+
+The mapping from IP DSCP to IEEE 802.11 user priority may be customized.
+Therefore, driver needs to pass the mapping to HW, so that the QoS type of traffic can be mapped in a consistent manner for both SW and HW paths.
+
+Signed-off-by: Benjamin Lin <benjamin-jw.lin@mediatek.com>
+---
+ mt76_connac_mcu.h |  1 +
+ mt7915/main.c     |  3 +++
+ mt7915/mcu.c      | 37 +++++++++++++++++++++++++++++++++++++
+ mt7915/mt7915.h   |  1 +
+ 4 files changed, 42 insertions(+)
+
+diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
+index 1dd8244..0936c1c 100644
+--- a/mt76_connac_mcu.h
++++ b/mt76_connac_mcu.h
+@@ -1236,6 +1236,7 @@ enum {
+ 	MCU_EXT_CMD_GROUP_PRE_CAL_INFO = 0xab,
+ 	MCU_EXT_CMD_DPD_PRE_CAL_INFO = 0xac,
+ 	MCU_EXT_CMD_PHY_STAT_INFO = 0xad,
++	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
+ };
+ 
+ enum {
+diff --git a/mt7915/main.c b/mt7915/main.c
+index 5ed84bc..26f9a5a 100644
+--- a/mt7915/main.c
++++ b/mt7915/main.c
+@@ -646,6 +646,9 @@ static void mt7915_bss_info_changed(struct ieee80211_hw *hw,
+ 		}
+ 	}
+ 
++	if (changed & BSS_CHANGED_QOS)
++		mt7915_mcu_set_qos_map(dev, vif);
++
+ 	/* ensure that enable txcmd_mode after bss_info */
+ 	if (changed & (BSS_CHANGED_QOS | BSS_CHANGED_BEACON_ENABLED))
+ 		mt7915_mcu_set_tx(dev, vif);
+diff --git a/mt7915/mcu.c b/mt7915/mcu.c
+index 446c512..3d7fc6d 100644
+--- a/mt7915/mcu.c
++++ b/mt7915/mcu.c
+@@ -4212,3 +4212,40 @@ int mt7915_mcu_rf_regval(struct mt7915_dev *dev, u32 regidx, u32 *val, bool set)
+ 
+ 	return 0;
+ }
++
++int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif)
++{
++#define IP_DSCP_NUM	64
++	struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
++	struct {
++		u8 bss_idx;
++		u8 qos_map_enable;
++		u8 __rsv[2];
++		s8 qos_map[IP_DSCP_NUM];
++	} __packed req = {
++		.bss_idx = mvif->mt76.idx,
++		.qos_map_enable = false,
++	};
++	struct cfg80211_qos_map *qos_map;
++
++	rcu_read_lock();
++	qos_map = ieee80211_get_qos_map(vif);
++	if (qos_map) {
++		struct cfg80211_dscp_range *dscp_range = qos_map->up;
++		s8 up;
++
++		req.qos_map_enable = true;
++		for (up = 0; up < IEEE80211_NUM_UPS; ++up) {
++			u8 low = dscp_range[up].low, high = dscp_range[up].high;
++
++			if (low >= IP_DSCP_NUM || high >= IP_DSCP_NUM || low > high)
++				continue;
++
++			memset(req.qos_map + low, up, high - low + 1);
++		}
++	}
++	rcu_read_unlock();
++
++	return mt76_mcu_send_msg(&dev->mt76, MCU_WA_EXT_CMD(SET_QOS_MAP), &req,
++				 sizeof(req), true);
++}
+diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
+index 74cd8ca..66d87d7 100644
+--- a/mt7915/mt7915.h
++++ b/mt7915/mt7915.h
+@@ -521,6 +521,7 @@ int mt7915_mcu_fw_dbg_ctrl(struct mt7915_dev *dev, u32 module, u8 level);
+ void mt7915_mcu_rx_event(struct mt7915_dev *dev, struct sk_buff *skb);
+ void mt7915_mcu_exit(struct mt7915_dev *dev);
+ void mt7915_mcu_wmm_pbc_work(struct work_struct *work);
++int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif);
+ 
+ static inline u16 mt7915_wtbl_size(struct mt7915_dev *dev)
+ {
+-- 
+2.18.0
+
diff --git a/recipes-wifi/linux-mt76/files/patches/1000-wifi-mt76-mt7915-add-mtk-internal-debug-tools-for-mt.patch b/recipes-wifi/linux-mt76/files/patches/1000-wifi-mt76-mt7915-add-mtk-internal-debug-tools-for-mt.patch
index 22f88f4..a03665b 100644
--- a/recipes-wifi/linux-mt76/files/patches/1000-wifi-mt76-mt7915-add-mtk-internal-debug-tools-for-mt.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1000-wifi-mt76-mt7915-add-mtk-internal-debug-tools-for-mt.patch
@@ -1,8 +1,7 @@
-From 9cbf64d8b75c4d6f988ac10f8654b640bec98320 Mon Sep 17 00:00:00 2001
+From ae5f0852b50290e0aaf2ff9d5dd8f9bd2b97bbb6 Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Wed, 22 Jun 2022 10:39:47 +0800
-Subject: [PATCH 1000/1053] wifi: mt76: mt7915: add mtk internal debug tools
- for mt76
+Subject: [PATCH] wifi: mt76: mt7915: add mtk internal debug tools for mt76
 
 ---
  mt76_connac_mcu.h     |    6 +
@@ -24,7 +23,7 @@
  create mode 100644 mt7915/mtk_mcu.c
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 61ca241..ac524fe 100644
+index 99cdd1b..a8690cd 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1195,6 +1195,7 @@ enum {
@@ -272,7 +271,7 @@
  }
  
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 407da07..e7166c6 100644
+index e10cdb3..3ac3df3 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -73,7 +73,11 @@ int mt7915_run(struct ieee80211_hw *hw)
@@ -296,7 +295,7 @@
  	mt7915_mac_wtbl_update(dev, idx,
  			       MT_WTBL_UPDATE_ADM_COUNT_CLEAR);
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 8f6bc6e..321a839 100644
+index 3e3d57c..1a3647a 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -205,6 +205,11 @@ mt7915_mcu_send_message(struct mt76_dev *mdev, struct sk_buff *skb,
@@ -356,11 +355,10 @@
  int mt7915_mcu_rf_regval(struct mt7915_dev *dev, u32 regidx, u32 *val, bool set)
  {
  	struct {
-@@ -4213,3 +4240,22 @@ int mt7915_mcu_rf_regval(struct mt7915_dev *dev, u32 regidx, u32 *val, bool set)
- 
+@@ -4214,6 +4241,25 @@ int mt7915_mcu_rf_regval(struct mt7915_dev *dev, u32 regidx, u32 *val, bool set)
  	return 0;
  }
-+
+ 
 +#ifdef MTK_DEBUG
 +int mt7915_mcu_set_amsdu_algo(struct mt7915_dev *dev, u16 wcid, u8 enable)
 +{
@@ -379,6 +377,10 @@
 +	return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(MEC_CTRL), &req, sizeof(req), true);
 +}
 +#endif
++
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif)
+ {
+ #define IP_DSCP_NUM	64
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
 index fa0847d..9ae0f07 100644
 --- a/mt7915/mcu.h
@@ -395,7 +397,7 @@
  	MCU_WA_PARAM_RED_SETTING = 0x40,
  };
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 74cd8ca..58c0bf9 100644
+index 66d87d7..398f851 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -9,6 +9,7 @@
@@ -455,7 +457,7 @@
  	bool wmm_pbc_enable;
  	struct work_struct wmm_pbc_work;
  	u32 adie_type;
-@@ -610,4 +646,24 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
+@@ -611,4 +647,24 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
  int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
  			 bool pci, int *irq);
  
@@ -1930,7 +1932,7 @@
 +#endif
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
 new file mode 100644
-index 0000000..d2b5b7d
+index 0000000..62d3a99
 --- /dev/null
 +++ b/mt7915/mtk_debugfs.c
 @@ -0,0 +1,3750 @@
diff --git a/recipes-wifi/linux-mt76/files/patches/1001-wifi-mt76-mt7915-csi-implement-csi-support.patch b/recipes-wifi/linux-mt76/files/patches/1001-wifi-mt76-mt7915-csi-implement-csi-support.patch
index 2601a42..75db3ee 100644
--- a/recipes-wifi/linux-mt76/files/patches/1001-wifi-mt76-mt7915-csi-implement-csi-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1001-wifi-mt76-mt7915-csi-implement-csi-support.patch
@@ -1,7 +1,7 @@
-From cc11be422d2f3fe469a756754def0b54b23289b2 Mon Sep 17 00:00:00 2001
+From b50df1502bddba9963eadba8d69e6b95a9b87337 Mon Sep 17 00:00:00 2001
 From: Bo Jiao <Bo.Jiao@mediatek.com>
 Date: Mon, 6 Jun 2022 20:13:02 +0800
-Subject: [PATCH 1001/1053] wifi: mt76: mt7915: csi: implement csi support
+Subject: [PATCH] wifi: mt76: mt7915: csi: implement csi support
 
 ---
  mt76_connac_mcu.h |   2 +
@@ -18,7 +18,7 @@
  create mode 100644 mt7915/vendor.h
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index ac524fe..2ffe1c9 100644
+index a8690cd..cda7559 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1029,6 +1029,7 @@ enum {
@@ -29,10 +29,10 @@
  };
  
  /* unified event table */
-@@ -1242,6 +1243,7 @@ enum {
- 	MCU_EXT_CMD_GROUP_PRE_CAL_INFO = 0xab,
+@@ -1243,6 +1244,7 @@ enum {
  	MCU_EXT_CMD_DPD_PRE_CAL_INFO = 0xac,
  	MCU_EXT_CMD_PHY_STAT_INFO = 0xad,
+ 	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
 +	MCU_EXT_CMD_CSI_CTRL = 0xc2,
  };
  
@@ -55,10 +55,10 @@
  mt7915e-$(CONFIG_NL80211_TESTMODE) += testmode.o
  mt7915e-$(CONFIG_MT798X_WMAC) += soc.o
 diff --git a/mt7915/init.c b/mt7915/init.c
-index 3ec9eab..6d23dfd 100644
+index 19a68c5..c504ebf 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
-@@ -696,6 +696,12 @@ mt7915_register_ext_phy(struct mt7915_dev *dev, struct mt7915_phy *phy)
+@@ -697,6 +697,12 @@ mt7915_register_ext_phy(struct mt7915_dev *dev, struct mt7915_phy *phy)
  	/* init wiphy according to mphy and phy */
  	mt7915_init_wiphy(phy);
  
@@ -71,7 +71,7 @@
  	ret = mt76_register_phy(mphy, true, mt76_rates,
  				ARRAY_SIZE(mt76_rates));
  	if (ret)
-@@ -1177,6 +1183,24 @@ void mt7915_set_stream_he_caps(struct mt7915_phy *phy)
+@@ -1178,6 +1184,24 @@ void mt7915_set_stream_he_caps(struct mt7915_phy *phy)
  	}
  }
  
@@ -96,7 +96,7 @@
  static void mt7915_unregister_ext_phy(struct mt7915_dev *dev)
  {
  	struct mt7915_phy *phy = mt7915_ext_phy(dev);
-@@ -1185,6 +1209,10 @@ static void mt7915_unregister_ext_phy(struct mt7915_dev *dev)
+@@ -1186,6 +1210,10 @@ static void mt7915_unregister_ext_phy(struct mt7915_dev *dev)
  	if (!phy)
  		return;
  
@@ -107,7 +107,7 @@
  	mt7915_unregister_thermal(phy);
  	mt76_unregister_phy(mphy);
  	ieee80211_free_hw(mphy->hw);
-@@ -1197,6 +1225,10 @@ static void mt7915_stop_hardware(struct mt7915_dev *dev)
+@@ -1198,6 +1226,10 @@ static void mt7915_stop_hardware(struct mt7915_dev *dev)
  	mt7915_dma_cleanup(dev);
  	tasklet_disable(&dev->mt76.irq_tasklet);
  
@@ -118,7 +118,7 @@
  	if (is_mt798x(&dev->mt76))
  		mt7986_wmac_disable(dev);
  }
-@@ -1241,6 +1273,12 @@ int mt7915_register_device(struct mt7915_dev *dev)
+@@ -1242,6 +1274,12 @@ int mt7915_register_device(struct mt7915_dev *dev)
  	dev->mt76.test_ops = &mt7915_testmode_ops;
  #endif
  
@@ -132,10 +132,10 @@
  				   ARRAY_SIZE(mt76_rates));
  	if (ret)
 diff --git a/mt7915/main.c b/mt7915/main.c
-index e7166c6..4aa1b6d 100644
+index 3ac3df3..4edb11a 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -809,6 +809,10 @@ void mt7915_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -811,6 +811,10 @@ void mt7915_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif,
  	struct mt7915_phy *phy = msta->vif->phy;
  	int i;
  
@@ -147,7 +147,7 @@
  
  	mt7915_mac_wtbl_update(dev, msta->wcid.idx,
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 321a839..9baf52b 100644
+index 1a3647a..65609b4 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -40,6 +40,10 @@ static bool sr_scene_detect = true;
@@ -458,7 +458,7 @@
 +
  #endif
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 58c0bf9..4617c59 100644
+index 398f851..5a26335 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -195,6 +195,45 @@ struct mt7915_hif {
@@ -529,7 +529,7 @@
  };
  
  #ifdef MTK_DEBUG
-@@ -646,6 +700,12 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
+@@ -647,6 +701,12 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
  int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
  			 bool pci, int *irq);
  
diff --git a/recipes-wifi/linux-mt76/files/patches/1002-wifi-mt76-mt7915-air-monitor-support.patch b/recipes-wifi/linux-mt76/files/patches/1002-wifi-mt76-mt7915-air-monitor-support.patch
index baa3a93..b2156ed 100644
--- a/recipes-wifi/linux-mt76/files/patches/1002-wifi-mt76-mt7915-air-monitor-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1002-wifi-mt76-mt7915-air-monitor-support.patch
@@ -1,7 +1,7 @@
-From c77d92fc916236853e030c21b0a89da7b226609f Mon Sep 17 00:00:00 2001
+From 1a63c07be0a813d1342346c937cd2f949439b837 Mon Sep 17 00:00:00 2001
 From: Bo Jiao <Bo.Jiao@mediatek.com>
 Date: Tue, 11 Jan 2022 12:03:23 +0800
-Subject: [PATCH 1002/1053] wifi: mt76: mt7915: air monitor support
+Subject: [PATCH] wifi: mt76: mt7915: air monitor support
 
 ---
  mt76_connac_mcu.h |   2 +
@@ -13,7 +13,7 @@
  6 files changed, 440 insertions(+)
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 2ffe1c9..4172946 100644
+index cda7559..3aa4e59 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1243,6 +1243,8 @@ enum {
@@ -22,9 +22,9 @@
  	MCU_EXT_CMD_PHY_STAT_INFO = 0xad,
 +	/* for vendor csi and air monitor */
 +	MCU_EXT_CMD_SMESH_CTRL = 0xae,
+ 	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
  	MCU_EXT_CMD_CSI_CTRL = 0xc2,
  };
- 
 diff --git a/mt7915/mac.c b/mt7915/mac.c
 index d99864f..e38905a 100644
 --- a/mt7915/mac.c
@@ -41,10 +41,10 @@
  		status->flag |= RX_FLAG_8023;
  		mt7915_wed_check_ppe(dev, &dev->mt76.q_rx[q], msta, skb,
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 4aa1b6d..19719b3 100644
+index 4edb11a..847c74b 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -798,6 +798,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -800,6 +800,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
  	addr = mt7915_mac_wtbl_lmac_addr(dev, msta->wcid.idx, 30);
  	mt76_rmw_field(dev, addr, GENMASK(7, 0), 0xa0);
  
@@ -55,7 +55,7 @@
  }
  
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 4617c59..35ccfa3 100644
+index 5a26335..576e70a 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -232,6 +232,33 @@ struct csi_data {
@@ -101,7 +101,7 @@
  #endif
  };
  
-@@ -704,6 +733,9 @@ int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
+@@ -705,6 +734,9 @@ int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
  void mt7915_vendor_register(struct mt7915_phy *phy);
  int mt7915_mcu_set_csi(struct mt7915_phy *phy, u8 mode,
  		       u8 cfg, u8 v1, u32 v2, u8 *mac_addr, u32 sta_interval);
diff --git a/recipes-wifi/linux-mt76/files/patches/1004-wifi-mt76-mt7915-certification-patches.patch b/recipes-wifi/linux-mt76/files/patches/1004-wifi-mt76-mt7915-certification-patches.patch
index 710b973..6f8ce96 100644
--- a/recipes-wifi/linux-mt76/files/patches/1004-wifi-mt76-mt7915-certification-patches.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1004-wifi-mt76-mt7915-certification-patches.patch
@@ -1,7 +1,7 @@
-From 8d5f43f16dd3b85a455edd54e440555a96668183 Mon Sep 17 00:00:00 2001
+From e98f4b4ccc941705436b9cdfbd22b2e72b2ef055 Mon Sep 17 00:00:00 2001
 From: MeiChia Chiu <meichia.chiu@mediatek.com>
 Date: Mon, 6 Jun 2022 20:15:51 +0800
-Subject: [PATCH 1004/1053] wifi: mt76: mt7915: certification patches
+Subject: [PATCH] wifi: mt76: mt7915: certification patches
 
 ---
  mt76_connac_mcu.h    |   1 +
@@ -16,13 +16,13 @@
  9 files changed, 955 insertions(+), 5 deletions(-)
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 4172946..53262ce 100644
+index 3aa4e59..d62b7df 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
-@@ -1245,6 +1245,7 @@ enum {
- 	MCU_EXT_CMD_PHY_STAT_INFO = 0xad,
+@@ -1246,6 +1246,7 @@ enum {
  	/* for vendor csi and air monitor */
  	MCU_EXT_CMD_SMESH_CTRL = 0xae,
+ 	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
 +	MCU_EXT_CMD_CERT_CFG = 0xb7,
  	MCU_EXT_CMD_CSI_CTRL = 0xc2,
  };
@@ -76,10 +76,10 @@
  			       IEEE80211_RC_NSS_CHANGED |
  			       IEEE80211_RC_BW_CHANGED))
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 19719b3..f698b24 100644
+index 847c74b..8835cda 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -769,6 +769,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -771,6 +771,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
  	struct mt7915_sta *msta = (struct mt7915_sta *)sta->drv_priv;
  	struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
  	bool ext_phy = mvif->phy != &dev->phy;
@@ -89,7 +89,7 @@
  	int ret, idx;
  	u32 addr;
  
-@@ -801,7 +804,15 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -803,7 +806,15 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
  #ifdef CONFIG_MTK_VENDOR
  	mt7915_vendor_amnt_sta_remove(mvif->phy, sta);
  #endif
@@ -107,7 +107,7 @@
  
  void mt7915_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif,
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 6f73a7b..cd533ae 100644
+index b38c3d1..b50a2c2 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -4402,6 +4402,472 @@ mt7915_mcu_report_csi(struct mt7915_dev *dev, struct sk_buff *skb)
@@ -818,10 +818,10 @@
  
  #endif
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index e21a101..0eca040 100644
+index 30fb064..136e89f 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
-@@ -732,6 +732,19 @@ int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
+@@ -733,6 +733,19 @@ int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
  			 bool pci, int *irq);
  
  #ifdef CONFIG_MTK_VENDOR
@@ -842,7 +842,7 @@
  int mt7915_mcu_set_csi(struct mt7915_phy *phy, u8 mode,
  		       u8 cfg, u8 v1, u32 v2, u8 *mac_addr, u32 sta_interval);
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
-index f521740..1ed40ba 100644
+index 2f55a84..84f8fae 100644
 --- a/mt7915/mtk_debugfs.c
 +++ b/mt7915/mtk_debugfs.c
 @@ -2560,7 +2560,8 @@ static int mt7915_muru_onoff_get(void *data, u64 *val)
diff --git a/recipes-wifi/linux-mt76/files/patches/1008-wifi-mt76-testmode-additional-supports.patch b/recipes-wifi/linux-mt76/files/patches/1008-wifi-mt76-testmode-additional-supports.patch
index cb4e57b..fa6094e 100644
--- a/recipes-wifi/linux-mt76/files/patches/1008-wifi-mt76-testmode-additional-supports.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1008-wifi-mt76-testmode-additional-supports.patch
@@ -1,14 +1,14 @@
-From 4f2e94943abd5d7e9d70cd54a265d6031a0a7f98 Mon Sep 17 00:00:00 2001
+From e6c4c7343a54ef607d8ceafa4615a32165c121fd Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Thu, 21 Apr 2022 15:43:19 +0800
-Subject: [PATCH 1008/1053] wifi: mt76: testmode: additional supports
+Subject: [PATCH] wifi: mt76: testmode: additional supports
 
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  dma.c             |    3 +-
  mac80211.c        |   12 +
- mt76.h            |  110 +++-
+ mt76.h            |  119 ++++-
  mt76_connac_mcu.c |    4 +
  mt76_connac_mcu.h |    2 +
  mt7915/eeprom.c   |    2 +-
@@ -26,7 +26,7 @@
  testmode.h        |   79 +++
  tools/fields.c    |   90 +++-
  tx.c              |    3 +-
- 20 files changed, 2064 insertions(+), 169 deletions(-)
+ 20 files changed, 2073 insertions(+), 169 deletions(-)
 
 diff --git a/dma.c b/dma.c
 index ccdd564..bc8afcf 100644
@@ -73,7 +73,7 @@
  
  static const struct ieee80211_channel mt76_channels_6ghz[] = {
 diff --git a/mt76.h b/mt76.h
-index fe5b136..3fe18cd 100644
+index fe5b136..a7d424f 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -707,6 +707,21 @@ struct mt76_testmode_ops {
@@ -156,7 +156,7 @@
  	u32 tx_pending;
  	u32 tx_queued;
  	u16 tx_queued_limit;
-@@ -1348,6 +1387,59 @@ static inline bool mt76_testmode_enabled(struct mt76_phy *phy)
+@@ -1348,6 +1387,68 @@ static inline bool mt76_testmode_enabled(struct mt76_phy *phy)
  #endif
  }
  
@@ -172,6 +172,15 @@
 +				list);
 +}
 +
++static inline struct mt76_wcid *
++mt76_testmode_next_entry(struct mt76_phy *phy, struct mt76_wcid *wcid)
++{
++	if (wcid == &phy->dev->global_wcid)
++		return NULL;
++
++	return list_next_entry(wcid, list);
++}
++
 +static inline struct mt76_testmode_entry_data *
 +mt76_testmode_entry_data(struct mt76_phy *phy, struct mt76_wcid *wcid)
 +{
@@ -184,13 +193,13 @@
 +						   phy->hw->sta_data_size);
 +}
 +
-+#define mt76_tm_for_each_entry(phy, wcid, ed)				\
-+	for (wcid = mt76_testmode_first_entry(phy),			\
-+	     ed = mt76_testmode_entry_data(phy, wcid);			\
-+	     ((phy->test.aid &&						\
++#define mt76_tm_for_each_entry(phy, wcid, ed)					\
++	for (wcid = mt76_testmode_first_entry(phy),				\
++	     ed = mt76_testmode_entry_data(phy, wcid);				\
++	     ((phy->test.aid &&							\
 +	       !list_entry_is_head(wcid, &phy->test.tm_entry_list, list)) ||	\
 +	      (!phy->test.aid && wcid == &phy->dev->global_wcid)) && ed;	\
-+	     wcid = list_next_entry(wcid, list),			\
++	     wcid = mt76_testmode_next_entry(phy, wcid),			\
 +	     ed = mt76_testmode_entry_data(phy, wcid))
 +#endif
 +
@@ -216,7 +225,7 @@
  static inline bool mt76_is_testmode_skb(struct mt76_dev *dev,
  					struct sk_buff *skb,
  					struct ieee80211_hw **hw)
-@@ -1358,7 +1450,8 @@ static inline bool mt76_is_testmode_skb(struct mt76_dev *dev,
+@@ -1358,7 +1459,8 @@ static inline bool mt76_is_testmode_skb(struct mt76_dev *dev,
  	for (i = 0; i < ARRAY_SIZE(dev->phys); i++) {
  		struct mt76_phy *phy = dev->phys[i];
  
@@ -226,7 +235,7 @@
  			*hw = dev->phys[i]->hw;
  			return true;
  		}
-@@ -1460,7 +1553,8 @@ int mt76_testmode_cmd(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
+@@ -1460,7 +1562,8 @@ int mt76_testmode_cmd(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
  int mt76_testmode_dump(struct ieee80211_hw *hw, struct sk_buff *skb,
  		       struct netlink_callback *cb, void *data, int len);
  int mt76_testmode_set_state(struct mt76_phy *phy, enum mt76_testmode_state state);
@@ -259,7 +268,7 @@
  		return;
  
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 75cb4e9..0972010 100644
+index 22d477f..0f408d9 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1023,6 +1023,7 @@ enum {
@@ -275,9 +284,9 @@
  	/* for vendor csi and air monitor */
  	MCU_EXT_CMD_SMESH_CTRL = 0xae,
 +	MCU_EXT_CMD_RX_STAT_USER_CTRL = 0xb3,
+ 	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
  	MCU_EXT_CMD_CERT_CFG = 0xb7,
  	MCU_EXT_CMD_CSI_CTRL = 0xc2,
- };
 diff --git a/mt7915/eeprom.c b/mt7915/eeprom.c
 index bfdbc15..f4876fe 100644
 --- a/mt7915/eeprom.c
@@ -292,10 +301,10 @@
  				return ret;
  		}
 diff --git a/mt7915/init.c b/mt7915/init.c
-index fc42974..439403f 100644
+index 0350250..5c4aa1e 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
-@@ -726,7 +726,7 @@ static void mt7915_init_work(struct work_struct *work)
+@@ -727,7 +727,7 @@ static void mt7915_init_work(struct work_struct *work)
  	struct mt7915_dev *dev = container_of(work, struct mt7915_dev,
  				 init_work);
  
@@ -395,7 +404,7 @@
  		goto out;
  
 diff --git a/mt7915/main.c b/mt7915/main.c
-index f698b24..6415e84 100644
+index 8835cda..e53754c 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -238,7 +238,7 @@ static int mt7915_add_interface(struct ieee80211_hw *hw,
@@ -408,7 +417,7 @@
  		mvif->mt76.wmm_idx += 2;
  
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 63fb826..233411c 100644
+index 0d1bab1..05919e9 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -478,6 +478,11 @@ mt7915_mcu_rx_ext_event(struct mt7915_dev *dev, struct sk_buff *skb)
@@ -567,7 +576,7 @@
  	[AGG_PCR0]		= 0x040,
  	[AGG_ACR0]		= 0x054,
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 0eca040..1846e2f 100644
+index 136e89f..37abf56 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -304,11 +304,15 @@ struct mt7915_phy {
@@ -618,8 +627,8 @@
  void mt7915_mcu_exit(struct mt7915_dev *dev);
 +int mt7915_tm_txbf_status_read(struct mt7915_dev *dev, struct sk_buff *skb);
  void mt7915_mcu_wmm_pbc_work(struct work_struct *work);
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif);
  
- static inline u16 mt7915_wtbl_size(struct mt7915_dev *dev)
 diff --git a/mt7915/regs.h b/mt7915/regs.h
 index 8bb6a9f..1236da9 100644
 --- a/mt7915/regs.h
diff --git a/recipes-wifi/linux-mt76/files/patches/1011-wifi-mt76-testmode-add-ZWDFS-test-mode-support.patch b/recipes-wifi/linux-mt76/files/patches/1011-wifi-mt76-testmode-add-ZWDFS-test-mode-support.patch
index d80efec..b42e141 100644
--- a/recipes-wifi/linux-mt76/files/patches/1011-wifi-mt76-testmode-add-ZWDFS-test-mode-support.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1011-wifi-mt76-testmode-add-ZWDFS-test-mode-support.patch
@@ -1,7 +1,7 @@
-From b80b70aa0c7d3c1ecd2a1f7151c16660233464b2 Mon Sep 17 00:00:00 2001
+From 460f28c1cba4632a4bd046d0a93d1569f69acea0 Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Thu, 27 Oct 2022 17:42:07 +0800
-Subject: [PATCH 1011/1053] wifi: mt76: testmode: add ZWDFS test mode support
+Subject: [PATCH] wifi: mt76: testmode: add ZWDFS test mode support
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
@@ -18,7 +18,7 @@
  10 files changed, 508 insertions(+), 1 deletion(-)
 
 diff --git a/mt76.h b/mt76.h
-index 22d76bb..9320c52 100644
+index 20577af..53b0964 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -793,6 +793,15 @@ struct mt76_testmode_data {
@@ -38,7 +38,7 @@
  
  struct mt76_vif {
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index b75d340..69ca57a 100644
+index 6511060..9ac1c46 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1241,6 +1241,7 @@ enum {
@@ -49,8 +49,8 @@
  	MCU_EXT_CMD_RX_STAT = 0xa4,
  	MCU_EXT_CMD_SET_SPR = 0xa8,
  	MCU_EXT_CMD_GROUP_PRE_CAL_INFO = 0xab,
-@@ -1251,6 +1252,7 @@ enum {
- 	MCU_EXT_CMD_RX_STAT_USER_CTRL = 0xb3,
+@@ -1252,6 +1253,7 @@ enum {
+ 	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
  	MCU_EXT_CMD_CERT_CFG = 0xb7,
  	MCU_EXT_CMD_CSI_CTRL = 0xc2,
 +	MCU_EXT_CMD_IPI_HIST_SCAN = 0xc5,
@@ -58,7 +58,7 @@
  
  enum {
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index ad58e3b..573f1e8 100644
+index 5f3fec8..2025ef3 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -2759,6 +2759,7 @@ mt7915_mcu_background_chain_ctrl(struct mt7915_phy *phy,
@@ -69,11 +69,10 @@
  		req.band_idx = phy->mt76->band_idx;
  		req.scan_mode = 2;
  		break;
-@@ -4954,3 +4955,68 @@ int mt7915_mcu_set_amsdu_algo(struct mt7915_dev *dev, u16 wcid, u8 enable)
- 	return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(MEC_CTRL), &req, sizeof(req), true);
+@@ -4955,6 +4956,71 @@ int mt7915_mcu_set_amsdu_algo(struct mt7915_dev *dev, u16 wcid, u8 enable)
  }
  #endif
-+
+ 
 +int mt7915_mcu_ipi_hist_ctrl(struct mt7915_phy *phy, void *data, u8 cmd, bool wait_resp)
 +{
 +	struct mt7915_dev *dev = phy->dev;
@@ -138,6 +137,10 @@
 +
 +	return 0;
 +}
++
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif)
+ {
+ #define IP_DSCP_NUM	64
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
 index c791c7f..066246b 100644
 --- a/mt7915/mcu.h
@@ -196,7 +199,7 @@
  #define OFDMA_DL                       BIT(0)
  #define OFDMA_UL                       BIT(1)
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index dd2e80b..1644a46 100644
+index b716b57..ec33afd 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -293,6 +293,7 @@ struct mt7915_phy {
@@ -207,7 +210,7 @@
  
  	u8 stats_work_count;
  	struct list_head stats_list;
-@@ -767,6 +768,9 @@ int mt7915_vendor_amnt_sta_remove(struct mt7915_phy *phy,
+@@ -768,6 +769,9 @@ int mt7915_vendor_amnt_sta_remove(struct mt7915_phy *phy,
  				  struct ieee80211_sta *sta);
  #endif
  
diff --git a/recipes-wifi/linux-mt76/files/patches/1012-wifi-mt76-testmode-add-iBF-eBF-cal-and-cert-commands.patch b/recipes-wifi/linux-mt76/files/patches/1012-wifi-mt76-testmode-add-iBF-eBF-cal-and-cert-commands.patch
index e7fe869..289bbe4 100644
--- a/recipes-wifi/linux-mt76/files/patches/1012-wifi-mt76-testmode-add-iBF-eBF-cal-and-cert-commands.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1012-wifi-mt76-testmode-add-iBF-eBF-cal-and-cert-commands.patch
@@ -1,8 +1,8 @@
-From 4c178c7d253c546ed19f99e8de51423df9fed9de Mon Sep 17 00:00:00 2001
+From 2a34bd2105e5021dacaf30c90bb6816f107cabd4 Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Thu, 15 Dec 2022 19:45:18 +0800
-Subject: [PATCH 1012/1053] wifi: mt76: testmode: add iBF/eBF cal and cert
- commands with golden
+Subject: [PATCH] wifi: mt76: testmode: add iBF/eBF cal and cert commands with
+ golden
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
@@ -25,7 +25,7 @@
  16 files changed, 859 insertions(+), 325 deletions(-)
 
 diff --git a/mt76.h b/mt76.h
-index 9320c52..8025e04 100644
+index 53b0964..1455144 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -755,6 +755,7 @@ struct mt76_testmode_data {
@@ -84,7 +84,7 @@
  	txwi[6] |= cpu_to_le32(val);
  #endif
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 6415e84..c6eca6f 100644
+index e53754c..69477f1 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -205,46 +205,37 @@ static void mt7915_init_bitrate_mask(struct ieee80211_vif *vif)
@@ -175,7 +175,7 @@
  
  	return ret;
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 573f1e8..9dd4b77 100644
+index 2025ef3..f5042ae 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -199,6 +199,7 @@ mt7915_mcu_send_message(struct mt76_dev *mdev, struct sk_buff *skb,
@@ -468,7 +468,7 @@
  	[AGG_AALCR0]		= 0x028,
  	[AGG_AWSCR0]		= 0x030,
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 1644a46..b06e5ca 100644
+index ec33afd..700efaf 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -312,7 +312,6 @@ struct mt7915_phy {
@@ -496,13 +496,14 @@
  void mt7915_reset(struct mt7915_dev *dev);
  int mt7915_run(struct ieee80211_hw *hw);
  int mt7915_mcu_init(struct mt7915_dev *dev);
-@@ -654,10 +654,12 @@ int mt7915_mcu_fw_log_2_host(struct mt7915_dev *dev, u8 type, u8 ctrl);
+@@ -654,11 +654,13 @@ int mt7915_mcu_fw_log_2_host(struct mt7915_dev *dev, u8 type, u8 ctrl);
  int mt7915_mcu_fw_dbg_ctrl(struct mt7915_dev *dev, u32 module, u8 level);
  void mt7915_mcu_rx_event(struct mt7915_dev *dev, struct sk_buff *skb);
  void mt7915_mcu_exit(struct mt7915_dev *dev);
 -int mt7915_tm_txbf_status_read(struct mt7915_dev *dev, struct sk_buff *skb);
 -void mt7915_tm_rf_test_event(struct mt7915_dev *dev, struct sk_buff *skb);
  void mt7915_mcu_wmm_pbc_work(struct work_struct *work);
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif);
  
 +#ifdef CONFIG_NL80211_TESTMODE
 +void mt7915_tm_rf_test_event(struct mt7915_dev *dev, struct sk_buff *skb);
@@ -511,7 +512,7 @@
  static inline u16 mt7915_wtbl_size(struct mt7915_dev *dev)
  {
  	return is_mt7915(&dev->mt76) ? MT7915_WTBL_SIZE : MT7916_WTBL_SIZE;
-@@ -791,4 +793,10 @@ enum {
+@@ -792,4 +794,10 @@ enum {
  
  #endif
  
@@ -523,7 +524,7 @@
 +
  #endif
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
-index 1ed40ba..30c5f68 100644
+index 84f8fae..9e490ad 100644
 --- a/mt7915/mtk_debugfs.c
 +++ b/mt7915/mtk_debugfs.c
 @@ -2888,6 +2888,36 @@ mt7915_txpower_level_set(void *data, u64 val)
diff --git a/recipes-wifi/linux-mt76/files/patches/1015-wifi-mt76-mt7915-add-vendor-subcmd-EDCCA-ctrl-enable.patch b/recipes-wifi/linux-mt76/files/patches/1015-wifi-mt76-mt7915-add-vendor-subcmd-EDCCA-ctrl-enable.patch
index 91e392f..14f77a5 100644
--- a/recipes-wifi/linux-mt76/files/patches/1015-wifi-mt76-mt7915-add-vendor-subcmd-EDCCA-ctrl-enable.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1015-wifi-mt76-mt7915-add-vendor-subcmd-EDCCA-ctrl-enable.patch
@@ -1,33 +1,33 @@
-From ef07367ab6f484383d0616953254276b31719a21 Mon Sep 17 00:00:00 2001
+From 7f9793b9c724014e9993091b47566cd9bf3cec06 Mon Sep 17 00:00:00 2001
 From: Howard Hsu <howard-yh.hsu@mediatek.com>
 Date: Fri, 24 Jun 2022 11:15:45 +0800
-Subject: [PATCH 1015/1053] wifi: mt76: mt7915: add vendor subcmd EDCCA ctrl
+Subject: [PATCH] wifi: mt76: mt7915: add vendor subcmd EDCCA ctrl
  enable/threshold/compensation
 
 ---
  mt76_connac_mcu.h |   1 +
  mt7915/main.c     |   3 ++
- mt7915/mcu.c      |  73 +++++++++++++++++++++++++
+ mt7915/mcu.c      |  72 +++++++++++++++++++++++++
  mt7915/mcu.h      |  21 ++++++++
  mt7915/mt7915.h   |   3 +-
  mt7915/vendor.c   | 132 ++++++++++++++++++++++++++++++++++++++++++++++
  mt7915/vendor.h   |  33 ++++++++++++
- 7 files changed, 265 insertions(+), 1 deletion(-)
+ 7 files changed, 264 insertions(+), 1 deletion(-)
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 69ca57a..b2b7095 100644
+index 9ac1c46..012f9be 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
-@@ -1251,6 +1251,7 @@ enum {
- 	MCU_EXT_CMD_SMESH_CTRL = 0xae,
+@@ -1252,6 +1252,7 @@ enum {
  	MCU_EXT_CMD_RX_STAT_USER_CTRL = 0xb3,
+ 	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
  	MCU_EXT_CMD_CERT_CFG = 0xb7,
 +	MCU_EXT_CMD_EDCCA = 0xba,
  	MCU_EXT_CMD_CSI_CTRL = 0xc2,
  	MCU_EXT_CMD_IPI_HIST_SCAN = 0xc5,
  };
 diff --git a/mt7915/main.c b/mt7915/main.c
-index c6eca6f..9fafa16 100644
+index 69477f1..d0ba4b7 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -479,6 +479,9 @@ static int mt7915_config(struct ieee80211_hw *hw, u32 changed)
@@ -41,14 +41,13 @@
  		ret = mt7915_set_channel(phy);
  		if (ret)
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 9dd4b77..1e84236 100644
+index f5042ae..20395e9 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
-@@ -5037,3 +5037,76 @@ int mt7915_mcu_ipi_hist_scan(struct mt7915_phy *phy, void *data, u8 mode, bool w
- 
+@@ -5038,6 +5038,78 @@ int mt7915_mcu_ipi_hist_scan(struct mt7915_phy *phy, void *data, u8 mode, bool w
  	return 0;
  }
-+
+ 
 +int mt7915_mcu_set_edcca(struct mt7915_phy *phy, int mode, u8 *value, s8 compensation)
 +{
 +	static const u8 ch_band[] = {
@@ -88,7 +87,6 @@
 +	return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(EDCCA), &req, sizeof(req), true);
 +}
 +
-+
 +int mt7915_mcu_get_edcca(struct mt7915_phy *phy, u8 mode, s8 *value)
 +{
 +	struct mt7915_dev *dev = phy->dev;
@@ -121,6 +119,10 @@
 +
 +	return 0;
 +}
++
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif)
+ {
+ #define IP_DSCP_NUM	64
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
 index de17c57..1682c11 100644
 --- a/mt7915/mcu.h
@@ -154,10 +156,10 @@
  
  #endif
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index d21b843..000751b 100644
+index d4a3467..8da1d1b 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
-@@ -770,7 +770,8 @@ void mt7915_vendor_amnt_fill_rx(struct mt7915_phy *phy, struct sk_buff *skb);
+@@ -771,7 +771,8 @@ void mt7915_vendor_amnt_fill_rx(struct mt7915_phy *phy, struct sk_buff *skb);
  int mt7915_vendor_amnt_sta_remove(struct mt7915_phy *phy,
  				  struct ieee80211_sta *sta);
  #endif
diff --git a/recipes-wifi/linux-mt76/files/patches/1018-wifi-mt76-mt7915-add-vendor-subcmd-three-wire-PTA-ct.patch b/recipes-wifi/linux-mt76/files/patches/1018-wifi-mt76-mt7915-add-vendor-subcmd-three-wire-PTA-ct.patch
index 14378c2..6718ab8 100644
--- a/recipes-wifi/linux-mt76/files/patches/1018-wifi-mt76-mt7915-add-vendor-subcmd-three-wire-PTA-ct.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1018-wifi-mt76-mt7915-add-vendor-subcmd-three-wire-PTA-ct.patch
@@ -1,8 +1,7 @@
-From 385b5303f5e3142d87bdb6a2e5c55ccb7f2fdd9c Mon Sep 17 00:00:00 2001
+From 35c3c602288b8c1a11b9c1ca4e1b0182d451d15e Mon Sep 17 00:00:00 2001
 From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 Date: Fri, 28 Oct 2022 10:15:56 +0800
-Subject: [PATCH 1018/1053] wifi: mt76: mt7915: add vendor subcmd three wire
- (PTA) ctrl
+Subject: [PATCH] wifi: mt76: mt7915: add vendor subcmd three wire (PTA) ctrl
 
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
@@ -15,20 +14,20 @@
  6 files changed, 111 insertions(+), 29 deletions(-)
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index b2b7095..109462a 100644
+index 012f9be..7e12c05 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
-@@ -1250,7 +1250,7 @@ enum {
- 	/* for vendor csi and air monitor */
+@@ -1251,7 +1251,7 @@ enum {
  	MCU_EXT_CMD_SMESH_CTRL = 0xae,
  	MCU_EXT_CMD_RX_STAT_USER_CTRL = 0xb3,
+ 	MCU_EXT_CMD_SET_QOS_MAP = 0xb4,
 -	MCU_EXT_CMD_CERT_CFG = 0xb7,
 +	MCU_EXT_CMD_SET_CFG = 0xb7,
  	MCU_EXT_CMD_EDCCA = 0xba,
  	MCU_EXT_CMD_CSI_CTRL = 0xc2,
  	MCU_EXT_CMD_IPI_HIST_SCAN = 0xc5,
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 1e84236..072185f 100644
+index 20395e9..8f5fcbb 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -4736,37 +4736,33 @@ void mt7915_mcu_set_dynalgo(struct mt7915_phy *phy, u8 enable)
@@ -133,10 +132,10 @@
  #define OFDMA_DL                       BIT(0)
  #define OFDMA_UL                       BIT(1)
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index a06a46e..00d2b35 100644
+index 27b007b..f9ca9d5 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
-@@ -764,6 +764,7 @@ void mt7915_mcu_set_mimo(struct mt7915_phy *phy, u8 direction);
+@@ -765,6 +765,7 @@ void mt7915_mcu_set_mimo(struct mt7915_phy *phy, u8 direction);
  void mt7915_mcu_set_dynalgo(struct mt7915_phy *phy, u8 enable);
  int mt7915_mcu_set_mu_edca(struct mt7915_phy *phy, u8 val);
  void mt7915_mcu_set_cert(struct mt7915_phy *phy, u8 type);
diff --git a/recipes-wifi/linux-mt76/files/patches/1026-wifi-mt76-mt7915-disable-SW-ACI-by-default.patch b/recipes-wifi/linux-mt76/files/patches/1026-wifi-mt76-mt7915-disable-SW-ACI-by-default.patch
index 402eab4..a6b71d5 100644
--- a/recipes-wifi/linux-mt76/files/patches/1026-wifi-mt76-mt7915-disable-SW-ACI-by-default.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1026-wifi-mt76-mt7915-disable-SW-ACI-by-default.patch
@@ -1,7 +1,7 @@
-From 4d3d3743e0e97b65c132cda36b4af0532a102607 Mon Sep 17 00:00:00 2001
+From 0df14b3d2578681009ca9be604e98bb94ee1186a Mon Sep 17 00:00:00 2001
 From: Howard Hsu <howard-yh.hsu@mediatek.com>
 Date: Fri, 24 Feb 2023 16:29:42 +0800
-Subject: [PATCH 1026/1053] wifi: mt76: mt7915: disable SW-ACI by default
+Subject: [PATCH] wifi: mt76: mt7915: disable SW-ACI by default
 
 Support to enable/disable SW-ACI by module parameter "sw_aci_enable".
 SW-ACI feature is disable by default.
@@ -13,7 +13,7 @@
  4 files changed, 29 insertions(+), 9 deletions(-)
 
 diff --git a/mt7915/main.c b/mt7915/main.c
-index da7a87b..69c4a41 100644
+index b80d6fd..2ff7667 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -8,6 +8,10 @@
@@ -39,14 +39,13 @@
  
  	if (phy != &dev->phy) {
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 8e9b801..45b0907 100644
+index 5534603..e95a5d7 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
-@@ -5223,3 +5223,18 @@ int mt7915_mcu_get_edcca(struct mt7915_phy *phy, u8 mode, s8 *value)
- 
+@@ -5223,6 +5223,21 @@ int mt7915_mcu_get_edcca(struct mt7915_phy *phy, u8 mode, s8 *value)
  	return 0;
  }
-+
+ 
 +int mt7915_mcu_sw_aci_set(struct mt7915_dev *dev, bool val)
 +{
 +#define SWLNA_ENABLE 6
@@ -61,11 +60,15 @@
 +	return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(SWLNA_ACI_CTRL), &req,
 +				 sizeof(req), NULL);
 +}
++
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif)
+ {
+ #define IP_DSCP_NUM	64
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index fe7c211..44dd0f4 100644
+index 9e7183c..c8b697c 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
-@@ -782,6 +782,7 @@ int mt7915_vendor_amnt_sta_remove(struct mt7915_phy *phy,
+@@ -783,6 +783,7 @@ int mt7915_vendor_amnt_sta_remove(struct mt7915_phy *phy,
  #endif
  int mt7915_mcu_set_edcca(struct mt7915_phy *phy, int mode, u8 *value, s8 compensation);
  int mt7915_mcu_get_edcca(struct mt7915_phy *phy, u8 mode, s8 *value);
@@ -74,7 +77,7 @@
  int mt7915_mcu_ipi_hist_scan(struct mt7915_phy *phy, void *data, u8 mode, bool wait_resp);
  
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
-index a433e67..f00ac10 100644
+index 8f2f496..ad7abda 100644
 --- a/mt7915/mtk_debugfs.c
 +++ b/mt7915/mtk_debugfs.c
 @@ -3773,16 +3773,12 @@ static int mt7915_show_eeprom_mode(struct seq_file *s, void *data)
diff --git a/recipes-wifi/linux-mt76/files/patches/1041-wifi-mt76-mt7915-support-scs-feature.patch b/recipes-wifi/linux-mt76/files/patches/1041-wifi-mt76-mt7915-support-scs-feature.patch
index 263dbd8..aa6ba21 100644
--- a/recipes-wifi/linux-mt76/files/patches/1041-wifi-mt76-mt7915-support-scs-feature.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1041-wifi-mt76-mt7915-support-scs-feature.patch
@@ -1,7 +1,7 @@
-From d1b12ab78d487e08945ec6a92b744af342505fd2 Mon Sep 17 00:00:00 2001
+From 9c8dcebc80801b77b23b0a2af28a3d51662c164f Mon Sep 17 00:00:00 2001
 From: Howard Hsu <howard-yh.hsu@mediatek.com>
 Date: Wed, 6 Dec 2023 08:53:03 +0800
-Subject: [PATCH 1041/1053] wifi: mt76: mt7915: support scs feature
+Subject: [PATCH] wifi: mt76: mt7915: support scs feature
 
 Add support scs feature for connac2 codebase. This commit includes three
 parts.
@@ -29,7 +29,7 @@
  9 files changed, 188 insertions(+)
 
 diff --git a/mt76.h b/mt76.h
-index 6f78c07..c011812 100644
+index cff22f5..7ffba7d 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -311,6 +311,7 @@ struct mt76_sta_stats {
@@ -49,7 +49,7 @@
  
  enum mt76_wcid_flags {
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index c6a43dd..1bc32da 100644
+index 94fcf32..247b520 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1236,6 +1236,7 @@ enum {
@@ -61,10 +61,10 @@
  	MCU_EXT_CMD_FW_DBG_CTRL = 0x95,
  	MCU_EXT_CMD_OFFCH_SCAN_CTRL = 0x9a,
 diff --git a/mt7915/init.c b/mt7915/init.c
-index b2e613c..373f4f5 100644
+index 545afe7..074f247 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
-@@ -1247,6 +1247,7 @@ int mt7915_register_device(struct mt7915_dev *dev)
+@@ -1248,6 +1248,7 @@ int mt7915_register_device(struct mt7915_dev *dev)
  	spin_lock_init(&dev->phy.stats_lock);
  	INIT_WORK(&dev->rc_work, mt7915_mac_sta_rc_work);
  	INIT_DELAYED_WORK(&dev->mphy.mac_work, mt7915_mac_work);
@@ -116,7 +116,7 @@
  		 wiphy_name(dev->mt76.hw->wiphy));
  }
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 69c4a41..69fcf4c 100644
+index 2ff7667..2750e60 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -89,12 +89,24 @@ int mt7915_run(struct ieee80211_hw *hw)
@@ -153,14 +153,13 @@
  		mt7915_mcu_set_mac(dev, dev->phy.mt76->band_idx, false, false);
  	}
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 4b5fb53..5e1fd3b 100644
+index 1af6dac..aa3f9ad 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
-@@ -5239,3 +5239,121 @@ int mt7915_mcu_sw_aci_set(struct mt7915_dev *dev, bool val)
- 	return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(SWLNA_ACI_CTRL), &req,
+@@ -5239,6 +5239,124 @@ int mt7915_mcu_sw_aci_set(struct mt7915_dev *dev, bool val)
  				 sizeof(req), NULL);
  }
-+
+ 
 +int mt7915_mcu_set_scs_en(struct mt7915_phy *phy, u8 enable)
 +{
 +	struct mt7915_dev *dev = phy->dev;
@@ -278,6 +277,10 @@
 +	if (scs_enable_flag)
 +		ieee80211_queue_delayed_work(mt76_hw(dev), &dev->scs_work, HZ);
 +}
++
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif)
+ {
+ #define IP_DSCP_NUM	64
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
 index 3089fb6..742a785 100644
 --- a/mt7915/mcu.h
@@ -292,7 +295,7 @@
 +};
  #endif
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index c6150c8..3c04936 100644
+index 03ec7e2..3daec29 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -270,6 +270,15 @@ struct mt7915_air_monitor_ctrl {
@@ -328,7 +331,7 @@
  	bool wmm_pbc_enable;
  	struct work_struct wmm_pbc_work;
  	u32 adie_type;
-@@ -802,6 +814,8 @@ int mt7915_mcu_sw_aci_set(struct mt7915_dev *dev, bool val);
+@@ -803,6 +815,8 @@ int mt7915_mcu_sw_aci_set(struct mt7915_dev *dev, bool val);
  int mt7915_mcu_ipi_hist_ctrl(struct mt7915_phy *phy, void *data, u8 cmd, bool wait_resp);
  int mt7915_mcu_ipi_hist_scan(struct mt7915_phy *phy, void *data, u8 mode, bool wait_resp);
  int mt7915_mcu_enable_obss_spr(struct mt7915_phy *phy, u8 action, u8 val);
@@ -338,7 +341,7 @@
  #ifdef MTK_DEBUG
  int mt7915_mtk_init_debugfs(struct mt7915_phy *phy, struct dentry *dir);
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
-index 2b59e35..081cf46 100644
+index dad5ed7..0953223 100644
 --- a/mt7915/mtk_debugfs.c
 +++ b/mt7915/mtk_debugfs.c
 @@ -3820,6 +3820,29 @@ mt7915_sr_enable_set(void *data, u64 val)
diff --git a/recipes-wifi/linux-mt76/files/patches/1042-wifi-mt76-mt7915-support-thermal-recal-debug-commnad.patch b/recipes-wifi/linux-mt76/files/patches/1042-wifi-mt76-mt7915-support-thermal-recal-debug-commnad.patch
index 2a5892a..7358d27 100644
--- a/recipes-wifi/linux-mt76/files/patches/1042-wifi-mt76-mt7915-support-thermal-recal-debug-commnad.patch
+++ b/recipes-wifi/linux-mt76/files/patches/1042-wifi-mt76-mt7915-support-thermal-recal-debug-commnad.patch
@@ -1,8 +1,7 @@
-From 4cd1771d44ebb238474b85c09d0ef7a8f77c477f Mon Sep 17 00:00:00 2001
+From e9f5c9f345503c5653d1a5fd5bedd69cd1bc48f1 Mon Sep 17 00:00:00 2001
 From: Howard Hsu <howard-yh.hsu@mediatek.com>
 Date: Thu, 21 Dec 2023 20:35:36 +0800
-Subject: [PATCH 1042/1053] wifi: mt76: mt7915: support thermal recal debug
- commnad
+Subject: [PATCH] wifi: mt76: mt7915: support thermal recal debug commnad
 
 Add thermal recal debug command:
 $ echo val > debugfs/thermal_recal
@@ -21,7 +20,7 @@
  4 files changed, 35 insertions(+)
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 1bc32da..cbe8da5 100644
+index 247b520..e445046 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1232,6 +1232,7 @@ enum {
@@ -33,14 +32,13 @@
  	MCU_EXT_CMD_SET_RDD_PATTERN = 0x7d,
  	MCU_EXT_CMD_MWDS_SUPPORT = 0x80,
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 5e1fd3b..c5f60c0 100644
+index aa3f9ad..2417251 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
-@@ -5357,3 +5357,18 @@ void mt7915_mcu_scs_sta_poll(struct work_struct *work)
- 	if (scs_enable_flag)
+@@ -5357,6 +5357,21 @@ void mt7915_mcu_scs_sta_poll(struct work_struct *work)
  		ieee80211_queue_delayed_work(mt76_hw(dev), &dev->scs_work, HZ);
  }
-+
+ 
 +int mt7915_mcu_thermal_debug(struct mt7915_dev *dev, u8 mode, u8 action)
 +{
 +	struct {
@@ -55,11 +53,15 @@
 +	return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(THERMAL_DEBUG), &req,
 +				 sizeof(req), true);
 +}
++
+ int mt7915_mcu_set_qos_map(struct mt7915_dev *dev, struct ieee80211_vif *vif)
+ {
+ #define IP_DSCP_NUM	64
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 3c04936..1b2f584 100644
+index 3daec29..9b52ec4 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
-@@ -816,6 +816,7 @@ int mt7915_mcu_ipi_hist_scan(struct mt7915_phy *phy, void *data, u8 mode, bool w
+@@ -817,6 +817,7 @@ int mt7915_mcu_ipi_hist_scan(struct mt7915_phy *phy, void *data, u8 mode, bool w
  int mt7915_mcu_enable_obss_spr(struct mt7915_phy *phy, u8 action, u8 val);
  int mt7915_mcu_set_scs_en(struct mt7915_phy *phy, u8 enable);
  void mt7915_mcu_scs_sta_poll(struct work_struct *work);
@@ -68,7 +70,7 @@
  #ifdef MTK_DEBUG
  int mt7915_mtk_init_debugfs(struct mt7915_phy *phy, struct dentry *dir);
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
-index 081cf46..2d6e166 100644
+index 0953223..53294c1 100644
 --- a/mt7915/mtk_debugfs.c
 +++ b/mt7915/mtk_debugfs.c
 @@ -3843,6 +3843,22 @@ mt7915_scs_enable_set(void *data, u64 val)
diff --git a/recipes-wifi/linux-mt76/files/patches/patches.inc b/recipes-wifi/linux-mt76/files/patches/patches.inc
index eca405a..a8fea12 100644
--- a/recipes-wifi/linux-mt76/files/patches/patches.inc
+++ b/recipes-wifi/linux-mt76/files/patches/patches.inc
@@ -17,6 +17,7 @@
     file://0015-wifi-mt76-mt7915-add-support-for-IEEE-802.11-fragmen.patch \
     file://0016-wifi-mt76-mt7915-add-dummy-HW-offload-of-IEEE-802.11.patch \
     file://0016-wifi-mt76-mt7915-fix-rx-filter-setting-for-bfee-func.patch \
+    file://0017-wifi-mt76-mt7915-fix-inconsistent-QoS-mapping-betwee.patch \
     file://0999-wifi-mt76-mt7915-build-pass-for-Linux-Kernel-5.4-fix.patch \
     file://1000-wifi-mt76-mt7915-add-mtk-internal-debug-tools-for-mt.patch \
     file://1001-wifi-mt76-mt7915-csi-implement-csi-support.patch \
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch
index 55286b8..b149bda 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0031-mtk-hostapd-add-support-for-runtime-set-in-band-disc.patch
@@ -16,7 +16,6 @@
 The mac80211 layer already has a new variable "update",
 so the redundant variable "disable" has been removed.
 
-CR-ID: WCNCR00240597
 Signed-off-by: MeiChia Chiu <MeiChia.Chiu@mediatek.com>
 ---
  hostapd/ctrl_iface.c         | 66 ++++++++++++++++++++++++++++++++++++
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch
index ade8550..03513eb 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0037-mtk-hostapd-Do-not-include-HE-capab-IE-if-associated.patch
@@ -8,9 +8,7 @@
 NULL check is necessary before access the 'sta'.
 Only one such check was missed in this function, and this patch fixs it.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I028b7779acfbce5292a60c9f800a83c57c999943
 ---
  src/ap/ieee802_11.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch
index cfb3f3d..6a9f126 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0075-hostapd-mtk-ACS-remove-chan-freq-list-check-when-sca.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 075/104] hostapd: mtk: ACS: remove chan/freq list check when
  scan request and factor calculation
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/acs.c | 12 ------------
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch
index 3cf864d..4fa5b6f 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0086-mtk-hostapd-add-mld_primary-option.patch
@@ -3,7 +3,6 @@
 Date: Tue, 26 Dec 2023 08:05:41 +0800
 Subject: [PATCH 086/104] mtk: hostapd: add mld_primary option
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  hostapd/config_file.c | 2 ++
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch
index 9634a0c..ac847f5 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0087-mtk-wpa_supplicant-add-mld_allowed_phy-configuration.patch
@@ -9,9 +9,7 @@
 Note that setting 'mld_allowed_phy' to 0 makes no phy allowed for MLO.
 In other word, the STA becomes a legacy STA.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I5ad15d3748c6fef476aa067cc4901157a96f8804
 ---
  wpa_supplicant/config.c      |  1 +
  wpa_supplicant/config.h      |  1 +
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch
index a04abae..1ba9e75 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0088-mtk-hostapd-support-band_idx-option-for-set_mu-get_m.patch
@@ -9,9 +9,7 @@
 1. get_mu: $ hostapd_cli -i <intf> get_mu <band_idx>
 2. set_mu: $ hostapd_cli -i <intf> set_mu <mu_onff>:<band_idx>
 
-CR-Id: WCNCR00240772
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
-Change-Id: I58635e588225a8876a77346c417ec281f9b76e4c
 ---
  hostapd/config_file.c        |  9 +++++
  hostapd/ctrl_iface.c         | 78 ++++++++++++++++++++++++++++--------
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch
index fab4ef8..cbf05f5 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0089-mtk-hostapd-Handle-DFS-radar-detection-in-MLO.patch
@@ -9,13 +9,10 @@
 3. Only flush the old stations for the first BSS; otherwise, after DFS CAC
 stations would be flushed again.
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
-Change-Id: Idbeba92aeadd8b34f61202e4c3df52bae19d9b73
 
 Add background radar handling
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  src/ap/ap_drv_ops.c                |  9 +++++++++
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch
index 8f3096b..129f54b 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0090-mtk-hostapd-add-link-id-to-hostapd-cli-chan-switch.patch
@@ -5,7 +5,6 @@
 
 temporary workaround for mlo channel switch
 
-CR-Id: WCNCR00274293
 Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
 ---
  hostapd/ctrl_iface.c   | 3 +--
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch
index 1ce57ff..4ee23cd 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0091-mtk-wifi-hostapd-add-wds-mlo-support.patch
@@ -6,9 +6,7 @@
 1. Add mld_assoc_sta to get the primary sta_info.
 2. Find hapd according to mld address.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: Ic2d67c0623299dfc00021925296c54e25fe86959
 ---
  src/ap/drv_callbacks.c       |  3 ++-
  src/ap/ieee802_11.c          |  8 ++++++++
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch
index 607e260..0cff032 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0093-mtk-hostapd-prevent-getting-non-MLD-STA-for-other-li.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 093/104] mtk: hostapd: prevent getting non-MLD STA for other
  links
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/sta_info.c | 3 ++-
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch
index a5e6812..c276024 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0094-mtk-hostapd-AP-MLD-specify-link-id-for-unicast-DEAUT.patch
@@ -11,9 +11,7 @@
 (The original gerrit somehow disappears, so I commit it again)
 (https://gerrit.mediatek.inc/c/gateway/WiFi7/mac80211/hostapd/+/8715613)
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I938f0fb80862074b95fc33b3c4f566f92ae21de1
 ---
  src/ap/ap_drv_ops.c | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch
index 90da0fd..e31a05c 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0095-mtk-hostapd-using-MLD-addr-as-SA-BSSID-for-broadcast.patch
@@ -4,9 +4,7 @@
 Subject: [PATCH 095/104] mtk: hostapd: using MLD addr as SA/BSSID for
  broadcast DEAUTH
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
-Change-Id: I4ba7763a0f5c5a16174cf80393b5f1588a9ce42c
 ---
  src/ap/ap_drv_ops.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch
index 6fd7d62..f311581 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0096-mtk-hostapd-support-vht-bfee-sts-can-be-up-to-0x4.patch
@@ -6,9 +6,7 @@
 Without this commit, the maximum vht bfee sts can only be 0x3. This commit
 support to read BF-ANTENNA-5 to set vht bfee sts capability as 4.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
-Change-Id: I3ec1dc28149961bbb01c31a12cd4acd0fd77c2f4
 ---
  hostapd/config_file.c | 3 +++
  1 file changed, 3 insertions(+)
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch
index 061f038..9c4c4e5 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0098-mtk-hostapd-add-connac3-csi-control-interface.patch
@@ -7,8 +7,6 @@
 2. add csi set/dump flow
 3. add csi raw data to json
 
-CR-Id: WCNCR00364748
-Change-Id: If16d4b39ebb7942e47ed4bf4459589d6191983ac
 Signed-off-by: mtk20656 <chank.chen@mediatek.com>
 ---
  hostapd/ctrl_iface.c              | 193 ++++++++++++++++++++++++
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch
index a63f81a..c27e065 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0099-fixup-mtk-wifi-hostapd-add-wds-mlo-support.patch
@@ -12,9 +12,7 @@
 Without this patch, wds mode cannot work and the AP would not be
 aware that station is using 4 address.
 
-CR-Id: WCNCR00240772
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
-Change-Id: I9661226ed0847abb1de0d8c808daf3ad8cd5dc99
 ---
  src/ap/drv_callbacks.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch
index e688a56..7e2c70b 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0100-mtk-hostapd-MLD-find-partner-links-by-BSSID-and-SSID.patch
@@ -4,7 +4,6 @@
 Subject: [PATCH 100/104] mtk: hostapd: MLD: find partner links by BSSID and
  SSID
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  wpa_supplicant/bss.c |  8 ++++++--
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch
index 27f986a..08814ed 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0101-mtk-hostapd-MLD-hostapd-add-support-for-basic-MLD-Ex.patch
@@ -12,7 +12,6 @@
 
 Advanced support includes BW cynchronization and channel switch.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/ucode.c         | 52 ++++++++++++++++++++++++++++++++++++++----
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch
index 8881b72..c958591 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch
@@ -5,8 +5,6 @@
 
 Add band_idx attribute in pp cmd for vendor cmd under mld setting.
 
-CR-Id: WCNCR00259302
-Change-Id: I3c4c7e9dff5eaa2ff48537dc0c5398006a305713
 ---
  hostapd/config_file.c        |  6 ++--
  hostapd/ctrl_iface.c         | 69 +++++++++++++++++++++++++-----------
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch
index 9f5346e..cca2e9a 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch
@@ -19,9 +19,7 @@
 Note that in NL80211_CMD_NEW_BEACON, we also set beacon interval to 0,
 which helps to bypass some mac80211 beacon active checks, e.g., during ACS.
 
-CR-Id: WCNCR00238098
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
-Change-Id: I99320f7802041dc7d8e780041bb686ce3700c0b6
 ---
  hostapd/config_file.c |  2 ++
  src/ap/ap_config.h    |  2 ++
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch
index 95be18f..e1c0274 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch
@@ -7,7 +7,6 @@
 This function returns ture only if all links fromt all MLD APs are
 ready.
 
-CR-Id: WCNCR00289305
 Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
 ---
  src/ap/ucode.c | 18 ++++++++++++++++++
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0105-mtk-hostapd-free-station-when-hapd-deinit.patch b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0105-mtk-hostapd-free-station-when-hapd-deinit.patch
new file mode 100644
index 0000000..81b2015
--- /dev/null
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/0105-mtk-hostapd-free-station-when-hapd-deinit.patch
@@ -0,0 +1,43 @@
+From 95dcf88b68837221ad937fe7c675b169c8034384 Mon Sep 17 00:00:00 2001
+From: Peter Chiu <chui-hao.chiu@mediatek.com>
+Date: Mon, 22 Apr 2024 08:40:18 +0800
+Subject: [PATCH] mtk: hostapd: free station when hapd deinit
+
+Free all stations in the same MLD when a bss is deinit.
+Without this patch, the AP_VLAN interface may be free after
+stop ap and leads to kernel crash.
+
+Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
+---
+ src/ap/hostapd.c | 14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c
+index c31e0badd..62943c561 100644
+--- a/src/ap/hostapd.c
++++ b/src/ap/hostapd.c
+@@ -842,7 +842,21 @@ static int hostapd_flush_old_stations(struct hostapd_data *hapd, u16 reason)
+ 
+ void hostapd_bss_deinit_no_free(struct hostapd_data *hapd)
+ {
++#ifdef CONFIG_IEEE80211BE
++	struct hostapd_data *link;
++
++	/* FIXME: free all stations to remvoe AP_VLAN interface. Allocate */
++	/* per-link structures for AP_VLAN in mac80211 and only remove single */
++	/* link here. */
++	if (hostapd_is_mld_ap(hapd)) {
++		for_each_mld_link(link, hapd)
++			hostapd_free_stas(link);
++	} else {
++		hostapd_free_stas(hapd);
++	}
++#else
+ 	hostapd_free_stas(hapd);
++#endif
+ 	hostapd_flush_old_stations(hapd, WLAN_REASON_DEAUTH_LEAVING);
+ #ifdef CONFIG_WEP
+ 	hostapd_clear_wep(hapd);
+-- 
+2.18.0
+
diff --git a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/patches.inc b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/patches.inc
index e7987dd..d61727b 100644
--- a/recipes-wifi/wpa-supplicant/files/patches-2.10.3/patches.inc
+++ b/recipes-wifi/wpa-supplicant/files/patches-2.10.3/patches.inc
@@ -103,4 +103,5 @@
     file://0102-mtk-hostapd-Refactor-static-PP-and-mld-support.patch \
     file://0103-mtk-hostapd-make-sure-all-links-are-set-before-enabl.patch \
     file://0104-mtk-hostapd-ucode-add-is_mld_finished-check.patch \
+    file://0105-mtk-hostapd-free-station-when-hapd-deinit.patch \
     "