[rdk-b][common][bsp][Refactor and sync kernel/wifi from Openwrt]
[Description]
Refactor and sync kernel/wifi from Openwrt
[Release-log]
N/A
diff --git a/recipes-kernel/linux-mt76/files/patches/0008-mt76-mt7915-set-the-first-antenna-to-detect-radar-fo.patch b/recipes-kernel/linux-mt76/files/patches/0008-mt76-mt7915-set-the-first-antenna-to-detect-radar-fo.patch
new file mode 100644
index 0000000..35595d0
--- /dev/null
+++ b/recipes-kernel/linux-mt76/files/patches/0008-mt76-mt7915-set-the-first-antenna-to-detect-radar-fo.patch
@@ -0,0 +1,64 @@
+From ebe0cc8b9878e72143f0e24fea00ba2b474cdd6b Mon Sep 17 00:00:00 2001
+From: Shayne Chen <shayne.chen@mediatek.com>
+Date: Tue, 26 Jul 2022 16:04:53 +0800
+Subject: [PATCH 8/8] mt76: mt7915: set the first antenna to detect radar for
+ MT7915
+
+The default value of listening antenna set by FW might be different in
+MT7915. As most of our cooperated labs use the first antenna to verify
+the radar detection function, manually set the value by a mcu command.
+
+Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
+---
+ mt7915/mac.c | 15 +++++++++++++++
+ mt7915/mt7915.h | 1 +
+ 2 files changed, 16 insertions(+)
+
+diff --git a/mt7915/mac.c b/mt7915/mac.c
+index 31d1138..a1d5c15 100644
+--- a/mt7915/mac.c
++++ b/mt7915/mac.c
+@@ -1817,6 +1817,13 @@ static int mt7915_dfs_start_rdd(struct mt7915_dev *dev, int chain)
+ if (err < 0)
+ return err;
+
++ if (is_mt7915(&dev->mt76)) {
++ err = mt76_connac_mcu_rdd_cmd(&dev->mt76, RDD_SET_WF_ANT, chain,
++ 0, dev->dbdc_support ? 2 : 0);
++ if (err < 0)
++ return err;
++ }
++
+ return mt76_connac_mcu_rdd_cmd(&dev->mt76, RDD_DET_MODE, chain,
+ MT_RX_SEL0, 1);
+ }
+@@ -1937,6 +1944,14 @@ stop:
+ if (err < 0)
+ return err;
+
++ if (is_mt7915(&dev->mt76)) {
++ err = mt76_connac_mcu_rdd_cmd(&dev->mt76, RDD_SET_WF_ANT,
++ phy->band_idx, 0,
++ dev->dbdc_support ? 2 : 0);
++ if (err < 0)
++ return err;
++ }
++
+ mt7915_dfs_stop_radar_detector(phy);
+ phy->mt76->dfs_state = MT_DFS_STATE_DISABLED;
+
+diff --git a/mt7915/mt7915.h b/mt7915/mt7915.h
+index 54ef2a1..836a7f1 100644
+--- a/mt7915/mt7915.h
++++ b/mt7915/mt7915.h
+@@ -359,6 +359,7 @@ enum mt7915_rdd_cmd {
+ RDD_DET_MODE,
+ RDD_RADAR_EMULATE,
+ RDD_START_TXQ = 20,
++ RDD_SET_WF_ANT = 30,
+ RDD_CAC_START = 50,
+ RDD_CAC_END,
+ RDD_NORMAL_START,
+--
+2.18.0
+