diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0001-mt76-mt7915-rework-testmode-init-registers.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0001-mt76-mt7915-rework-testmode-init-registers.patch
index 94b6063..d069a4a 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0001-mt76-mt7915-rework-testmode-init-registers.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0001-mt76-mt7915-rework-testmode-init-registers.patch
@@ -1,16 +1,16 @@
-From 5a498af3e4f021f1554c7ffa57272aa89dcdad14 Mon Sep 17 00:00:00 2001
+From 2692efbe9806361dd71197bdbe3f30ccfcffdb70 Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Mon, 6 Jun 2022 19:46:26 +0800
-Subject: [PATCH 01/11] mt76: mt7915: rework testmode init registers
+Subject: [PATCH 01/12] mt76: mt7915: rework testmode init registers
 
 ---
- .../net/wireless/mediatek/mt76/mt7915/mmio.c  |  2 +
- .../net/wireless/mediatek/mt76/mt7915/regs.h  | 16 +++++-
- .../wireless/mediatek/mt76/mt7915/testmode.c  | 52 ++++++++++++++-----
+ mt7915/mmio.c     |  2 ++
+ mt7915/regs.h     | 16 +++++++++++++--
+ mt7915/testmode.c | 52 ++++++++++++++++++++++++++++++++++-------------
  3 files changed, 54 insertions(+), 16 deletions(-)
 
 diff --git a/mt7915/mmio.c b/mt7915/mmio.c
-index c2646d24..a8e3810e 100644
+index c2646d2..a8e3810 100644
 --- a/mt7915/mmio.c
 +++ b/mt7915/mmio.c
 @@ -59,6 +59,7 @@ static const u32 mt7986_reg[] = {
@@ -30,7 +30,7 @@
  	[TMAC_ODTR]		= 0x0cc,
  	[TMAC_ATCR]		= 0x00c,
 diff --git a/mt7915/regs.h b/mt7915/regs.h
-index 77fd448b..c7c9e411 100644
+index 77fd448..c7c9e41 100644
 --- a/mt7915/regs.h
 +++ b/mt7915/regs.h
 @@ -36,6 +36,7 @@ enum reg_rev {
@@ -78,7 +78,7 @@
  #define MT_AGG_ACR0(_band)		MT_WF_AGG(_band, __OFFS(AGG_ACR0))
  #define MT_AGG_ACR_CFEND_RATE		GENMASK(13, 0)
 diff --git a/mt7915/testmode.c b/mt7915/testmode.c
-index 0f5c1e5b..20c593d0 100644
+index 0f5c1e5..20c593d 100644
 --- a/mt7915/testmode.c
 +++ b/mt7915/testmode.c
 @@ -30,7 +30,7 @@ struct reg_band {
@@ -175,5 +175,5 @@
  
  static void
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0002-mt76-testmode-rework-tx-antenna-setting.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0002-mt76-testmode-rework-tx-antenna-setting.patch
index 64fca3e..5ec911f 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0002-mt76-testmode-rework-tx-antenna-setting.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0002-mt76-testmode-rework-tx-antenna-setting.patch
@@ -1,16 +1,16 @@
-From 5fef96ecd9dfc88f21a41d01319dc934f66bd098 Mon Sep 17 00:00:00 2001
+From e9dd6f5f862331f44f81d95a786f04bbea6f08f2 Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Fri, 25 Feb 2022 09:36:01 +0800
-Subject: [PATCH 02/11] mt76: testmode: rework tx antenna setting
+Subject: [PATCH 02/12] mt76: testmode: rework tx antenna setting
 
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/mcu.c      | 7 +------
- drivers/net/wireless/mediatek/mt76/mt7915/testmode.c | 9 +--------
- drivers/net/wireless/mediatek/mt76/testmode.c        | 4 ++--
+ mt7915/mcu.c      | 7 +------
+ mt7915/testmode.c | 9 +--------
+ testmode.c        | 4 ++--
  3 files changed, 4 insertions(+), 16 deletions(-)
 
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 552352dd..f513005b 100644
+index 552352d..f513005 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -2637,14 +2637,9 @@ int mt7915_mcu_set_chan_info(struct mt7915_phy *phy, int cmd)
@@ -30,7 +30,7 @@
  #endif
  
 diff --git a/mt7915/testmode.c b/mt7915/testmode.c
-index 20c593d0..b8c1da19 100644
+index 20c593d..b8c1da1 100644
 --- a/mt7915/testmode.c
 +++ b/mt7915/testmode.c
 @@ -474,11 +474,7 @@ mt7915_tm_set_tx_frames(struct mt7915_phy *phy, bool en)
@@ -57,7 +57,7 @@
  		if (tb[tm_change_map[i]])
  			changed |= BIT(i);
 diff --git a/testmode.c b/testmode.c
-index 382b4563..7cd00794 100644
+index 382b456..7cd0079 100644
 --- a/testmode.c
 +++ b/testmode.c
 @@ -446,8 +446,8 @@ int mt76_testmode_cmd(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
@@ -72,5 +72,5 @@
  	    mt76_tm_get_u8(tb[MT76_TM_ATTR_TX_DUTY_CYCLE],
  			   &td->tx_duty_cycle, 0, 99) ||
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0003-mt76-mt7915-rework-rx-testmode-stats.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0003-mt76-mt7915-rework-rx-testmode-stats.patch
index b09c8dd..4a210f3 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0003-mt76-mt7915-rework-rx-testmode-stats.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0003-mt76-mt7915-rework-rx-testmode-stats.patch
@@ -1,21 +1,21 @@
-From fee99898576c5a91a3d729aa9d0b88334c72ee36 Mon Sep 17 00:00:00 2001
+From 605c1bcc3fbf898506ddb96d98bf3d97db8e5d89 Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Mon, 3 Jan 2022 17:09:53 +0800
-Subject: [PATCH 03/11] mt76: mt7915: rework rx testmode stats
+Subject: [PATCH 03/12] mt76: mt7915: rework rx testmode stats
 
 ---
- drivers/net/wireless/mediatek/mt76/mac80211.c |  3 +-
- drivers/net/wireless/mediatek/mt76/mt76.h     |  5 ++
- .../wireless/mediatek/mt76/mt76_connac_mcu.h  |  1 +
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   |  1 +
- .../wireless/mediatek/mt76/mt7915/testmode.c  | 82 +++++++++++++++----
- .../wireless/mediatek/mt76/mt7915/testmode.h  | 28 +++++++
- drivers/net/wireless/mediatek/mt76/testmode.c |  3 +
- drivers/net/wireless/mediatek/mt76/testmode.h |  3 +
+ mac80211.c        |  3 +-
+ mt76.h            |  5 +++
+ mt76_connac_mcu.h |  1 +
+ mt7915/mcu.h      |  1 +
+ mt7915/testmode.c | 82 ++++++++++++++++++++++++++++++++++++++---------
+ mt7915/testmode.h | 28 ++++++++++++++++
+ testmode.c        |  3 ++
+ testmode.h        |  3 ++
  8 files changed, 109 insertions(+), 17 deletions(-)
 
 diff --git a/mac80211.c b/mac80211.c
-index 57e91565..5782244d 100644
+index 57e9156..5782244 100644
 --- a/mac80211.c
 +++ b/mac80211.c
 @@ -747,7 +747,8 @@ void mt76_rx(struct mt76_dev *dev, enum mt76_rxq_id q, struct sk_buff *skb)
@@ -29,7 +29,7 @@
  		if (status->flag & RX_FLAG_FAILED_FCS_CRC)
  			phy->test.rx_stats.fcs_error[q]++;
 diff --git a/mt76.h b/mt76.h
-index 4e8997c4..28720ee4 100644
+index 4e8997c..28720ee 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -604,6 +604,8 @@ struct mt76_testmode_ops {
@@ -59,7 +59,7 @@
  };
  
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index f1d7c05b..e94d6706 100644
+index f1d7c05..e94d670 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1130,6 +1130,7 @@ enum {
@@ -71,7 +71,7 @@
  	MCU_EXT_CMD_GROUP_PRE_CAL_INFO = 0xab,
  	MCU_EXT_CMD_DPD_PRE_CAL_INFO = 0xac,
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index da4ee0ac..bd9c6dcc 100644
+index da4ee0a..bd9c6dc 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -9,6 +9,7 @@
@@ -83,7 +83,7 @@
  	MCU_ATE_CLEAN_TXQUEUE = 0x1c,
  };
 diff --git a/mt7915/testmode.c b/mt7915/testmode.c
-index b8c1da19..123ceaf9 100644
+index b8c1da1..123ceaf 100644
 --- a/mt7915/testmode.c
 +++ b/mt7915/testmode.c
 @@ -133,6 +133,21 @@ mt7915_tm_clean_hwq(struct mt7915_phy *phy, u8 wcid)
@@ -215,7 +215,7 @@
  
  const struct mt76_testmode_ops mt7915_testmode_ops = {
 diff --git a/mt7915/testmode.h b/mt7915/testmode.h
-index 5573ac30..a1c54c89 100644
+index 5573ac3..a1c54c8 100644
 --- a/mt7915/testmode.h
 +++ b/mt7915/testmode.h
 @@ -33,6 +33,12 @@ struct mt7915_tm_clean_txq {
@@ -266,7 +266,7 @@
 +
  #endif
 diff --git a/testmode.c b/testmode.c
-index 7cd00794..e6d1f702 100644
+index 7cd0079..e6d1f70 100644
 --- a/testmode.c
 +++ b/testmode.c
 @@ -559,6 +559,9 @@ mt76_testmode_dump_stats(struct mt76_phy *phy, struct sk_buff *msg)
@@ -280,7 +280,7 @@
  		return -EMSGSIZE;
  
 diff --git a/testmode.h b/testmode.h
-index 5e2792d8..89613266 100644
+index 5e2792d..8961326 100644
 --- a/testmode.h
 +++ b/testmode.h
 @@ -101,6 +101,8 @@ enum mt76_testmode_attr {
@@ -301,5 +301,5 @@
  	/* keep last */
  	NUM_MT76_TM_STATS_ATTRS,
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0004-mt76-mt7915-fix-tx-descriptor.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0004-mt76-mt7915-fix-tx-descriptor.patch
index 9270b0d..9b20ba5 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0004-mt76-mt7915-fix-tx-descriptor.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0004-mt76-mt7915-fix-tx-descriptor.patch
@@ -1,14 +1,14 @@
-From 6d03d29acbfbfebbdf11ddedcfc6e5e9a550a84c Mon Sep 17 00:00:00 2001
+From 3b52f9553517631ce961a5ca808619a918ec5edc Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Wed, 19 Jan 2022 15:51:01 +0800
-Subject: [PATCH 04/11] mt76: mt7915: fix tx descriptor
+Subject: [PATCH 04/12] mt76: mt7915: fix tx descriptor
 
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/mac.c | 1 +
+ mt7915/mac.c | 1 +
  1 file changed, 1 insertion(+)
 
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index b280b0e9..9092b40f 100644
+index b280b0e..9092b40 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -653,6 +653,7 @@ mt7915_mac_write_txwi_tm(struct mt7915_phy *phy, __le32 *txwi,
@@ -20,5 +20,5 @@
  	txwi[6] |= cpu_to_le32(val);
  	txwi[7] |= cpu_to_le32(FIELD_PREP(MT_TXD7_SPE_IDX,
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0005-mt76-mt7915-drop-undefined-action-frame.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0005-mt76-mt7915-drop-undefined-action-frame.patch
index e65db45..c6af0f3 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0005-mt76-mt7915-drop-undefined-action-frame.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0005-mt76-mt7915-drop-undefined-action-frame.patch
@@ -1,14 +1,14 @@
-From 169c87faf30925e8bdd4a841143a7cd640d892ca Mon Sep 17 00:00:00 2001
+From d5aa55dd78e4b047bbf462a65ac47b30409ad8f0 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Thu, 14 Apr 2022 15:18:02 +0800
-Subject: [PATCH 05/11] mt76: mt7915: drop undefined action frame
+Subject: [PATCH 05/12] mt76: mt7915: drop undefined action frame
 
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/mac.c | 6 ++++++
+ mt7915/mac.c | 6 ++++++
  1 file changed, 6 insertions(+)
 
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index 9092b40f..6a4da8e6 100644
+index 9092b40..6a4da8e 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -683,6 +683,8 @@ int mt7915_tx_prepare_skb(struct mt76_dev *mdev, void *txwi_ptr,
@@ -32,5 +32,5 @@
  	if (id < 0)
  		return id;
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0006-mt76-mt7915-add-the-maximum-size-of-beacon-offload.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0006-mt76-mt7915-add-the-maximum-size-of-beacon-offload.patch
index f5c6a0f..8cebede 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0006-mt76-mt7915-add-the-maximum-size-of-beacon-offload.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0006-mt76-mt7915-add-the-maximum-size-of-beacon-offload.patch
@@ -1,19 +1,19 @@
-From fbb9cf16ce6656345047b7c09c2bca02df9130d3 Mon Sep 17 00:00:00 2001
+From f07ccb594e7e4653db40a84ac34f12958dc7a4bd Mon Sep 17 00:00:00 2001
 From: MeiChia Chiu <meichia.chiu@mediatek.com>
 Date: Mon, 23 May 2022 17:09:52 +0800
-Subject: [PATCH 06/11] mt76: mt7915: add the maximum size of beacon offload
+Subject: [PATCH 06/12] mt76: mt7915: add the maximum size of beacon offload
 
 add the maximum size of beacon offload to avoid exceeding the size limit
 
 Signed-off-by: Money Wang <Money.Wang@mediatek.com>
 Signed-off-by: MeiChia Chiu <MeiChia.Chiu@mediatek.com>
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/mcu.c | 11 +++++++++--
- drivers/net/wireless/mediatek/mt76/mt7915/mcu.h |  3 +++
+ mt7915/mcu.c | 11 +++++++++--
+ mt7915/mcu.h |  3 +++
  2 files changed, 12 insertions(+), 2 deletions(-)
 
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index f513005b..3a88638f 100644
+index f513005..3a88638 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -1937,6 +1937,13 @@ mt7915_mcu_beacon_inband_discov(struct mt7915_dev *dev, struct ieee80211_vif *vi
@@ -49,7 +49,7 @@
  
  	if (vif->bss_conf.nontransmitted)
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index bd9c6dcc..b82f2581 100644
+index bd9c6dc..b82f258 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -453,6 +453,9 @@ enum {
@@ -63,5 +63,5 @@
  					 sizeof(struct bss_info_omac) +	\
  					 sizeof(struct bss_info_basic) +\
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0007-mt76-mt7915-update-mpdu-density-in-6g-capability.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0007-mt76-mt7915-update-mpdu-density-in-6g-capability.patch
index 2282405..e5fe5f0 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0007-mt76-mt7915-update-mpdu-density-in-6g-capability.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0007-mt76-mt7915-update-mpdu-density-in-6g-capability.patch
@@ -1,17 +1,17 @@
-From 86648ca31161ecf87b21fe54e462120198e5cc21 Mon Sep 17 00:00:00 2001
+From 90fdd58113eb001c67e05845991b956b6f087880 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Mon, 6 Jun 2022 17:03:07 +0800
-Subject: [PATCH 07/11] mt76: mt7915: update mpdu density in 6g capability
+Subject: [PATCH 07/12] mt76: mt7915: update mpdu density in 6g capability
 
 Set mpdu density to 2 usec in 6g capability.
 
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/init.c | 2 +-
+ mt7915/init.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/mt7915/init.c b/mt7915/init.c
-index 39936b3b..8554c9dc 100644
+index 39936b3..8554c9d 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
 @@ -982,7 +982,7 @@ mt7915_init_he_caps(struct mt7915_phy *phy, enum nl80211_band band,
@@ -24,5 +24,5 @@
  			       u16_encode_bits(IEEE80211_VHT_MAX_AMPDU_1024K,
  					       IEEE80211_HE_6GHZ_CAP_MAX_AMPDU_LEN_EXP) |
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0008-mt76-common-RF-CR-idx-require-8-bits.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0008-mt76-common-RF-CR-idx-require-8-bits.patch
index 5375432..c5df034 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0008-mt76-common-RF-CR-idx-require-8-bits.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0008-mt76-common-RF-CR-idx-require-8-bits.patch
@@ -1,15 +1,15 @@
-From 43a9ad408f0daaa522b14b9c5f3aacb2acd0b929 Mon Sep 17 00:00:00 2001
+From d41eeb3c3d0223368644b8e9f01273ba64422038 Mon Sep 17 00:00:00 2001
 From: Evelyn Tsai <evelyn.tsai@mediatek.com>
 Date: Mon, 13 Jun 2022 23:10:26 +0800
-Subject: [PATCH 08/11] mt76: common: RF CR idx require 8 bits
+Subject: [PATCH 08/12] mt76: common: RF CR idx require 8 bits
 
 Change-Id: I95af9cca36052be090be776868822d0a74377c9d
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/mcu.c | 4 ++--
+ mt7915/mcu.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 3a88638f..1b7a630a 100644
+index 3a88638..1b7a630 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -3444,8 +3444,8 @@ int mt7915_mcu_rf_regval(struct mt7915_dev *dev, u32 regidx, u32 *val, bool set)
@@ -24,5 +24,5 @@
  	};
  	struct sk_buff *skb;
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0009-check-starec-newly.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0009-mt76-check-starec-newly.patch
similarity index 84%
rename from autobuild_mac80211_release/package/kernel/mt76/patches/0009-check-starec-newly.patch
rename to autobuild_mac80211_release/package/kernel/mt76/patches/0009-mt76-check-starec-newly.patch
index 1662f75..d6be2d2 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0009-check-starec-newly.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0009-mt76-check-starec-newly.patch
@@ -1,15 +1,15 @@
-From 35a89b4db0a8df5af61018fa7ebc47a889d08cdf Mon Sep 17 00:00:00 2001
+From 2c6d87aad4535b918828b5d01e51650901131cd1 Mon Sep 17 00:00:00 2001
 From: Shayne Chen <shayne.chen@mediatek.com>
 Date: Wed, 15 Jun 2022 23:15:13 +0800
-Subject: [PATCH 09/11] check starec newly
+Subject: [PATCH 09/12] check starec newly
 
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/main.c | 2 +-
- drivers/net/wireless/mediatek/mt76/mt7915/mcu.c  | 4 +++-
+ mt7915/main.c | 2 +-
+ mt7915/mcu.c  | 4 +++-
  2 files changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 79349817..39587992 100644
+index 7934981..3958799 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -235,7 +235,6 @@ static int mt7915_add_interface(struct ieee80211_hw *hw,
@@ -29,7 +29,7 @@
  out:
  	mutex_unlock(&dev->mt76.mutex);
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 1b7a630a..a726021e 100644
+index 1b7a630..a726021 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -1610,6 +1610,7 @@ int mt7915_mcu_add_sta(struct mt7915_dev *dev, struct ieee80211_vif *vif,
@@ -51,5 +51,5 @@
  		goto out;
  
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0010-mt76-mt7915-4addr-null-frame-using-fixed-rate-to-suc.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0010-mt76-mt7915-4addr-null-frame-using-fixed-rate-to-suc.patch
index ce550a3..aa3aeae 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0010-mt76-mt7915-4addr-null-frame-using-fixed-rate-to-suc.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0010-mt76-mt7915-4addr-null-frame-using-fixed-rate-to-suc.patch
@@ -1,15 +1,15 @@
-From e55a1b50333a925c64f78e59d582bfcb9af9372a Mon Sep 17 00:00:00 2001
+From 924bfa3aeb7330cbf5c14c9a0ddebb9567e5f77c Mon Sep 17 00:00:00 2001
 From: "lian.chen" <lian.chen@mediatek.com>
 Date: Wed, 22 Jun 2022 10:31:55 +0800
-Subject: [PATCH 10/11] mt76: mt7915: 4addr null frame using fixed rate to
+Subject: [PATCH 10/12] mt76: mt7915: 4addr null frame using fixed rate to
  success WDS
 
 ---
- drivers/net/wireless/mediatek/mt76/mt76_connac_mac.c | 3 ++-
+ mt76_connac_mac.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/mt76_connac_mac.c b/mt76_connac_mac.c
-index af2b33d7..27eaf224 100644
+index af2b33d..27eaf22 100644
 --- a/mt76_connac_mac.c
 +++ b/mt76_connac_mac.c
 @@ -393,7 +393,8 @@ mt76_connac2_mac_write_txwi_80211(struct mt76_dev *dev, __le32 *txwi,
@@ -23,5 +23,5 @@
  
  	txwi[2] |= cpu_to_le32(val);
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/0011-mt76-do-not-check-the-ccmp-pn-for-ONLY_MONITOR-frame.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/0011-mt76-do-not-check-the-ccmp-pn-for-ONLY_MONITOR-frame.patch
index 65ccefe..9616b13 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/0011-mt76-do-not-check-the-ccmp-pn-for-ONLY_MONITOR-frame.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/0011-mt76-do-not-check-the-ccmp-pn-for-ONLY_MONITOR-frame.patch
@@ -1,7 +1,7 @@
-From 1c694d2fe3f98e08ebed1df18599be2b2885ccc6 Mon Sep 17 00:00:00 2001
+From 975fc0afe9673689b2364b261dbe1f8f7fc58c56 Mon Sep 17 00:00:00 2001
 From: MeiChia Chiu <meichia.chiu@mediatek.com>
 Date: Mon, 20 Jun 2022 17:42:19 +0800
-Subject: [PATCH 11/11] mt76: do not check the ccmp pn for ONLY_MONITOR frame
+Subject: [PATCH 11/12] mt76: do not check the ccmp pn for ONLY_MONITOR frame
 
 if the received frame enables RX_FLAG_ONLY_MONITOR,
 driver doesn't need to check the ccmp pn of this frame.
@@ -9,11 +9,11 @@
 Signed-off-by: MeiChia Chiu <MeiChia.Chiu@mediatek.com>
 Change-Id: I85abba5b66ef3b58739069e04830980384f805d1
 ---
- drivers/net/wireless/mediatek/mt76/mac80211.c | 3 +++
+ mac80211.c | 3 +++
  1 file changed, 3 insertions(+)
 
 diff --git a/mac80211.c b/mac80211.c
-index 5782244d..c1df063f 100644
+index 5782244..c1df063 100644
 --- a/mac80211.c
 +++ b/mac80211.c
 @@ -1031,6 +1031,9 @@ mt76_check_ccmp_pn(struct sk_buff *skb)
@@ -27,5 +27,5 @@
  		return 0;
  
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1001-mt76-mt7915-add-mtk-internal-debug-tools-for-mt76.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1001-mt76-mt7915-add-mtk-internal-debug-tools-for-mt76.patch
index cefd039..5fe3710 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1001-mt76-mt7915-add-mtk-internal-debug-tools-for-mt76.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1001-mt76-mt7915-add-mtk-internal-debug-tools-for-mt76.patch
@@ -1,29 +1,29 @@
-From 66334b2b6ed1d15fc0ac2d66c81fcbc51eb65825 Mon Sep 17 00:00:00 2001
+From 4c1658312392db894fd36bbdc98476d6e6b1e32f 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] mt76: mt7915: add mtk internal debug tools for mt76
+Subject: [PATCH 1001/1008] mt76: mt7915: add mtk internal debug tools for mt76
 
 ---
- .../wireless/mediatek/mt76/mt76_connac_mcu.h  |    6 +
- .../wireless/mediatek/mt76/mt7915/Makefile    |    2 +-
- .../wireless/mediatek/mt76/mt7915/debugfs.c   |   73 +-
- .../net/wireless/mediatek/mt76/mt7915/mac.c   |   14 +
- .../net/wireless/mediatek/mt76/mt7915/main.c  |    4 +
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   |   44 +
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   |    4 +
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |   43 +
- .../mediatek/mt76/mt7915/mt7915_debug.h       | 1350 ++++++++
- .../mediatek/mt76/mt7915/mtk_debugfs.c        | 2923 +++++++++++++++++
- .../wireless/mediatek/mt76/mt7915/mtk_mcu.c   |   51 +
- .../net/wireless/mediatek/mt76/tools/fwlog.c  |   44 +-
+ mt76_connac_mcu.h     |    6 +
+ mt7915/Makefile       |    2 +-
+ mt7915/debugfs.c      |   73 +-
+ mt7915/mac.c          |   14 +
+ mt7915/main.c         |    4 +
+ mt7915/mcu.c          |   44 +
+ mt7915/mcu.h          |    4 +
+ mt7915/mt7915.h       |   43 +
+ mt7915/mt7915_debug.h | 1350 +++++++++++++++++++
+ mt7915/mtk_debugfs.c  | 2923 +++++++++++++++++++++++++++++++++++++++++
+ mt7915/mtk_mcu.c      |   51 +
+ tools/fwlog.c         |   44 +-
  12 files changed, 4545 insertions(+), 13 deletions(-)
- mode change 100644 => 100755 drivers/net/wireless/mediatek/mt76/mt7915/mcu.c
- create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mt7915_debug.h
- create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mtk_debugfs.c
- create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mtk_mcu.c
+ mode change 100644 => 100755 mt7915/mcu.c
+ create mode 100644 mt7915/mt7915_debug.h
+ create mode 100644 mt7915/mtk_debugfs.c
+ create mode 100644 mt7915/mtk_mcu.c
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index e94d6706..333d3a04 100644
+index e94d670..333d3a0 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1119,6 +1119,12 @@ enum {
@@ -40,7 +40,7 @@
  	MCU_EXT_CMD_CAL_CACHE = 0x67,
  	MCU_EXT_CMD_SET_RADAR_TH = 0x7c,
 diff --git a/mt7915/Makefile b/mt7915/Makefile
-index b794ceb7..a3474e2f 100644
+index b794ceb..a3474e2 100644
 --- a/mt7915/Makefile
 +++ b/mt7915/Makefile
 @@ -3,7 +3,7 @@
@@ -54,7 +54,7 @@
  mt7915e-$(CONFIG_MT7986_WMAC) += soc.o
 \ No newline at end of file
 diff --git a/mt7915/debugfs.c b/mt7915/debugfs.c
-index 9f21d978..0cfb6068 100644
+index 9f21d97..0cfb606 100644
 --- a/mt7915/debugfs.c
 +++ b/mt7915/debugfs.c
 @@ -8,6 +8,9 @@
@@ -198,7 +198,7 @@
  
  	if (dev->relay_fwlog)
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index 6a4da8e6..c332e0a0 100644
+index 6a4da8e..c332e0a 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -239,6 +239,10 @@ mt7915_mac_fill_rx(struct mt7915_dev *dev, struct sk_buff *skb)
@@ -237,7 +237,7 @@
  }
  
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 39587992..929c726d 100644
+index 3958799..929c726 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -62,7 +62,11 @@ static int mt7915_start(struct ieee80211_hw *hw)
@@ -255,7 +255,7 @@
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
 old mode 100644
 new mode 100755
-index a726021e..4ff13c7a
+index a726021..4ff13c7
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -195,6 +195,11 @@ mt7915_mcu_send_message(struct mt76_dev *mdev, struct sk_buff *skb,
@@ -324,7 +324,7 @@
  {
  	struct {
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index b82f2581..b2c51bfb 100644
+index b82f258..b2c51bf 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -259,6 +259,10 @@ enum {
@@ -339,7 +339,7 @@
  
  enum mcu_mmps_mode {
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index b6a6aa7f..594f2fb2 100644
+index b6a6aa7..594f2fb 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -9,6 +9,7 @@
@@ -406,7 +406,7 @@
  #endif
 diff --git a/mt7915/mt7915_debug.h b/mt7915/mt7915_debug.h
 new file mode 100644
-index 00000000..58ba2cdf
+index 0000000..58ba2cd
 --- /dev/null
 +++ b/mt7915/mt7915_debug.h
 @@ -0,0 +1,1350 @@
@@ -1762,7 +1762,7 @@
 +#endif
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
 new file mode 100644
-index 00000000..f18c8b6c
+index 0000000..f18c8b6
 --- /dev/null
 +++ b/mt7915/mtk_debugfs.c
 @@ -0,0 +1,2923 @@
@@ -4691,7 +4691,7 @@
 +#endif
 diff --git a/mt7915/mtk_mcu.c b/mt7915/mtk_mcu.c
 new file mode 100644
-index 00000000..145fe785
+index 0000000..145fe78
 --- /dev/null
 +++ b/mt7915/mtk_mcu.c
 @@ -0,0 +1,51 @@
@@ -4747,7 +4747,7 @@
 +				 sizeof(req), true);
 +}
 diff --git a/tools/fwlog.c b/tools/fwlog.c
-index e5d4a105..3d51d9ec 100644
+index e5d4a10..3d51d9e 100644
 --- a/tools/fwlog.c
 +++ b/tools/fwlog.c
 @@ -26,7 +26,7 @@ static const char *debugfs_path(const char *phyname, const char *file)
@@ -4861,5 +4861,5 @@
  	return ret;
  }
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1002-mt76-mt7915-csi-implement-csi-support.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1002-mt76-mt7915-csi-implement-csi-support.patch
index 0b7a3be..0f2ca39 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1002-mt76-mt7915-csi-implement-csi-support.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1002-mt76-mt7915-csi-implement-csi-support.patch
@@ -1,24 +1,24 @@
-From 776a9607718423c9cf52c08bc137d08820f1e2d1 Mon Sep 17 00:00:00 2001
+From c2e0f6df51b9b2e681285523b1c4471c7f613c83 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 1002/1008] mt76: mt7915: csi: implement csi support
 
 ---
- .../wireless/mediatek/mt76/mt76_connac_mcu.h  |   2 +
- .../wireless/mediatek/mt76/mt7915/Makefile    |   4 +-
- .../net/wireless/mediatek/mt76/mt7915/init.c  |  39 ++
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   | 111 +++++
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   |  76 +++
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |  20 +
- .../wireless/mediatek/mt76/mt7915/vendor.c    | 452 ++++++++++++++++++
- .../wireless/mediatek/mt76/mt7915/vendor.h    |  60 +++
+ mt76_connac_mcu.h |   2 +
+ mt7915/Makefile   |   4 +-
+ mt7915/init.c     |  39 ++++
+ mt7915/mcu.c      | 111 ++++++++++++
+ mt7915/mcu.h      |  76 ++++++++
+ mt7915/mt7915.h   |  20 ++
+ mt7915/vendor.c   | 452 ++++++++++++++++++++++++++++++++++++++++++++++
+ mt7915/vendor.h   |  60 ++++++
  8 files changed, 762 insertions(+), 2 deletions(-)
- mode change 100755 => 100644 drivers/net/wireless/mediatek/mt76/mt7915/mcu.c
- create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/vendor.c
- create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/vendor.h
+ mode change 100755 => 100644 mt7915/mcu.c
+ create mode 100644 mt7915/vendor.c
+ create mode 100644 mt7915/vendor.h
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 333d3a04..b25807a3 100644
+index 333d3a0..b25807a 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -971,6 +971,7 @@ enum {
@@ -38,7 +38,7 @@
  
  enum {
 diff --git a/mt7915/Makefile b/mt7915/Makefile
-index a3474e2f..e272c826 100644
+index a3474e2..e272c82 100644
 --- a/mt7915/Makefile
 +++ b/mt7915/Makefile
 @@ -1,9 +1,9 @@
@@ -55,7 +55,7 @@
  mt7915e-$(CONFIG_MT7986_WMAC) += soc.o
 \ No newline at end of file
 diff --git a/mt7915/init.c b/mt7915/init.c
-index 8554c9dc..fa9568ca 100644
+index 8554c9d..fa9568c 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
 @@ -542,6 +542,12 @@ mt7915_register_ext_phy(struct mt7915_dev *dev, struct mt7915_phy *phy)
@@ -135,7 +135,7 @@
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
 old mode 100755
 new mode 100644
-index e4c5b40c..5e87db13
+index 4ff13c7..0941bf3
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -32,6 +32,10 @@
@@ -161,7 +161,7 @@
  	case MCU_EXT_EVENT_BCC_NOTIFY:
  		mt7915_mcu_rx_bcc_notify(dev, skb);
  		break;
-@@ -3444,6 +3453,108 @@ int mt7915_mcu_twt_agrt_update(struct mt7915_dev *dev,
+@@ -3446,6 +3455,108 @@ int mt7915_mcu_twt_agrt_update(struct mt7915_dev *dev,
  				 &req, sizeof(req), true);
  }
  
@@ -271,7 +271,7 @@
  int mt7915_dbg_mcu_wa_cmd(struct mt7915_dev *dev, int cmd, u32 a1, u32 a2, u32 a3, bool wait_resp)
  {
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index b2c51bfb..ec8887b5 100644
+index b2c51bf..ec8887b 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -476,4 +476,80 @@ enum {
@@ -356,7 +356,7 @@
 +
  #endif
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 2bc0e915..bab44e13 100644
+index 594f2fb..5a6224b 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -276,6 +276,20 @@ struct mt7915_phy {
@@ -380,7 +380,7 @@
  };
  
  struct mt7915_dev {
-@@ -614,6 +628,12 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
+@@ -616,6 +630,12 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
  			    struct ieee80211_sta *sta, struct dentry *dir);
  #endif
  
@@ -395,7 +395,7 @@
  int mt7915_dbg_mcu_wa_cmd(struct mt7915_dev *dev, int cmd, u32 a1, u32 a2, u32 a3, bool wait_resp);
 diff --git a/mt7915/vendor.c b/mt7915/vendor.c
 new file mode 100644
-index 00000000..98fd9c2d
+index 0000000..98fd9c2
 --- /dev/null
 +++ b/mt7915/vendor.c
 @@ -0,0 +1,452 @@
@@ -853,7 +853,7 @@
 +}
 diff --git a/mt7915/vendor.h b/mt7915/vendor.h
 new file mode 100644
-index 00000000..9d3db2a7
+index 0000000..9d3db2a
 --- /dev/null
 +++ b/mt7915/vendor.h
 @@ -0,0 +1,60 @@
@@ -918,5 +918,5 @@
 +
 +#endif
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1003-mt76-mt7915-air-monitor-support.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1003-mt76-mt7915-air-monitor-support.patch
index 3bafdb7..bff59ad 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1003-mt76-mt7915-air-monitor-support.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1003-mt76-mt7915-air-monitor-support.patch
@@ -1,19 +1,19 @@
-From e3ff3fb461a37b3f85ced46aa13f2e4ee563533f Mon Sep 17 00:00:00 2001
+From f6e5e119c427050f926fd42c1bc271f53dc8cafb 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 1003/1008] mt76: mt7915: air monitor support
 
 ---
- .../wireless/mediatek/mt76/mt76_connac_mcu.h  |   2 +
- .../net/wireless/mediatek/mt76/mt7915/mac.c   |   4 +
- .../net/wireless/mediatek/mt76/mt7915/main.c  |   3 +
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |  34 ++
- .../wireless/mediatek/mt76/mt7915/vendor.c    | 359 ++++++++++++++++++
- .../wireless/mediatek/mt76/mt7915/vendor.h    |  38 ++
+ mt76_connac_mcu.h |   2 +
+ mt7915/mac.c      |   4 +
+ mt7915/main.c     |   3 +
+ mt7915/mt7915.h   |  34 +++++
+ mt7915/vendor.c   | 359 ++++++++++++++++++++++++++++++++++++++++++++++
+ mt7915/vendor.h   |  38 +++++
  6 files changed, 440 insertions(+)
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index b25807a3..42425f75 100644
+index b25807a..42425f7 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1142,6 +1142,8 @@ enum {
@@ -26,7 +26,7 @@
  };
  
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index c332e0a0..69c226f0 100644
+index c332e0a..69c226f 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -486,6 +486,10 @@ mt7915_mac_fill_rx(struct mt7915_dev *dev, struct sk_buff *skb)
@@ -41,10 +41,10 @@
  		status->flag |= RX_FLAG_8023;
  	}
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 39587992..91c4370a 100644
+index 929c726..e461e0f 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -671,6 +671,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -675,6 +675,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
  	if (ret)
  		return ret;
  
@@ -55,7 +55,7 @@
  }
  
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index bab44e13..b2b9b7ec 100644
+index 5a6224b..d702532 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -231,6 +231,35 @@ struct mt7915_hif {
@@ -103,7 +103,7 @@
  #endif
  };
  
-@@ -632,6 +663,9 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
+@@ -634,6 +665,9 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
  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);
@@ -114,7 +114,7 @@
  
  #ifdef MTK_DEBUG
 diff --git a/mt7915/vendor.c b/mt7915/vendor.c
-index 98fd9c2d..b94d787e 100644
+index 98fd9c2..b94d787 100644
 --- a/mt7915/vendor.c
 +++ b/mt7915/vendor.c
 @@ -430,6 +430,353 @@ out:
@@ -491,7 +491,7 @@
  };
  
 diff --git a/mt7915/vendor.h b/mt7915/vendor.h
-index 9d3db2a7..976817f3 100644
+index 9d3db2a..976817f 100644
 --- a/mt7915/vendor.h
 +++ b/mt7915/vendor.h
 @@ -4,6 +4,7 @@
@@ -545,5 +545,5 @@
 +
  #endif
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1004-mt76-mt7915-add-support-for-muru_onoff-via-debugfs.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1004-mt76-mt7915-add-support-for-muru_onoff-via-debugfs.patch
index c4355c5..44f9801 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1004-mt76-mt7915-add-support-for-muru_onoff-via-debugfs.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1004-mt76-mt7915-add-support-for-muru_onoff-via-debugfs.patch
@@ -1,19 +1,18 @@
-From bc23057e7ba6d15de91adc11be0093e672a87dbb Mon Sep 17 00:00:00 2001
+From 7bcfae1d261805e54b6e27091dffd4706c4dc046 Mon Sep 17 00:00:00 2001
 From: MeiChia Chiu <meichia.chiu@mediatek.com>
 Date: Wed, 22 Jun 2022 10:45:53 +0800
 Subject: [PATCH 1004/1008] mt76: mt7915: add support for muru_onoff via
  debugfs
 
 ---
- .../net/wireless/mediatek/mt76/mt7915/init.c  |  1 +
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   |  9 +++--
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   |  6 ++++
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |  1 +
- .../mediatek/mt76/mt7915/mtk_debugfs.c        | 33 +++++++++++++++++++
- 5 files changed, 48 insertions(+), 2 deletions(-)
+ mt7915/init.c        |  1 +
+ mt7915/mcu.c         |  9 +++++++--
+ mt7915/mcu.h         |  6 ++++++
+ mt7915/mtk_debugfs.c | 33 +++++++++++++++++++++++++++++++++
+ 4 files changed, 47 insertions(+), 2 deletions(-)
 
 diff --git a/mt7915/init.c b/mt7915/init.c
-index fa9568ca..6e2a1c13 100644
+index fa9568c..6e2a1c1 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
 @@ -577,6 +577,7 @@ static void mt7915_init_work(struct work_struct *work)
@@ -25,7 +24,7 @@
  
  void mt7915_wfsys_reset(struct mt7915_dev *dev)
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 5e87db13..3ee1db4e 100644
+index 0941bf3..34cf3e6 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -856,13 +856,18 @@ mt7915_mcu_sta_muru_tlv(struct mt7915_dev *dev, struct sk_buff *skb,
@@ -37,7 +36,7 @@
  			       mvif->cap.vht_mu_ebfer ||
 -			       mvif->cap.vht_mu_ebfee;
 +			       mvif->cap.vht_mu_ebfee) &&
-+			       !!(dev->dbg.muru_onoff & MUMIMO_DL);
++				   !!(dev->dbg.muru_onoff & MUMIMO_DL);
  	if (!is_mt7915(&dev->mt76))
  		muru->cfg.mimo_ul_en = true;
  	muru->cfg.ofdma_dl_en = true;
@@ -50,7 +49,7 @@
  		muru->mimo_dl.vht_mu_bfee =
  			!!(sta->vht_cap.cap & IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE);
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index ec8887b5..92715b97 100644
+index ec8887b..07c1f2b 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -552,4 +552,10 @@ struct csi_data {
@@ -58,26 +57,14 @@
  #endif
  
 +/* MURU */
-+#define OFDMA_DL			BIT(0)
-+#define OFDMA_UL			BIT(1)
-+#define MUMIMO_DL			BIT(2)
-+#define MUMIMO_UL			BIT(3)
++#define OFDMA_DL                       BIT(0)
++#define OFDMA_UL                       BIT(1)
++#define MUMIMO_DL                      BIT(2)
++#define MUMIMO_UL                      BIT(3)
 +
  #endif
-diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index b2b9b7ec..c4f8a6ad 100644
---- a/mt7915/mt7915.h
-+++ b/mt7915/mt7915.h
-@@ -402,6 +402,7 @@ struct mt7915_dev {
- 		bool dump_rx_pkt;
- 		bool dump_rx_raw;
- 		u32 token_idx;
-+		u8 muru_onoff;
- 	} dbg;
- 	const struct mt7915_dbg_reg_desc *dbg_reg;
- #endif
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
-index ccaaea78..d2dbae45 100644
+index f18c8b6..e239df9 100644
 --- a/mt7915/mtk_debugfs.c
 +++ b/mt7915/mtk_debugfs.c
 @@ -2480,6 +2480,38 @@ static int mt7915_token_txd_read(struct seq_file *s, void *data)
@@ -86,35 +73,35 @@
  
 +static int mt7915_muru_onoff_get(void *data, u64 *val)
 +{
-+	struct mt7915_dev *dev = data;
++       struct mt7915_dev *dev = data;
 +
-+	*val = dev->dbg.muru_onoff;
++       *val = dev->dbg.muru_onoff;
 +
-+	printk("mumimo ul:%d, mumimo dl:%d, ofdma ul:%d, ofdma dl:%d\n",
-+		!!(dev->dbg.muru_onoff & MUMIMO_UL),
-+		!!(dev->dbg.muru_onoff & MUMIMO_DL),
-+		!!(dev->dbg.muru_onoff & OFDMA_UL),
-+		!!(dev->dbg.muru_onoff & OFDMA_DL));
++       printk("mumimo ul:%d, mumimo dl:%d, ofdma ul:%d, ofdma dl:%d\n",
++               !!(dev->dbg.muru_onoff & MUMIMO_UL),
++               !!(dev->dbg.muru_onoff & MUMIMO_DL),
++               !!(dev->dbg.muru_onoff & OFDMA_UL),
++               !!(dev->dbg.muru_onoff & OFDMA_DL));
 +
-+	return 0;
++       return 0;
 +}
 +
 +static int mt7915_muru_onoff_set(void *data, u64 val)
 +{
-+	struct mt7915_dev *dev = data;
++       struct mt7915_dev *dev = data;
 +
-+	if (val > 15) {
-+		printk("Wrong value! The value is between 0 ~ 15.\n");
-+		goto exit;
-+	}
++       if (val > 15) {
++               printk("Wrong value! The value is between 0 ~ 15.\n");
++               goto exit;
++       }
 +
-+	dev->dbg.muru_onoff = val;
++       dev->dbg.muru_onoff = val;
 +exit:
-+	return 0;
++       return 0;
 +}
 +
 +DEFINE_DEBUGFS_ATTRIBUTE(fops_muru_onoff, mt7915_muru_onoff_get,
-+			mt7915_muru_onoff_set, "%llx\n");
++                       mt7915_muru_onoff_set, "%llx\n");
 +
  static int mt7915_amsduinfo_read(struct seq_file *s, void *data)
  {
@@ -128,5 +115,5 @@
  			    &fops_fw_debug_module);
  	debugfs_create_file("fw_debug_level", 0600, dir, dev,
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1005-mt76-certification-patches.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1005-mt76-certification-patches.patch
index 0e6bf6c..e73014d 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1005-mt76-certification-patches.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1005-mt76-certification-patches.patch
@@ -1,23 +1,23 @@
-From 76cd7f08cc80b561d83cc265dccf531721792964 Mon Sep 17 00:00:00 2001
+From a050a241c404f9a56ff84a972b80f744750731ca 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 1005/1008] mt76: certification patches
 
 ---
- .../wireless/mediatek/mt76/mt76_connac_mcu.h  |   1 +
- .../net/wireless/mediatek/mt76/mt7915/init.c  |   7 +-
- .../net/wireless/mediatek/mt76/mt7915/mac.c   |  23 +
- .../net/wireless/mediatek/mt76/mt7915/main.c  |  15 +-
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   | 466 ++++++++++++++++++
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   | 209 +++++++-
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |  13 +
- .../mediatek/mt76/mt7915/mtk_debugfs.c        |   7 +-
- .../wireless/mediatek/mt76/mt7915/vendor.c    | 187 +++++++
- .../wireless/mediatek/mt76/mt7915/vendor.h    |  42 ++
- 10 files changed, 964 insertions(+), 6 deletions(-)
+ mt76_connac_mcu.h    |   1 +
+ mt7915/init.c        |   7 +-
+ mt7915/mac.c         |  23 +++
+ mt7915/main.c        |  15 +-
+ mt7915/mcu.c         | 466 +++++++++++++++++++++++++++++++++++++++++++
+ mt7915/mcu.h         | 207 ++++++++++++++++++-
+ mt7915/mt7915.h      |  13 ++
+ mt7915/mtk_debugfs.c |   7 +-
+ mt7915/vendor.c      | 187 +++++++++++++++++
+ mt7915/vendor.h      |  42 ++++
+ 10 files changed, 962 insertions(+), 6 deletions(-)
 
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 42425f75..32e540cc 100644
+index 42425f7..32e540c 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1144,6 +1144,7 @@ enum {
@@ -29,7 +29,7 @@
  };
  
 diff --git a/mt7915/init.c b/mt7915/init.c
-index 6e2a1c13..02d1b6d8 100644
+index 6e2a1c1..02d1b6d 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
 @@ -372,12 +372,17 @@ mt7915_init_wiphy(struct ieee80211_hw *hw)
@@ -52,7 +52,7 @@
  			IEEE80211_HT_CAP_LDPC_CODING |
  			IEEE80211_HT_CAP_MAX_AMSDU;
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index 69c226f0..9058c750 100644
+index 69c226f..9058c75 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -7,6 +7,7 @@
@@ -100,10 +100,10 @@
  			       IEEE80211_RC_NSS_CHANGED |
  			       IEEE80211_RC_BW_CHANGED))
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 91c4370a..90543596 100644
+index e461e0f..c2304db 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -649,6 +649,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -653,6 +653,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;
@@ -113,7 +113,7 @@
  	int ret, idx;
  
  	idx = mt76_wcid_alloc(dev->mt76.wcid_mask, MT7915_WTBL_STA);
-@@ -674,7 +677,17 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -678,7 +681,17 @@ 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
@@ -133,10 +133,10 @@
  
  void mt7915_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif,
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 3ee1db4e..6ae4d159 100644
+index 34cf3e6..759d615 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
-@@ -3558,6 +3558,472 @@ mt7915_mcu_report_csi(struct mt7915_dev *dev, struct sk_buff *skb)
+@@ -3560,6 +3560,472 @@ mt7915_mcu_report_csi(struct mt7915_dev *dev, struct sk_buff *skb)
  
  	return 0;
  }
@@ -610,7 +610,7 @@
  
  #ifdef MTK_DEBUG
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index 92715b97..7418f78c 100644
+index 07c1f2b..7b1a521 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -396,9 +396,13 @@ enum {
@@ -638,100 +638,99 @@
  enum {
  	THERMAL_PROTECT_PARAMETER_CTRL,
  	THERMAL_PROTECT_BASIC_INFO,
-@@ -557,5 +564,205 @@ struct csi_data {
- #define OFDMA_UL			BIT(1)
- #define MUMIMO_DL			BIT(2)
- #define MUMIMO_UL			BIT(3)
-+#define MUMIMO_DL_CERT			BIT(4)
-+
+@@ -557,5 +564,203 @@ struct csi_data {
+ #define OFDMA_UL                       BIT(1)
+ #define MUMIMO_DL                      BIT(2)
+ #define MUMIMO_UL                      BIT(3)
++#define MUMIMO_DL_CERT                 BIT(4)
 +
 +#ifdef CONFIG_MTK_VENDOR
 +struct mt7915_muru_comm {
-+	u8 ppdu_format;
-+	u8 sch_type;
-+	u8 band;
-+	u8 wmm_idx;
-+	u8 spe_idx;
-+	u8 proc_type;
++   u8 ppdu_format;
++   u8 sch_type;
++   u8 band;
++   u8 wmm_idx;
++   u8 spe_idx;
++   u8 proc_type;
 +};
 +
 +struct mt7915_muru_dl {
-+	u8 user_num;
-+	u8 tx_mode;
-+	u8 bw;
-+	u8 gi;
-+	u8 ltf;
-+	/* sigB */
-+	u8 mcs;
-+	u8 dcm;
-+	u8 cmprs;
++   u8 user_num;
++   u8 tx_mode;
++   u8 bw;
++   u8 gi;
++   u8 ltf;
++   /* sigB */
++   u8 mcs;
++   u8 dcm;
++   u8 cmprs;
 +
-+	u8 ru[8];
-+	u8 c26[2];
-+	u8 ack_policy;
++   u8 ru[8];
++   u8 c26[2];
++   u8 ack_policy;
 +
-+	struct {
-+		__le16 wlan_idx;
-+		u8 ru_alloc_seg;
-+		u8 ru_idx;
-+		u8 ldpc;
-+		u8 nss;
-+		u8 mcs;
-+		u8 mu_group_idx;
-+		u8 vht_groud_id;
-+		u8 vht_up;
-+		u8 he_start_stream;
-+		u8 he_mu_spatial;
-+		u8 ack_policy;
-+		__le16 tx_power_alpha;
-+	} usr[16];
++   struct {
++	   __le16 wlan_idx;
++       u8 ru_alloc_seg;
++       u8 ru_idx;
++       u8 ldpc;
++       u8 nss;
++       u8 mcs;
++       u8 mu_group_idx;
++       u8 vht_groud_id;
++       u8 vht_up;
++       u8 he_start_stream;
++       u8 he_mu_spatial;
++       u8 ack_policy;
++       __le16 tx_power_alpha;
++   } usr[16];
 +};
 +
 +struct mt7915_muru_ul {
-+	u8 user_num;
++   u8 user_num;
 +
-+	/* UL TX */
-+	u8 trig_type;
-+	__le16 trig_cnt;
-+	__le16 trig_intv;
-+	u8 bw;
-+	u8 gi_ltf;
-+	__le16 ul_len;
-+	u8 pad;
-+	u8 trig_ta[ETH_ALEN];
-+	u8 ru[8];
-+	u8 c26[2];
++   /* UL TX */
++   u8 trig_type;
++   __le16 trig_cnt;
++   __le16 trig_intv;
++   u8 bw;
++   u8 gi_ltf;
++   __le16 ul_len;
++   u8 pad;
++   u8 trig_ta[ETH_ALEN];
++   u8 ru[8];
++   u8 c26[2];
 +
-+	struct {
-+		__le16 wlan_idx;
-+		u8 ru_alloc;
-+		u8 ru_idx;
-+		u8 ldpc;
-+		u8 nss;
-+		u8 mcs;
-+		u8 target_rssi;
-+		__le32 trig_pkt_size;
-+	} usr[16];
++   struct {
++       __le16 wlan_idx;
++       u8 ru_alloc;
++       u8 ru_idx;
++       u8 ldpc;
++       u8 nss;
++       u8 mcs;
++       u8 target_rssi;
++       __le32 trig_pkt_size;
++   } usr[16];
 +
-+	/* HE TB RX Debug */
-+	__le32 rx_hetb_nonsf_en_bitmap;
-+	__le32 rx_hetb_cfg[2];
++   /* HE TB RX Debug */
++   __le32 rx_hetb_nonsf_en_bitmap;
++   __le32 rx_hetb_cfg[2];
 +
-+	/* DL TX */
-+	u8 ba_type;
++   /* DL TX */
++   u8 ba_type;
 +};
 +
 +struct mt7915_muru {
-+	__le32 cfg_comm;
-+	__le32 cfg_dl;
-+	__le32 cfg_ul;
++   __le32 cfg_comm;
++   __le32 cfg_dl;
++   __le32 cfg_ul;
 +
-+	struct mt7915_muru_comm comm;
-+	struct mt7915_muru_dl dl;
-+	struct mt7915_muru_ul ul;
++   struct mt7915_muru_comm comm;
++   struct mt7915_muru_dl dl;
++   struct mt7915_muru_ul ul;
 +};
 +
-+#define MURU_PPDU_HE_TRIG		BIT(2)
++#define MURU_PPDU_HE_TRIG      BIT(2)
 +#define MURU_PPDU_HE_MU                 BIT(3)
 +
 +#define MURU_OFDMA_SCH_TYPE_DL          BIT(0)
@@ -741,114 +740,113 @@
 +#define MURU_COMM_PPDU_FMT              BIT(0)
 +#define MURU_COMM_SCH_TYPE              BIT(1)
 +#define MURU_COMM_SET                   (MURU_COMM_PPDU_FMT | MURU_COMM_SCH_TYPE)
-+
 +/* DL&UL User config*/
 +#define MURU_USER_CNT                   BIT(4)
 +
 +enum {
-+	CAPI_SU,
-+	CAPI_MU,
-+	CAPI_ER_SU,
-+	CAPI_TB,
-+	CAPI_LEGACY
++   CAPI_SU,
++   CAPI_MU,
++   CAPI_ER_SU,
++   CAPI_TB,
++   CAPI_LEGACY
 +};
 +
 +enum {
-+	CAPI_BASIC,
-+	CAPI_BRP,
-+	CAPI_MU_BAR,
-+	CAPI_MU_RTS,
-+	CAPI_BSRP,
-+	CAPI_GCR_MU_BAR,
-+	CAPI_BQRP,
-+	CAPI_NDP_FRP
++   CAPI_BASIC,
++   CAPI_BRP,
++   CAPI_MU_BAR,
++   CAPI_MU_RTS,
++   CAPI_BSRP,
++   CAPI_GCR_MU_BAR,
++   CAPI_BQRP,
++   CAPI_NDP_FRP
 +};
 +
 +enum {
-+	MURU_SET_BSRP_CTRL = 1,
-+	MURU_SET_SUTX = 16,
-+	MURU_SET_MUMIMO_CTRL = 17,
-+	MURU_SET_MANUAL_CFG = 100,
-+	MURU_SET_MU_DL_ACK_POLICY = 200,
-+	MURU_SET_TRIG_TYPE = 201,
-+	MURU_SET_20M_DYN_ALGO = 202,
-+	MURU_SET_PROT_FRAME_THR = 204,
-+	MURU_SET_CERT_MU_EDCA_OVERRIDE = 205,
++   MURU_SET_BSRP_CTRL = 1,
++   MURU_SET_SUTX = 16,
++   MURU_SET_MUMIMO_CTRL = 17,
++   MURU_SET_MANUAL_CFG = 100,
++   MURU_SET_MU_DL_ACK_POLICY = 200,
++   MURU_SET_TRIG_TYPE = 201,
++   MURU_SET_20M_DYN_ALGO = 202,
++   MURU_SET_PROT_FRAME_THR = 204,
++   MURU_SET_CERT_MU_EDCA_OVERRIDE = 205,
 +};
 +
 +enum {
-+	MU_DL_ACK_POLICY_MU_BAR = 3,
-+	MU_DL_ACK_POLICY_TF_FOR_ACK = 4,
-+	MU_DL_ACK_POLICY_SU_BAR = 5,
++   MU_DL_ACK_POLICY_MU_BAR = 3,
++   MU_DL_ACK_POLICY_TF_FOR_ACK = 4,
++  MU_DL_ACK_POLICY_SU_BAR = 5,
 +};
 +
 +enum {
-+	BF_SOUNDING_OFF = 0,
-+	BF_SOUNDING_ON,
-+	BF_DATA_PACKET_APPLY,
-+	BF_PFMU_MEM_ALLOCATE,
-+	BF_PFMU_MEM_RELEASE,
-+	BF_PFMU_TAG_READ,
-+	BF_PFMU_TAG_WRITE,
-+	BF_PROFILE_READ,
-+	BF_PROFILE_WRITE,
-+	BF_PN_READ,
-+	BF_PN_WRITE,
-+	BF_PFMU_MEM_ALLOC_MAP_READ,
-+	BF_AID_SET,
-+	BF_STA_REC_READ,
-+	BF_PHASE_CALIBRATION,
-+	BF_IBF_PHASE_COMP,
-+	BF_LNA_GAIN_CONFIG,
-+	BF_PROFILE_WRITE_20M_ALL,
-+	BF_APCLIENT_CLUSTER,
-+	BF_AWARE_CTRL,
-+	BF_HW_ENABLE_STATUS_UPDATE,
-+	BF_REPT_CLONED_STA_TO_NORMAL_STA,
-+	BF_GET_QD,
-+	BF_BFEE_HW_CTRL,
-+	BF_PFMU_SW_TAG_WRITE,
-+	BF_MOD_EN_CTRL,
-+	BF_DYNSND_EN_INTR,
-+	BF_DYNSND_CFG_DMCS_TH,
-+	BF_DYNSND_EN_PFID_INTR,
-+	BF_CONFIG,
-+	BF_PFMU_DATA_WRITE,
-+	BF_FBRPT_DBG_INFO_READ,
-+	BF_CMD_TXSND_INFO,
-+	BF_CMD_PLY_INFO,
-+	BF_CMD_MU_METRIC,
-+	BF_CMD_TXCMD,
-+	BF_CMD_CFG_PHY,
-+	BF_CMD_SND_CNT,
-+	BF_CMD_MAX
++   BF_SOUNDING_OFF = 0,
++   BF_SOUNDING_ON,
++   BF_DATA_PACKET_APPLY,
++   BF_PFMU_MEM_ALLOCATE,
++   BF_PFMU_MEM_RELEASE,
++   BF_PFMU_TAG_READ,
++   BF_PFMU_TAG_WRITE,
++   BF_PROFILE_READ,
++   BF_PROFILE_WRITE,
++   BF_PN_READ,
++   BF_PN_WRITE,
++   BF_PFMU_MEM_ALLOC_MAP_READ,
++   BF_AID_SET,
++   BF_STA_REC_READ,
++   BF_PHASE_CALIBRATION,
++   BF_IBF_PHASE_COMP,
++   BF_LNA_GAIN_CONFIG,
++   BF_PROFILE_WRITE_20M_ALL,
++   BF_APCLIENT_CLUSTER,
++   BF_AWARE_CTRL,
++   BF_HW_ENABLE_STATUS_UPDATE,
++   BF_REPT_CLONED_STA_TO_NORMAL_STA,
++   BF_GET_QD,
++   BF_BFEE_HW_CTRL,
++   BF_PFMU_SW_TAG_WRITE,
++   BF_MOD_EN_CTRL,
++   BF_DYNSND_EN_INTR,
++   BF_DYNSND_CFG_DMCS_TH,
++   BF_DYNSND_EN_PFID_INTR,
++   BF_CONFIG,
++   BF_PFMU_DATA_WRITE,
++   BF_FBRPT_DBG_INFO_READ,
++   BF_CMD_TXSND_INFO,
++   BF_CMD_PLY_INFO,
++   BF_CMD_MU_METRIC,
++   BF_CMD_TXCMD,
++   BF_CMD_CFG_PHY,
++   BF_CMD_SND_CNT,
++   BF_CMD_MAX
 +};
 +
 +enum {
-+	BF_SND_READ_INFO = 0,
-+	BF_SND_CFG_OPT,
-+	BF_SND_CFG_INTV,
-+	BF_SND_STA_STOP,
-+	BF_SND_CFG_MAX_STA,
-+	BF_SND_CFG_BFRP,
-+	BF_SND_CFG_INF
++   BF_SND_READ_INFO = 0,
++   BF_SND_CFG_OPT,
++   BF_SND_CFG_INTV,
++   BF_SND_STA_STOP,
++   BF_SND_CFG_MAX_STA,
++   BF_SND_CFG_BFRP,
++   BF_SND_CFG_INF
 +};
 +
 +enum {
-+	MURU_UPDATE = 0,
-+	MURU_DL_USER_CNT,
-+	MURU_UL_USER_CNT,
-+	MURU_DL_INIT,
-+	MURU_UL_INIT,
++   MURU_UPDATE = 0,
++   MURU_DL_USER_CNT,
++   MURU_UL_USER_CNT,
++   MURU_DL_INIT,
++   MURU_UL_INIT,
 +};
 +#endif
  
  #endif
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index c4f8a6ad..6c6c2424 100644
+index d702532..11e92fe 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
-@@ -661,6 +661,19 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
+@@ -662,6 +662,19 @@ void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
  #endif
  
  #ifdef CONFIG_MTK_VENDOR
@@ -869,32 +867,32 @@
  int mt7915_mcu_set_csi(struct mt7915_phy *phy, u8 mode,
  			u8 cfg, u8 v1, u32 v2, u8 *mac_addr);
 diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
-index d2dbae45..815be6d8 100644
+index e239df9..222268f 100644
 --- a/mt7915/mtk_debugfs.c
 +++ b/mt7915/mtk_debugfs.c
 @@ -2486,7 +2486,8 @@ static int mt7915_muru_onoff_get(void *data, u64 *val)
  
- 	*val = dev->dbg.muru_onoff;
+        *val = dev->dbg.muru_onoff;
  
--	printk("mumimo ul:%d, mumimo dl:%d, ofdma ul:%d, ofdma dl:%d\n",
-+	printk("cert mumimo dl:%d, mumimo ul:%d, mumimo dl:%d, ofdma ul:%d, ofdma dl:%d\n",
-+		!!(dev->dbg.muru_onoff & MUMIMO_DL_CERT),
- 		!!(dev->dbg.muru_onoff & MUMIMO_UL),
- 		!!(dev->dbg.muru_onoff & MUMIMO_DL),
- 		!!(dev->dbg.muru_onoff & OFDMA_UL),
+-       printk("mumimo ul:%d, mumimo dl:%d, ofdma ul:%d, ofdma dl:%d\n",
++	   printk("cert mumimo dl:%d, mumimo ul:%d, mumimo dl:%d, ofdma ul:%d, ofdma dl:%d\n",
++               !!(dev->dbg.muru_onoff & MUMIMO_DL_CERT),
+                !!(dev->dbg.muru_onoff & MUMIMO_UL),
+                !!(dev->dbg.muru_onoff & MUMIMO_DL),
+                !!(dev->dbg.muru_onoff & OFDMA_UL),
 @@ -2499,8 +2500,8 @@ static int mt7915_muru_onoff_set(void *data, u64 val)
  {
- 	struct mt7915_dev *dev = data;
+        struct mt7915_dev *dev = data;
  
--	if (val > 15) {
--		printk("Wrong value! The value is between 0 ~ 15.\n");
-+	if (val > 31) {
-+		printk("Wrong value! The value is between 0 ~ 31.\n");
- 		goto exit;
- 	}
+-       if (val > 15) {
+-               printk("Wrong value! The value is between 0 ~ 15.\n");
++       if (val > 31) {
++               printk("Wrong value! The value is between 0 ~ 31.\n");
+                goto exit;
+        }
  
 diff --git a/mt7915/vendor.c b/mt7915/vendor.c
-index b94d787e..7456c577 100644
+index b94d787..7456c57 100644
 --- a/mt7915/vendor.c
 +++ b/mt7915/vendor.c
 @@ -22,6 +22,29 @@ csi_ctrl_policy[NUM_MTK_VENDOR_ATTRS_CSI_CTRL] = {
@@ -1106,7 +1104,7 @@
  };
  
 diff --git a/mt7915/vendor.h b/mt7915/vendor.h
-index 976817f3..1b08321c 100644
+index 976817f..1b08321 100644
 --- a/mt7915/vendor.h
 +++ b/mt7915/vendor.h
 @@ -6,6 +6,48 @@
@@ -1159,5 +1157,5 @@
  
  enum mtk_vendor_attr_csi_ctrl {
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1006-mt76-mt7915-add-L0.5-system-error-recovery-support.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1006-mt76-mt7915-add-L0.5-system-error-recovery-support.patch
index 59af5bb..45c4f47 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1006-mt76-mt7915-add-L0.5-system-error-recovery-support.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1006-mt76-mt7915-add-L0.5-system-error-recovery-support.patch
@@ -1,24 +1,24 @@
-From c27f0452975f76f67a53a67cf808ba49f8e3c51b Mon Sep 17 00:00:00 2001
+From e67f8f36aeefd28730ea21dc82b946c7fba4dc09 Mon Sep 17 00:00:00 2001
 From: Bo Jiao <Bo.Jiao@mediatek.com>
 Date: Wed, 22 Jun 2022 10:51:59 +0800
 Subject: [PATCH 1006/1008] mt76: mt7915: add L0.5 system error recovery
  support
 
 ---
- .../wireless/mediatek/mt76/mt7915/debugfs.c   |  88 ++++--
- .../net/wireless/mediatek/mt76/mt7915/dma.c   |  48 +++
- .../net/wireless/mediatek/mt76/mt7915/init.c  |   8 +-
- .../net/wireless/mediatek/mt76/mt7915/mac.c   | 284 ++++++++++++++----
- .../net/wireless/mediatek/mt76/mt7915/main.c  |  19 +-
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   |  95 +++++-
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   |   3 +-
- .../net/wireless/mediatek/mt76/mt7915/mmio.c  |   8 +-
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |  23 ++
- .../net/wireless/mediatek/mt76/mt7915/regs.h  |  16 +
+ mt7915/debugfs.c |  88 ++++++++++++---
+ mt7915/dma.c     |  48 ++++++++
+ mt7915/init.c    |   8 +-
+ mt7915/mac.c     | 284 +++++++++++++++++++++++++++++++++++++----------
+ mt7915/main.c    |  19 +++-
+ mt7915/mcu.c     |  95 ++++++++++++++--
+ mt7915/mcu.h     |   3 +-
+ mt7915/mmio.c    |   8 +-
+ mt7915/mt7915.h  |  23 ++++
+ mt7915/regs.h    |  16 +++
  10 files changed, 493 insertions(+), 99 deletions(-)
 
 diff --git a/mt7915/debugfs.c b/mt7915/debugfs.c
-index 0cfb6068..07de2eef 100644
+index 0cfb606..07de2ee 100644
 --- a/mt7915/debugfs.c
 +++ b/mt7915/debugfs.c
 @@ -52,12 +52,17 @@ static ssize_t
@@ -142,7 +142,7 @@
  	kfree(buff);
  	return ret;
 diff --git a/mt7915/dma.c b/mt7915/dma.c
-index c2d655cd..9e3d14db 100644
+index c2d655c..9e3d14d 100644
 --- a/mt7915/dma.c
 +++ b/mt7915/dma.c
 @@ -486,6 +486,54 @@ int mt7915_dma_init(struct mt7915_dev *dev, struct mt7915_phy *phy2)
@@ -201,7 +201,7 @@
  {
  	mt7915_dma_disable(dev, true);
 diff --git a/mt7915/init.c b/mt7915/init.c
-index 02d1b6d8..0d5109a3 100644
+index 02d1b6d..0d5109a 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
 @@ -262,7 +262,7 @@ static void mt7915_led_set_brightness(struct led_classdev *led_cdev,
@@ -241,7 +241,7 @@
  
  unreg_thermal:
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index 9058c750..05932707 100644
+index 9058c75..0593270 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -3,6 +3,7 @@
@@ -583,7 +583,7 @@
  {
  	struct mt7915_dev *dev = phy->dev;
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 90543596..42a0ece7 100644
+index c2304db..dc5e4b0 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
 @@ -20,17 +20,13 @@ static bool mt7915_dev_running(struct mt7915_dev *dev)
@@ -605,7 +605,7 @@
  	running = mt7915_dev_running(dev);
  
  	if (!running) {
-@@ -80,6 +76,18 @@ static int mt7915_start(struct ieee80211_hw *hw)
+@@ -84,6 +80,18 @@ static int mt7915_start(struct ieee80211_hw *hw)
  		mt7915_mac_reset_counters(phy);
  
  out:
@@ -624,7 +624,7 @@
  	mutex_unlock(&dev->mt76.mutex);
  
  	return ret;
-@@ -91,6 +99,7 @@ static void mt7915_stop(struct ieee80211_hw *hw)
+@@ -95,6 +103,7 @@ static void mt7915_stop(struct ieee80211_hw *hw)
  	struct mt7915_phy *phy = mt7915_hw_phy(hw);
  
  	cancel_delayed_work_sync(&phy->mt76->mac_work);
@@ -633,7 +633,7 @@
  	mutex_lock(&dev->mt76.mutex);
  
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 6ae4d159..34409759 100644
+index 759d615..65d21ee 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -150,19 +150,90 @@ mt7915_mcu_set_sta_ht_mcs(struct ieee80211_sta *sta, u8 *ht_mcs,
@@ -769,7 +769,7 @@
  {
  	__mt76_mcu_restart(&dev->mt76);
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index 7418f78c..4c5482b2 100644
+index 7b1a521..464e771 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -452,8 +452,9 @@ enum {
@@ -784,7 +784,7 @@
  	SER_SET_RECOVER_L3_RX_ABORT,
  	SER_SET_RECOVER_L3_TX_ABORT,
 diff --git a/mt7915/mmio.c b/mt7915/mmio.c
-index a8e3810e..bccb1084 100644
+index a8e3810..bccb108 100644
 --- a/mt7915/mmio.c
 +++ b/mt7915/mmio.c
 @@ -24,6 +24,7 @@ static const u32 mt7915_reg[] = {
@@ -825,7 +825,7 @@
  	}
  }
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 6c6c2424..20aeca77 100644
+index 11e92fe..9f5da64 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -352,6 +352,15 @@ struct mt7915_dev {
@@ -844,7 +844,7 @@
  
  	struct list_head sta_rc_list;
  	struct list_head sta_poll_list;
-@@ -415,6 +424,12 @@ enum {
+@@ -416,6 +425,12 @@ enum {
  	__MT_WFDMA_MAX,
  };
  
@@ -857,7 +857,7 @@
  enum {
  	MT_RX_SEL0,
  	MT_RX_SEL1,
-@@ -512,6 +527,14 @@ s8 mt7915_eeprom_get_power_delta(struct mt7915_dev *dev, int band);
+@@ -513,6 +528,14 @@ s8 mt7915_eeprom_get_power_delta(struct mt7915_dev *dev, int band);
  int mt7915_dma_init(struct mt7915_dev *dev, struct mt7915_phy *phy2);
  void mt7915_dma_prefetch(struct mt7915_dev *dev);
  void mt7915_dma_cleanup(struct mt7915_dev *dev);
@@ -873,7 +873,7 @@
  int mt7915_mcu_twt_agrt_update(struct mt7915_dev *dev,
  			       struct mt7915_vif *mvif,
 diff --git a/mt7915/regs.h b/mt7915/regs.h
-index c7c9e411..47bae86e 100644
+index c7c9e41..47bae86 100644
 --- a/mt7915/regs.h
 +++ b/mt7915/regs.h
 @@ -32,6 +32,7 @@ enum reg_rev {
@@ -928,5 +928,5 @@
  #define MT_LED_TOP_BASE			0x18013000
  #define MT_LED_PHYS(_n)			(MT_LED_TOP_BASE + (_n))
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1007-mt76-mt7915-add-support-for-runtime-set-in-band-disc.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1007-mt76-mt7915-add-support-for-runtime-set-in-band-disc.patch
index fb5e85b..6b9eb74 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1007-mt76-mt7915-add-support-for-runtime-set-in-band-disc.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1007-mt76-mt7915-add-support-for-runtime-set-in-band-disc.patch
@@ -1,4 +1,4 @@
-From 7a1c00a4418ca3b5cf4e41aaeaca56b9f9b64b63 Mon Sep 17 00:00:00 2001
+From 274c1a2fe580cc2f1948b7f53df228eee8a20ba3 Mon Sep 17 00:00:00 2001
 From: MeiChia Chiu <meichia.chiu@mediatek.com>
 Date: Fri, 27 May 2022 15:51:48 +0800
 Subject: [PATCH 1007/1008] mt76: mt7915:add support for runtime set in-band
@@ -6,11 +6,11 @@
 
 Signed-off-by: MeiChia Chiu <MeiChia.Chiu@mediatek.com>
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/mcu.c | 5 ++---
+ mt7915/mcu.c | 5 ++---
  1 file changed, 2 insertions(+), 3 deletions(-)
 
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 34409759..a3ccc7a2 100644
+index 65d21ee..7f2161f 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -2006,8 +2006,7 @@ mt7915_mcu_beacon_inband_discov(struct mt7915_dev *dev, struct ieee80211_vif *vi
@@ -33,5 +33,5 @@
  	buf = (u8 *)tlv + sizeof(*discov);
  
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1008-mt76-mt7915-add-mt76-vendor-muru-onoff-command.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1008-mt76-mt7915-add-mt76-vendor-muru-onoff-command.patch
index cd43f1c..7d7ce6b 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1008-mt76-mt7915-add-mt76-vendor-muru-onoff-command.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1008-mt76-mt7915-add-mt76-vendor-muru-onoff-command.patch
@@ -1,20 +1,20 @@
-From acba3f5a21a66d8f1f46943d053e94b65762684c Mon Sep 17 00:00:00 2001
+From 969161a225dd7a1b4c3ecdd0b6d1376566f32f27 Mon Sep 17 00:00:00 2001
 From: MeiChia Chiu <meichia.chiu@mediatek.com>
 Date: Wed, 22 Jun 2022 10:53:43 +0800
 Subject: [PATCH 1008/1008] mt76: mt7915: add mt76 vendor muru onoff command
 
 ---
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   |  7 +++
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   |  1 +
- .../wireless/mediatek/mt76/mt7915/vendor.c    | 43 +++++++++++++++++++
- .../wireless/mediatek/mt76/mt7915/vendor.h    | 12 ++++++
+ mt7915/mcu.c    |  7 +++++++
+ mt7915/mcu.h    |  1 +
+ mt7915/vendor.c | 43 +++++++++++++++++++++++++++++++++++++++++++
+ mt7915/vendor.h | 12 ++++++++++++
  4 files changed, 63 insertions(+)
 
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index a3ccc7a2..e9169ed5 100644
+index 7f2161f..aee3a8c 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
-@@ -3654,6 +3654,13 @@ void mt7915_set_wireless_vif(void *data, u8 *mac, struct ieee80211_vif *vif)
+@@ -3656,6 +3656,13 @@ void mt7915_set_wireless_vif(void *data, u8 *mac, struct ieee80211_vif *vif)
  		if (val == 0)
  			dev->dbg.muru_onoff = MUMIMO_DL_CERT | MUMIMO_DL;
  		break;
@@ -29,7 +29,7 @@
  }
  
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index 4c5482b2..d96b1a66 100644
+index 464e771..75442ba 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -402,6 +402,7 @@ enum {
@@ -41,7 +41,7 @@
  };
  
 diff --git a/mt7915/vendor.c b/mt7915/vendor.c
-index 7456c577..c7551848 100644
+index 7456c57..c755184 100644
 --- a/mt7915/vendor.c
 +++ b/mt7915/vendor.c
 @@ -34,6 +34,11 @@ wireless_ctrl_policy[NUM_MTK_VENDOR_ATTRS_WIRELESS_CTRL] = {
@@ -109,7 +109,7 @@
  };
  
 diff --git a/mt7915/vendor.h b/mt7915/vendor.h
-index 1b08321c..a8e4ebf9 100644
+index 1b08321..a8e4ebf 100644
 --- a/mt7915/vendor.h
 +++ b/mt7915/vendor.h
 @@ -8,6 +8,7 @@ enum mtk_nl80211_vendor_subcmds {
@@ -139,5 +139,5 @@
  	MTK_VENDOR_ATTR_RFEATURE_CTRL_UNSPEC,
  
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1111-mt76-testmode-additional-supports.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1111-mt76-testmode-additional-supports.patch
index aee7bfc..292e2fc 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1111-mt76-testmode-additional-supports.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1111-mt76-testmode-additional-supports.patch
@@ -1,33 +1,33 @@
-From c355ab2ff11c55754536215d29d9659b3ff4cfe2 Mon Sep 17 00:00:00 2001
+From de93c29a69f28d2cf9d2e10fbd3cb1ebda771548 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 1111/1115] mt76: testmode: additional supports
 
 Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
 ---
- drivers/net/wireless/mediatek/mt76/dma.c      |    3 +-
- drivers/net/wireless/mediatek/mt76/mac80211.c |   12 +
- drivers/net/wireless/mediatek/mt76/mt76.h     |  111 +-
- .../wireless/mediatek/mt76/mt76_connac_mcu.c  |    4 +
- .../wireless/mediatek/mt76/mt76_connac_mcu.h  |    2 +
- .../net/wireless/mediatek/mt76/mt7915/init.c  |    2 +-
- .../net/wireless/mediatek/mt76/mt7915/mac.c   |   37 +-
- .../net/wireless/mediatek/mt76/mt7915/main.c  |    2 +-
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   |   10 +-
- .../net/wireless/mediatek/mt76/mt7915/mcu.h   |   29 +-
- .../net/wireless/mediatek/mt76/mt7915/mmio.c  |    2 +
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |   14 +-
- .../net/wireless/mediatek/mt76/mt7915/regs.h  |    3 +
- .../wireless/mediatek/mt76/mt7915/testmode.c  | 1171 +++++++++++++++--
- .../wireless/mediatek/mt76/mt7915/testmode.h  |  278 ++++
- drivers/net/wireless/mediatek/mt76/testmode.c |  274 +++-
- drivers/net/wireless/mediatek/mt76/testmode.h |   75 ++
- .../net/wireless/mediatek/mt76/tools/fields.c |   80 ++
- drivers/net/wireless/mediatek/mt76/tx.c       |    3 +-
- 19 files changed, 1962 insertions(+), 150 deletions(-)
+ dma.c             |    3 +-
+ mac80211.c        |   12 +
+ mt76.h            |  111 ++++-
+ mt76_connac_mcu.c |    4 +
+ mt76_connac_mcu.h |    2 +
+ mt7915/init.c     |    2 +-
+ mt7915/mac.c      |   37 +-
+ mt7915/main.c     |    2 +-
+ mt7915/mcu.c      |   10 +-
+ mt7915/mcu.h      |   28 +-
+ mt7915/mmio.c     |    2 +
+ mt7915/mt7915.h   |   14 +-
+ mt7915/regs.h     |    3 +
+ mt7915/testmode.c | 1171 ++++++++++++++++++++++++++++++++++++++++++---
+ mt7915/testmode.h |  278 +++++++++++
+ testmode.c        |  274 +++++++++--
+ testmode.h        |   75 +++
+ tools/fields.c    |   80 ++++
+ tx.c              |    3 +-
+ 19 files changed, 1962 insertions(+), 149 deletions(-)
 
 diff --git a/dma.c b/dma.c
-index 30de8be4..f6f5f129 100644
+index 30de8be..f6f5f12 100644
 --- a/dma.c
 +++ b/dma.c
 @@ -426,8 +426,7 @@ free:
@@ -41,7 +41,7 @@
  #endif
  
 diff --git a/mac80211.c b/mac80211.c
-index c1df063f..dc3c63e9 100644
+index c1df063..dc3c63e 100644
 --- a/mac80211.c
 +++ b/mac80211.c
 @@ -55,6 +55,13 @@ static const struct ieee80211_channel mt76_channels_5ghz[] = {
@@ -71,7 +71,7 @@
  
  static const struct ieee80211_channel mt76_channels_6ghz[] = {
 diff --git a/mt76.h b/mt76.h
-index 28720ee4..062c5ce4 100644
+index 28720ee..062c5ce 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -602,6 +602,21 @@ struct mt76_testmode_ops {
@@ -235,7 +235,7 @@
  static inline void mt76_testmode_reset(struct mt76_phy *phy, bool disable)
  {
 diff --git a/mt76_connac_mcu.c b/mt76_connac_mcu.c
-index 261181dc..cd350689 100644
+index 261181d..cd35068 100644
 --- a/mt76_connac_mcu.c
 +++ b/mt76_connac_mcu.c
 @@ -391,6 +391,7 @@ void mt76_connac_mcu_sta_basic_tlv(struct sk_buff *skb,
@@ -257,7 +257,7 @@
  		return;
  
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index 32e540cc..a0e6fa6e 100644
+index 32e540c..a0e6fa6 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -967,6 +967,7 @@ enum {
@@ -277,7 +277,7 @@
  	MCU_EXT_CMD_CSI_CTRL = 0xc2,
  };
 diff --git a/mt7915/init.c b/mt7915/init.c
-index 0d5109a3..b549fa04 100644
+index 0d5109a..b549fa0 100644
 --- a/mt7915/init.c
 +++ b/mt7915/init.c
 @@ -576,7 +576,7 @@ static void mt7915_init_work(struct work_struct *work)
@@ -290,7 +290,7 @@
  	mt7915_init_txpower(dev, &dev->mphy.sband_2g.sband);
  	mt7915_init_txpower(dev, &dev->mphy.sband_5g.sband);
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index 05932707..8fd46183 100644
+index 0593270..8fd4618 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -565,17 +565,39 @@ mt7915_mac_write_txwi_tm(struct mt7915_phy *phy, __le32 *txwi,
@@ -356,10 +356,10 @@
  }
  
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 42a0ece7..41bc2c30 100644
+index dc5e4b0..e4b2076 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -220,7 +220,7 @@ static int mt7915_add_interface(struct ieee80211_hw *hw,
+@@ -224,7 +224,7 @@ static int mt7915_add_interface(struct ieee80211_hw *hw,
  	mvif->phy = phy;
  	mvif->mt76.band_idx = phy->band_idx;
  
@@ -369,7 +369,7 @@
  		mvif->mt76.wmm_idx += 2;
  
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index e9169ed5..ee3b1d76 100644
+index aee3a8c..810d72e 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -434,6 +434,11 @@ mt7915_mcu_rx_ext_event(struct mt7915_dev *dev, struct sk_buff *skb)
@@ -410,7 +410,7 @@
  
  	return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(EFUSE_BUFFER_MODE),
 diff --git a/mt7915/mcu.h b/mt7915/mcu.h
-index d96b1a66..f6b7d1c3 100644
+index 75442ba..873a805 100644
 --- a/mt7915/mcu.h
 +++ b/mt7915/mcu.h
 @@ -8,10 +8,15 @@
@@ -442,33 +442,32 @@
  	MT_BF_TYPE_UPDATE = 20,
  	MT_BF_MODULE_UPDATE = 25
  };
-@@ -662,11 +673,19 @@ struct mt7915_muru {
+@@ -661,10 +672,19 @@ struct mt7915_muru {
  #define MURU_OFDMA_SCH_TYPE_UL          BIT(1)
  
  /* Common Config */
 -#define MURU_COMM_PPDU_FMT              BIT(0)
 -#define MURU_COMM_SCH_TYPE              BIT(1)
 -#define MURU_COMM_SET                   (MURU_COMM_PPDU_FMT | MURU_COMM_SCH_TYPE)
--
 -/* DL&UL User config*/
 +/* #define MURU_COMM_PPDU_FMT              BIT(0) */
 +/* #define MURU_COMM_SCH_TYPE              BIT(1) */
 +/* #define MURU_COMM_SET                   (MURU_COMM_PPDU_FMT | MURU_COMM_SCH_TYPE) */
-+#define MURU_COMM_PPDU_FMT		BIT(0)
-+#define MURU_COMM_SCH_TYPE		BIT(1)
-+#define MURU_COMM_BAND			BIT(2)
-+#define MURU_COMM_WMM			BIT(3)
-+#define MURU_COMM_SPE_IDX		BIT(4)
-+#define MURU_COMM_PROC_TYPE		BIT(5)
-+#define MURU_COMM_SET		(MURU_COMM_PPDU_FMT | MURU_COMM_BAND | \
-+				 MURU_COMM_WMM | MURU_COMM_SPE_IDX)
++#define MURU_COMM_PPDU_FMT     BIT(0)
++#define MURU_COMM_SCH_TYPE     BIT(1)
++#define MURU_COMM_BAND         BIT(2)
++#define MURU_COMM_WMM          BIT(3)
++#define MURU_COMM_SPE_IDX      BIT(4)
++#define MURU_COMM_PROC_TYPE        BIT(5)
++#define MURU_COMM_SET      (MURU_COMM_PPDU_FMT | MURU_COMM_BAND | \
++				MURU_COMM_WMM | MURU_COMM_SPE_IDX)
 +
 +/* DL&UL User config */
  #define MURU_USER_CNT                   BIT(4)
  
  enum {
 diff --git a/mt7915/mmio.c b/mt7915/mmio.c
-index bccb1084..a84970d7 100644
+index bccb108..a84970d 100644
 --- a/mt7915/mmio.c
 +++ b/mt7915/mmio.c
 @@ -76,6 +76,7 @@ static const u32 mt7915_offs[] = {
@@ -488,7 +487,7 @@
  	[AGG_PCR0]		= 0x040,
  	[AGG_ACR0]		= 0x054,
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 20aeca77..1a279844 100644
+index 9f5da64..ff92e55 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -303,6 +303,9 @@ struct mt7915_phy {
@@ -516,7 +515,7 @@
  #ifdef MTK_DEBUG
  	u16 wlan_idx;
  	struct {
-@@ -570,7 +581,7 @@ int mt7915_mcu_set_fixed_rate_ctrl(struct mt7915_dev *dev,
+@@ -571,7 +582,7 @@ int mt7915_mcu_set_fixed_rate_ctrl(struct mt7915_dev *dev,
  				   struct ieee80211_vif *vif,
  				   struct ieee80211_sta *sta,
  				   void *data, u32 field);
@@ -525,7 +524,7 @@
  int mt7915_mcu_get_eeprom(struct mt7915_dev *dev, u32 offset);
  int mt7915_mcu_get_eeprom_free_block(struct mt7915_dev *dev, u8 *block_num);
  int mt7915_mcu_set_mac(struct mt7915_dev *dev, int band, bool enable,
-@@ -603,6 +614,7 @@ int mt7915_mcu_fw_log_2_host(struct mt7915_dev *dev, u8 type, u8 ctrl);
+@@ -604,6 +615,7 @@ 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);
@@ -534,7 +533,7 @@
  static inline u16 mt7915_wtbl_size(struct mt7915_dev *dev)
  {
 diff --git a/mt7915/regs.h b/mt7915/regs.h
-index 47bae86e..444440e1 100644
+index 47bae86..444440e 100644
 --- a/mt7915/regs.h
 +++ b/mt7915/regs.h
 @@ -51,6 +51,7 @@ enum offs_rev {
@@ -555,7 +554,7 @@
  							  (_n) * 4))
  #define MT_AGG_PCR0(_band, _n)		MT_WF_AGG(_band, (__OFFS(AGG_PCR0) +	\
 diff --git a/mt7915/testmode.c b/mt7915/testmode.c
-index 123ceaf9..a0a9f7be 100644
+index 123ceaf..a0a9f7b 100644
 --- a/mt7915/testmode.c
 +++ b/mt7915/testmode.c
 @@ -9,6 +9,9 @@
@@ -1888,7 +1887,7 @@
 +	.set_eeprom = mt7915_tm_set_eeprom,
  };
 diff --git a/mt7915/testmode.h b/mt7915/testmode.h
-index a1c54c89..01b08e9e 100644
+index a1c54c8..01b08e9 100644
 --- a/mt7915/testmode.h
 +++ b/mt7915/testmode.h
 @@ -4,6 +4,8 @@
@@ -2203,7 +2202,7 @@
 +
  #endif
 diff --git a/testmode.c b/testmode.c
-index e6d1f702..2c699ac8 100644
+index e6d1f70..2c699ac 100644
 --- a/testmode.c
 +++ b/testmode.c
 @@ -25,28 +25,15 @@ const struct nla_policy mt76_tm_policy[NUM_MT76_TM_ATTRS] = {
@@ -2669,7 +2668,7 @@
  		a = nla_nest_start(msg, MT76_TM_ATTR_TX_POWER);
  		if (!a)
 diff --git a/testmode.h b/testmode.h
-index 89613266..57949f2b 100644
+index 8961326..57949f2 100644
 --- a/testmode.h
 +++ b/testmode.h
 @@ -6,6 +6,8 @@
@@ -2774,7 +2773,7 @@
 +
  #endif
 diff --git a/tools/fields.c b/tools/fields.c
-index e3f69089..6e36ab27 100644
+index e3f6908..6e36ab2 100644
 --- a/tools/fields.c
 +++ b/tools/fields.c
 @@ -10,6 +10,7 @@ static const char * const testmode_state[] = {
@@ -2900,7 +2899,7 @@
  };
  
 diff --git a/tx.c b/tx.c
-index 02067edc..0457c3eb 100644
+index 02067ed..0457c3e 100644
 --- a/tx.c
 +++ b/tx.c
 @@ -245,8 +245,7 @@ void __mt76_tx_complete_skb(struct mt76_dev *dev, u16 wcid_idx, struct sk_buff *
@@ -2914,5 +2913,5 @@
  			wake_up(&dev->tx_wait);
  
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1112-mt76-mt7915-init-rssi-in-WTBL-when-add-station.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1112-mt76-mt7915-init-rssi-in-WTBL-when-add-station.patch
index 523648a..3bcc928 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1112-mt76-mt7915-init-rssi-in-WTBL-when-add-station.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1112-mt76-mt7915-init-rssi-in-WTBL-when-add-station.patch
@@ -1,17 +1,17 @@
-From ca953d62563e4084e1ea3b81882934e27711ed26 Mon Sep 17 00:00:00 2001
+From 40ba703e0b33d0c1ca7532d556ea9fcf9111f5b8 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Sun, 24 Apr 2022 10:07:00 +0800
 Subject: [PATCH 1112/1115] mt76: mt7915: init rssi in WTBL when add station
 
 ---
- drivers/net/wireless/mediatek/mt76/mt7915/main.c | 4 ++++
+ mt7915/main.c | 4 ++++
  1 file changed, 4 insertions(+)
 
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 41bc2c30..5f3e2c2d 100644
+index e4b2076..ebff255 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -662,6 +662,7 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -666,6 +666,7 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
  	struct mt7915_phy *phy;
  #endif
  	int ret, idx;
@@ -19,7 +19,7 @@
  
  	idx = mt76_wcid_alloc(dev->mt76.wcid_mask, MT7915_WTBL_STA);
  	if (idx < 0)
-@@ -683,6 +684,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+@@ -687,6 +688,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
  	if (ret)
  		return ret;
  
@@ -30,5 +30,5 @@
  	mt7915_vendor_amnt_sta_remove(mvif->phy, sta);
  #endif
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1113-mt76-mt7915-drop-packets-when-TWT-stations-use-more-.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1113-mt76-mt7915-drop-packets-when-TWT-stations-use-more-.patch
index 8777b5f..e077acf 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1113-mt76-mt7915-drop-packets-when-TWT-stations-use-more-.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1113-mt76-mt7915-drop-packets-when-TWT-stations-use-more-.patch
@@ -1,16 +1,16 @@
-From 627e2efd654f0a2ff430a1c22e4ac0717eac125d Mon Sep 17 00:00:00 2001
+From 23de5ffe66f73e5fbd22a441f7ca1f612f1bd158 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Wed, 22 Jun 2022 10:58:37 +0800
 Subject: [PATCH 1113/1115] mt76: mt7915: drop packets when TWT stations use
  more tokens than 128
 
 ---
- .../net/wireless/mediatek/mt76/mt7915/mac.c   | 21 ++++++++++++++++---
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |  2 ++
+ mt7915/mac.c    | 21 ++++++++++++++++++---
+ mt7915/mt7915.h |  2 ++
  2 files changed, 20 insertions(+), 3 deletions(-)
 
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index 8fd46183..fd0dd509 100644
+index 8fd4618..fd0dd50 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -724,6 +724,7 @@ int mt7915_tx_prepare_skb(struct mt76_dev *mdev, void *txwi_ptr,
@@ -81,7 +81,7 @@
  			mt7915_txwi_free(dev, txwi, sta, &free_list);
  		}
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index 1a279844..e1e3ce2d 100644
+index ff92e55..6235014 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
 @@ -136,6 +136,8 @@ struct mt7915_sta {
@@ -94,5 +94,5 @@
  
  struct mt7915_vif_cap {
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1114-mt76-airtime-fairness-feature-off-in-mac80211.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1114-mt76-airtime-fairness-feature-off-in-mac80211.patch
index cdf982e..391933b 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1114-mt76-airtime-fairness-feature-off-in-mac80211.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1114-mt76-airtime-fairness-feature-off-in-mac80211.patch
@@ -1,14 +1,14 @@
-From 29464597b5c41cd45618b034c5e4338217fa93d4 Mon Sep 17 00:00:00 2001
+From 3cbacf679f9fba714955123374dd59fbe33d7a32 Mon Sep 17 00:00:00 2001
 From: Evelyn Tsai <evelyn.tsai@mediatek.com>
 Date: Fri, 6 May 2022 15:58:42 +0800
 Subject: [PATCH 1114/1115] mt76: airtime fairness feature off in mac80211
 
 ---
- drivers/net/wireless/mediatek/mt76/mac80211.c | 1 -
+ mac80211.c | 1 -
  1 file changed, 1 deletion(-)
 
 diff --git a/mac80211.c b/mac80211.c
-index dc3c63e9..5600a09a 100644
+index dc3c63e..5600a09 100644
 --- a/mac80211.c
 +++ b/mac80211.c
 @@ -427,7 +427,6 @@ mt76_phy_init(struct mt76_phy *phy, struct ieee80211_hw *hw)
@@ -20,5 +20,5 @@
  
  	wiphy->available_antennas_tx = phy->antenna_mask;
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1115-mt76-mt7915-add-mt7986-and-mt7916-pre-calibration.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1115-mt76-mt7915-add-mt7986-and-mt7916-pre-calibration.patch
index 19db641..0e446a8 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/1115-mt76-mt7915-add-mt7986-and-mt7916-pre-calibration.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1115-mt76-mt7915-add-mt7986-and-mt7916-pre-calibration.patch
@@ -1,4 +1,4 @@
-From 91a666148d2ff1a7c4cb43afd0cfb2df56cd8c71 Mon Sep 17 00:00:00 2001
+From c07c8c699e63f32f431a7439145ecf1844690ca3 Mon Sep 17 00:00:00 2001
 From: Peter Chiu <chui-hao.chiu@mediatek.com>
 Date: Fri, 20 May 2022 19:19:25 +0800
 Subject: [PATCH 1115/1115] mt76: mt7915: add mt7986 and mt7916 pre-calibration
@@ -9,13 +9,13 @@
 
 Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
 ---
- .../wireless/mediatek/mt76/mt7915/eeprom.c    | 15 ++--
- .../wireless/mediatek/mt76/mt7915/eeprom.h    | 27 ++++++-
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   | 80 ++++++++++++++-----
+ mt7915/eeprom.c | 15 +++++-----
+ mt7915/eeprom.h | 27 +++++++++++++++--
+ mt7915/mcu.c    | 80 ++++++++++++++++++++++++++++++++++++-------------
  3 files changed, 90 insertions(+), 32 deletions(-)
 
 diff --git a/mt7915/eeprom.c b/mt7915/eeprom.c
-index 4b1a9811..ee3049e5 100644
+index 4b1a981..ee3049e 100644
 --- a/mt7915/eeprom.c
 +++ b/mt7915/eeprom.c
 @@ -9,23 +9,22 @@ static int mt7915_eeprom_load_precal(struct mt7915_dev *dev)
@@ -50,7 +50,7 @@
  
  static int mt7915_check_eeprom(struct mt7915_dev *dev)
 diff --git a/mt7915/eeprom.h b/mt7915/eeprom.h
-index 7578ac6d..e924baef 100644
+index 7578ac6..e924bae 100644
 --- a/mt7915/eeprom.h
 +++ b/mt7915/eeprom.h
 @@ -19,6 +19,7 @@ enum mt7915_eeprom_field {
@@ -103,7 +103,7 @@
  
  #endif
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index ee3b1d76..42f2bda5 100644
+index 810d72e..a16081d 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -2911,9 +2911,10 @@ static int mt7915_mcu_set_pre_cal(struct mt7915_dev *dev, u8 idx,
@@ -252,5 +252,5 @@
  
  	return 0;
 -- 
-2.25.1
+2.18.0
 
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/3000-mt76-remove-WED-support-patch-for-build-err.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/3000-mt76-remove-WED-support-patch-for-build-err.patch
index 2d16db5..2ef225a 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/3000-mt76-remove-WED-support-patch-for-build-err.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/3000-mt76-remove-WED-support-patch-for-build-err.patch
@@ -1,31 +1,31 @@
-From f98398e44c811f22d3bf99a1543d9a4c2af49cd3 Mon Sep 17 00:00:00 2001
+From f4838210b5e80adfa3af028721ee040edff79a48 Mon Sep 17 00:00:00 2001
 From: Sujuan Chen <sujuan.chen@mediatek.com>
 Date: Mon, 6 Jun 2022 20:22:35 +0800
 Subject: [PATCH] mt76:remove WED support patch for build err
 
 ---
- drivers/net/wireless/mediatek/mt76/dma.c      | 160 ++++--------------
- drivers/net/wireless/mediatek/mt76/mac80211.c |   4 +-
- drivers/net/wireless/mediatek/mt76/mmio.c     |   9 +-
- drivers/net/wireless/mediatek/mt76/mt76.h     |  25 +--
- .../net/wireless/mediatek/mt76/mt7603/dma.c   |   8 +-
- .../net/wireless/mediatek/mt76/mt7615/dma.c   |   6 +-
- .../net/wireless/mediatek/mt76/mt76x02_mmio.c |   4 +-
- .../net/wireless/mediatek/mt76/mt7915/dma.c   |  43 +----
- .../net/wireless/mediatek/mt76/mt7915/mac.c   | 139 ++++-----------
- .../net/wireless/mediatek/mt76/mt7915/mac.h   |   2 -
- .../net/wireless/mediatek/mt76/mt7915/main.c  |  36 ----
- .../net/wireless/mediatek/mt76/mt7915/mcu.c   |   3 -
- .../net/wireless/mediatek/mt76/mt7915/mmio.c  |  29 +---
- .../wireless/mediatek/mt76/mt7915/mt7915.h    |   2 -
- .../net/wireless/mediatek/mt76/mt7915/pci.c   |  96 +----------
- .../net/wireless/mediatek/mt76/mt7915/regs.h  |  17 +-
- .../net/wireless/mediatek/mt76/mt7921/dma.c   |   2 +-
- drivers/net/wireless/mediatek/mt76/tx.c       |  16 +-
+ dma.c           | 160 ++++++++++--------------------------------------
+ mac80211.c      |   4 +-
+ mmio.c          |   9 +--
+ mt76.h          |  25 ++------
+ mt7603/dma.c    |   8 +--
+ mt7615/dma.c    |   6 +-
+ mt76x02_mmio.c  |   4 +-
+ mt7915/dma.c    |  43 ++-----------
+ mt7915/mac.c    | 139 ++++++++++-------------------------------
+ mt7915/mac.h    |   2 -
+ mt7915/main.c   |  36 -----------
+ mt7915/mcu.c    |   3 -
+ mt7915/mmio.c   |  29 +++------
+ mt7915/mt7915.h |   2 -
+ mt7915/pci.c    |  96 +++--------------------------
+ mt7915/regs.h   |  17 +----
+ mt7921/dma.c    |   2 +-
+ tx.c            |  16 +----
  18 files changed, 105 insertions(+), 496 deletions(-)
 
 diff --git a/dma.c b/dma.c
-index f6f5f129..3f7456b1 100644
+index f6f5f12..3f7456b 100644
 --- a/dma.c
 +++ b/dma.c
 @@ -7,36 +7,9 @@
@@ -231,7 +231,7 @@
  }
  EXPORT_SYMBOL_GPL(mt76_dma_cleanup);
 diff --git a/mac80211.c b/mac80211.c
-index 5600a09a..78784469 100644
+index 5600a09..7878446 100644
 --- a/mac80211.c
 +++ b/mac80211.c
 @@ -1605,7 +1605,7 @@ EXPORT_SYMBOL_GPL(mt76_get_antenna);
@@ -253,7 +253,7 @@
  	if (err < 0)
  		return ERR_PTR(err);
 diff --git a/mmio.c b/mmio.c
-index 86e3d2ac..26353b6b 100644
+index 86e3d2a..26353b6 100644
 --- a/mmio.c
 +++ b/mmio.c
 @@ -73,13 +73,8 @@ void mt76_set_irq_mask(struct mt76_dev *dev, u32 addr,
@@ -273,7 +273,7 @@
  }
  EXPORT_SYMBOL_GPL(mt76_set_irq_mask);
 diff --git a/mt76.h b/mt76.h
-index 062c5ce4..ed1924c1 100644
+index 062c5ce..ed1924c 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -13,7 +13,6 @@
@@ -356,7 +356,7 @@
  		return PTR_ERR(q);
  
 diff --git a/mt7603/dma.c b/mt7603/dma.c
-index 590cff9d..37b092e3 100644
+index 590cff9..37b092e 100644
 --- a/mt7603/dma.c
 +++ b/mt7603/dma.c
 @@ -173,13 +173,13 @@ int mt7603_dma_init(struct mt7603_dev *dev)
@@ -391,7 +391,7 @@
  		return ret;
  
 diff --git a/mt7615/dma.c b/mt7615/dma.c
-index 3a79a2d4..00aefea1 100644
+index 3a79a2d..00aefea 100644
 --- a/mt7615/dma.c
 +++ b/mt7615/dma.c
 @@ -26,14 +26,14 @@ mt7622_init_tx_queues_multi(struct mt7615_dev *dev)
@@ -421,7 +421,7 @@
  		return ret;
  
 diff --git a/mt76x02_mmio.c b/mt76x02_mmio.c
-index 0fa3c7c3..8bcd8afa 100644
+index 0fa3c7c..8bcd8af 100644
 --- a/mt76x02_mmio.c
 +++ b/mt76x02_mmio.c
 @@ -191,13 +191,13 @@ int mt76x02_dma_init(struct mt76x02_dev *dev)
@@ -441,7 +441,7 @@
  		return ret;
  
 diff --git a/mt7915/dma.c b/mt7915/dma.c
-index 9e3d14db..4358e9bf 100644
+index 9e3d14d..4358e9b 100644
 --- a/mt7915/dma.c
 +++ b/mt7915/dma.c
 @@ -8,16 +8,9 @@
@@ -526,7 +526,7 @@
  		return ret;
  
 diff --git a/mt7915/mac.c b/mt7915/mac.c
-index fd0dd509..1bf3b416 100644
+index fd0dd50..1bf3b41 100644
 --- a/mt7915/mac.c
 +++ b/mt7915/mac.c
 @@ -815,29 +815,6 @@ int mt7915_tx_prepare_skb(struct mt76_dev *mdev, void *txwi_ptr,
@@ -747,7 +747,7 @@
  		mt7915_mcu_rx_event(dev, skb);
  		break;
 diff --git a/mt7915/mac.h b/mt7915/mac.h
-index 6fa9c79f..9986c033 100644
+index 6fa9c79..9986c03 100644
 --- a/mt7915/mac.h
 +++ b/mt7915/mac.h
 @@ -26,12 +26,10 @@ enum rx_pkt_type {
@@ -764,10 +764,10 @@
  #define MT_TX_FREE_LATENCY		GENMASK(12, 0)
  /* 0: success, others: dropped */
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 5f3e2c2d..51b3ccba 100644
+index ebff255..79127b4 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -1418,39 +1418,6 @@ out:
+@@ -1422,39 +1422,6 @@ out:
  	return ret;
  }
  
@@ -807,7 +807,7 @@
  const struct ieee80211_ops mt7915_ops = {
  	.tx = mt7915_tx,
  	.start = mt7915_start,
-@@ -1498,7 +1465,4 @@ const struct ieee80211_ops mt7915_ops = {
+@@ -1502,7 +1469,4 @@ const struct ieee80211_ops mt7915_ops = {
  	.sta_add_debugfs = mt7915_sta_add_debugfs,
  #endif
  	.set_radar_background = mt7915_set_radar_background,
@@ -816,7 +816,7 @@
 -#endif
  };
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index 42f2bda5..716abd58 100644
+index a16081d..46eef36 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -2365,9 +2365,6 @@ int mt7915_run_firmware(struct mt7915_dev *dev)
@@ -830,7 +830,7 @@
  	if (ret)
  		return ret;
 diff --git a/mt7915/mmio.c b/mt7915/mmio.c
-index a84970d7..1f58b2f5 100644
+index a84970d..1f58b2f 100644
 --- a/mt7915/mmio.c
 +++ b/mt7915/mmio.c
 @@ -560,21 +560,15 @@ static void mt7915_rx_poll_complete(struct mt76_dev *mdev,
@@ -881,10 +881,10 @@
  	if (!test_bit(MT76_STATE_INITIALIZED, &dev->mphy.state))
  		return IRQ_NONE;
 diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
-index e1e3ce2d..a81a59b9 100644
+index 6235014..ca95948 100644
 --- a/mt7915/mt7915.h
 +++ b/mt7915/mt7915.h
-@@ -526,8 +526,6 @@ struct mt7915_dev *mt7915_mmio_probe(struct device *pdev,
+@@ -527,8 +527,6 @@ struct mt7915_dev *mt7915_mmio_probe(struct device *pdev,
  void mt7915_wfsys_reset(struct mt7915_dev *dev);
  irqreturn_t mt7915_irq_handler(int irq, void *dev_instance);
  u64 __mt7915_get_tsf(struct ieee80211_hw *hw, struct mt7915_vif *mvif);
@@ -894,7 +894,7 @@
  void mt7915_unregister_device(struct mt7915_dev *dev);
  int mt7915_eeprom_init(struct mt7915_dev *dev);
 diff --git a/mt7915/pci.c b/mt7915/pci.c
-index d74f6097..7cea49f2 100644
+index d74f609..7cea49f 100644
 --- a/mt7915/pci.c
 +++ b/mt7915/pci.c
 @@ -12,9 +12,6 @@
@@ -1032,7 +1032,7 @@
  	mt76_free_device(&dev->mt76);
  
 diff --git a/mt7915/regs.h b/mt7915/regs.h
-index 444440e1..1e7fbcee 100644
+index 444440e..1e7fbce 100644
 --- a/mt7915/regs.h
 +++ b/mt7915/regs.h
 @@ -603,31 +603,18 @@ enum offs_rev {
@@ -1070,7 +1070,7 @@
  #define MT_WFDMA0_PCIE1_BASE		__REG(WFDMA0_PCIE1_ADDR)
  #define MT_WFDMA0_PCIE1(ofs)		(MT_WFDMA0_PCIE1_BASE + (ofs))
 diff --git a/mt7921/dma.c b/mt7921/dma.c
-index 2939cf9b..ca7e20fb 100644
+index 2939cf9..ca7e20f 100644
 --- a/mt7921/dma.c
 +++ b/mt7921/dma.c
 @@ -9,7 +9,7 @@ static int mt7921_init_tx_queues(struct mt7921_phy *phy, int idx, int n_desc)
@@ -1083,7 +1083,7 @@
  		return err;
  
 diff --git a/tx.c b/tx.c
-index 0457c3eb..656b7090 100644
+index 0457c3e..656b709 100644
 --- a/tx.c
 +++ b/tx.c
 @@ -725,12 +725,6 @@ int mt76_token_consume(struct mt76_dev *dev, struct mt76_txwi_cache **ptxwi)
@@ -1119,5 +1119,5 @@
  	    dev->phy.q_tx[0]->blocked)
  		*wake = true;
 -- 
-2.25.1
+2.18.0
 
