[rdkb][Refactor and sync wifi from openwrt]

[Description]
5c19d4f2 [MAC80211][app][Add iwpriv wrapper support for kite]
c8e6d600 [MAC80211][mt76][rebase][fix build failed]
bace4d36 [MAC80211][misc][backport ucode and related packages]
0daf51ff [MAC80211][Rebase Patches][Fix patch fail during WiFi7 build]
7e6109ab [MAC80211][hostapd][Revert set_send_disassoc_frame_timer]
8c8f0e5a [MAC80211][core][Fix kernel warning of check_flush_dependency]
6778e37f [MAC80211][hostapd][Fix 11vmbss using wrong aid pool]
3a85b7b2 [MAC80211][mt76][rework init txpower]
b0234621 [MAC80211][Rebase Patches][Fix WiFi6 build error]
fb51d50c [MAC80211][mt76][Fix txpower issues]
224e6e4b [MAC80211][core][Add support to disable ZWDFS CAC when its channel is overlapped with operating channel]
ea09a4a0 [MAC80211][hostapd][Add support to disable ZWDFS CAC when its channel is overlapped with operating channel]

[Release-log]

Change-Id: I7d7572a642ad3fb4624603369d3c2b2994c5d880
diff --git a/recipes-wifi/linux-mt76/files/patches/0999-wifi-mt76-mt7915-build-pass-for-Linux-Kernel-5.4-fix.patch b/recipes-wifi/linux-mt76/files/patches/0999-wifi-mt76-mt7915-build-pass-for-Linux-Kernel-5.4-fix.patch
index 7d111a9..c874e7a 100644
--- a/recipes-wifi/linux-mt76/files/patches/0999-wifi-mt76-mt7915-build-pass-for-Linux-Kernel-5.4-fix.patch
+++ b/recipes-wifi/linux-mt76/files/patches/0999-wifi-mt76-mt7915-build-pass-for-Linux-Kernel-5.4-fix.patch
@@ -1,4 +1,4 @@
-From cb562c01d7c29ea4b15d31153278b94670650ad0 Mon Sep 17 00:00:00 2001
+From 96d8883e50abdbe6261de3a0aac64e5e7edbb248 Mon Sep 17 00:00:00 2001
 From: Evelyn Tsai <evelyn.tsai@mediatek.com>
 Date: Sat, 1 Apr 2023 08:18:17 +0800
 Subject: [PATCH 0999/1034] wifi: mt76: mt7915: build pass for Linux Kernel 5.4
@@ -18,12 +18,11 @@
  mt7915/main.c     | 26 +++++++----------
  mt7915/mcu.c      |  1 +
  mt7915/mmio.c     | 55 +++++++++++++++++++++--------------
- mt7921/main.c     | 31 +++-----------------
  usb.c             | 43 +++++++++++++--------------
- 15 files changed, 122 insertions(+), 252 deletions(-)
+ 14 files changed, 118 insertions(+), 225 deletions(-)
 
 diff --git a/debugfs.c b/debugfs.c
-index 79064a4..4a8e186 100644
+index 79064a4d..4a8e1864 100644
 --- a/debugfs.c
 +++ b/debugfs.c
 @@ -33,8 +33,10 @@ mt76_napi_threaded_set(void *data, u64 val)
@@ -38,7 +37,7 @@
  	return 0;
  }
 diff --git a/dma.c b/dma.c
-index 05d9ab3..c9d2671 100644
+index 05d9ab3c..c9d2671d 100644
 --- a/dma.c
 +++ b/dma.c
 @@ -173,7 +173,7 @@ mt76_free_pending_rxwi(struct mt76_dev *dev)
@@ -244,10 +243,10 @@
  
  	mt76_free_pending_txwi(dev);
 diff --git a/eeprom.c b/eeprom.c
-index ea54b7a..90d36c8 100644
+index 750e031d..ff8dc939 100644
 --- a/eeprom.c
 +++ b/eeprom.c
-@@ -106,9 +106,15 @@ void
+@@ -161,9 +161,15 @@ void
  mt76_eeprom_override(struct mt76_phy *phy)
  {
  	struct mt76_dev *dev = phy->dev;
@@ -265,7 +264,7 @@
  	if (!is_valid_ether_addr(phy->macaddr)) {
  		eth_random_addr(phy->macaddr);
 diff --git a/mac80211.c b/mac80211.c
-index 8540738..76cb08b 100644
+index 0a081613..638405df 100644
 --- a/mac80211.c
 +++ b/mac80211.c
 @@ -4,7 +4,6 @@
@@ -347,7 +346,7 @@
  {
  	struct ieee80211_hw *hw = phy->hw;
 diff --git a/mcu.c b/mcu.c
-index a8cafa3..fa4b054 100644
+index a8cafa39..fa4b0544 100644
 --- a/mcu.c
 +++ b/mcu.c
 @@ -4,6 +4,7 @@
@@ -359,7 +358,7 @@
  struct sk_buff *
  __mt76_mcu_msg_alloc(struct mt76_dev *dev, const void *data,
 diff --git a/mt76.h b/mt76.h
-index a4cf9b6..35bf19f 100644
+index a4cf9b62..35bf19fb 100644
 --- a/mt76.h
 +++ b/mt76.h
 @@ -210,7 +210,7 @@ struct mt76_queue {
@@ -406,7 +405,7 @@
  static inline void mt76_set_tx_blocked(struct mt76_dev *dev, bool blocked)
  {
 diff --git a/mt7615/mcu.c b/mt7615/mcu.c
-index 8d745c9..86061e9 100644
+index 8d745c97..86061e95 100644
 --- a/mt7615/mcu.c
 +++ b/mt7615/mcu.c
 @@ -10,6 +10,7 @@
@@ -418,7 +417,7 @@
  static bool prefer_offload_fw = true;
  module_param(prefer_offload_fw, bool, 0644);
 diff --git a/mt76_connac.h b/mt76_connac.h
-index 22878f0..4560ab7 100644
+index 22878f08..4560ab79 100644
 --- a/mt76_connac.h
 +++ b/mt76_connac.h
 @@ -56,7 +56,6 @@ enum {
@@ -438,7 +437,7 @@
  
  	if (chandef->width >= ARRAY_SIZE(width_to_bw))
 diff --git a/mt76_connac_mcu.c b/mt76_connac_mcu.c
-index cd6ce3c..a558c68 100644
+index cd6ce3c0..a558c68c 100644
 --- a/mt76_connac_mcu.c
 +++ b/mt76_connac_mcu.c
 @@ -4,6 +4,7 @@
@@ -510,7 +509,7 @@
  #define DEFAULT_HE_DURATION_RTS_THRES	1023
  static void
 diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
-index fe729bb..bd0bf4b 100644
+index fe729bbf..bd0bf4bb 100644
 --- a/mt76_connac_mcu.h
 +++ b/mt76_connac_mcu.h
 @@ -1887,12 +1887,8 @@ void mt76_connac_mcu_reg_wr(struct mt76_dev *dev, u32 offset, u32 val);
@@ -527,10 +526,10 @@
  int mt76_connac_mcu_add_key(struct mt76_dev *dev, struct ieee80211_vif *vif,
  			    struct mt76_connac_sta_key_conf *sta_key_conf,
 diff --git a/mt7915/main.c b/mt7915/main.c
-index 86f794f..e403cd8 100644
+index e18cc93b..48970349 100644
 --- a/mt7915/main.c
 +++ b/mt7915/main.c
-@@ -1391,22 +1391,19 @@ void mt7915_get_et_strings(struct ieee80211_hw *hw,
+@@ -1393,22 +1393,19 @@ void mt7915_get_et_strings(struct ieee80211_hw *hw,
  			   struct ieee80211_vif *vif,
  			   u32 sset, u8 *data)
  {
@@ -559,7 +558,7 @@
  }
  
  static void mt7915_ethtool_worker(void *wi_data, struct ieee80211_sta *sta)
-@@ -1434,7 +1431,7 @@ void mt7915_get_et_stats(struct ieee80211_hw *hw,
+@@ -1436,7 +1433,7 @@ void mt7915_get_et_stats(struct ieee80211_hw *hw,
  		.idx = mvif->mt76.idx,
  	};
  	/* See mt7915_ampdu_stat_read_phy, etc */
@@ -568,7 +567,7 @@
  
  	mutex_lock(&dev->mt76.mutex);
  
-@@ -1546,12 +1543,9 @@ void mt7915_get_et_stats(struct ieee80211_hw *hw,
+@@ -1548,12 +1545,9 @@ void mt7915_get_et_stats(struct ieee80211_hw *hw,
  		return;
  
  	ei += wi.worker_stat_count;
@@ -585,7 +584,7 @@
  
  static void
 diff --git a/mt7915/mcu.c b/mt7915/mcu.c
-index a34b75d..50b49e5 100644
+index a34b75dc..50b49e54 100644
 --- a/mt7915/mcu.c
 +++ b/mt7915/mcu.c
 @@ -6,6 +6,7 @@
@@ -597,7 +596,7 @@
  #define fw_name(_dev, name, ...)	({			\
  	char *_fw;						\
 diff --git a/mt7915/mmio.c b/mt7915/mmio.c
-index fc7ace6..8d92e76 100644
+index fc7ace63..8d92e76d 100644
 --- a/mt7915/mmio.c
 +++ b/mt7915/mmio.c
 @@ -570,9 +570,13 @@ static void mt7915_mmio_wed_offload_disable(struct mtk_wed_device *wed)
@@ -700,74 +699,8 @@
  	mt7915_mmio_wed_release_rx_buf(wed);
  	return -ENOMEM;
  }
-diff --git a/mt7921/main.c b/mt7921/main.c
-index 87067ac..022cd34 100644
---- a/mt7921/main.c
-+++ b/mt7921/main.c
-@@ -1087,34 +1087,17 @@ static void
- mt7921_get_et_strings(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
- 		      u32 sset, u8 *data)
- {
--	struct mt7921_dev *dev = mt7921_hw_dev(hw);
--
- 	if (sset != ETH_SS_STATS)
- 		return;
- 
- 	memcpy(data, *mt7921_gstrings_stats, sizeof(mt7921_gstrings_stats));
--
--	if (mt76_is_sdio(&dev->mt76))
--		return;
--
--	data += sizeof(mt7921_gstrings_stats);
--	page_pool_ethtool_stats_get_strings(data);
- }
- 
- static int
- mt7921_get_et_sset_count(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
- 			 int sset)
- {
--	struct mt7921_dev *dev = mt7921_hw_dev(hw);
--
--	if (sset != ETH_SS_STATS)
--		return 0;
--
--	if (mt76_is_sdio(&dev->mt76))
--		return ARRAY_SIZE(mt7921_gstrings_stats);
--
--	return ARRAY_SIZE(mt7921_gstrings_stats) +
--	       page_pool_ethtool_stats_get_count();
-+	return sset == ETH_SS_STATS ? ARRAY_SIZE(mt7921_gstrings_stats) : 0;
- }
- 
- static void
-@@ -1134,7 +1117,6 @@ void mt7921_get_et_stats(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
- 			 struct ethtool_stats *stats, u64 *data)
- {
- 	struct mt7921_vif *mvif = (struct mt7921_vif *)vif->drv_priv;
--	int stats_size = ARRAY_SIZE(mt7921_gstrings_stats);
- 	struct mt7921_phy *phy = mt7921_hw_phy(hw);
- 	struct mt7921_dev *dev = phy->dev;
- 	struct mt76_mib_stats *mib = &phy->mib;
-@@ -1190,14 +1172,9 @@ void mt7921_get_et_stats(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
- 		return;
- 
- 	ei += wi.worker_stat_count;
--
--	if (!mt76_is_sdio(&dev->mt76)) {
--		mt76_ethtool_page_pool_stats(&dev->mt76, &data[ei], &ei);
--		stats_size += page_pool_ethtool_stats_get_count();
--	}
--
--	if (ei != stats_size)
--		dev_err(dev->mt76.dev, "ei: %d  SSTATS_LEN: %d", ei, stats_size);
-+	if (ei != ARRAY_SIZE(mt7921_gstrings_stats))
-+		dev_err(dev->mt76.dev, "ei: %d  SSTATS_LEN: %zu",
-+			ei, ARRAY_SIZE(mt7921_gstrings_stats));
- }
- 
- static u64
 diff --git a/usb.c b/usb.c
-index 5e5c7bf..3e28171 100644
+index 5e5c7bf5..3e281715 100644
 --- a/usb.c
 +++ b/usb.c
 @@ -319,27 +319,29 @@ mt76u_set_endpoints(struct usb_interface *intf,
@@ -901,5 +834,5 @@
  
  static void mt76u_free_rx(struct mt76_dev *dev)
 -- 
-2.18.0
+2.39.2