[][MAC80211][core][mt76][Airtime Fairness Scheduler Feature Off]

[Description]
Change Airtime Fairness Scheduler feature

mac80211: airtime_flags depends on NL80211_EXT_FEATURE_AIRTIME_FAIRNESS
mt76: Airtime Fairness Scheduler feature disbale

MAC80211 provides three Fairness Componments (ATF/AQL/AQM)
To fit with Mediatek WiFi6 Feature, will default disable ATF scheduler.

The airtime info is registered by mt76 which reads it from WTBL and
MAC80211 grant permission based on a historical average of airtime usage.
When ATF on, packets per station is unbalance a split second and
cause firmware algorithm hard to send HEMU PPDUs.

[Release-log]
N/A

Change-Id: I95cb3796fc18f1e91ad957015d5f8a25bb6da691
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/5936675
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/1113-mt76-mt7915-init-rssi-in-WTBL-when-add-station.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/1113-mt76-mt7915-init-rssi-in-WTBL-when-add-station.patch
new file mode 100644
index 0000000..fb1188e
--- /dev/null
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/1113-mt76-mt7915-init-rssi-in-WTBL-when-add-station.patch
@@ -0,0 +1,34 @@
+From 9d57f49dd5ff756854029c484876325b43fc2b78 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 1113/1116] mt76: mt7915: init rssi in WTBL when add station
+
+---
+ mt7915/main.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/mt7915/main.c b/mt7915/main.c
+index 5b0a6d02..f50dbbb5 100644
+--- a/mt7915/main.c
++++ b/mt7915/main.c
+@@ -651,6 +651,7 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+ 	struct mt7915_phy *phy;
+ #endif
+ 	int ret, idx;
++	u32 addr;
+ 
+ 	idx = mt76_wcid_alloc(dev->mt76.wcid_mask, MT7915_WTBL_STA);
+ 	if (idx < 0)
+@@ -672,6 +673,9 @@ int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
+ 	if (ret)
+ 		return ret;
+ 
++	addr = mt7915_mac_wtbl_lmac_addr(dev, msta->wcid.idx, 30);
++	mt76_rmw_field(dev, addr, GENMASK(7, 0), 0xa0);
++
+ #ifdef CONFIG_MTK_VENDOR
+ 	mt7915_vendor_amnt_sta_remove(mvif->phy, sta);
+ #endif
+-- 
+2.18.0
+