From 81f9124f106441a6ac2f9c43efb9de9f5cc60cb4 Mon Sep 17 00:00:00 2001
From: "himanshu.goyal" <himanshu.goyal@mediatek.com>
Date: Tue, 24 Jan 2023 14:32:08 +0800
Subject: [PATCH 1132/1132] mt76: mt7915: Add vendor command attribute for RTS
 BW signaling.

Signed-off-by: himanshu.goyal <himanshu.goyal@mediatek.com>
---
 mt7915/mcu.c    | 6 ++++++
 mt7915/mcu.h    | 9 +++++++++
 mt7915/vendor.c | 4 ++++
 mt7915/vendor.h | 1 +
 4 files changed, 20 insertions(+)

diff --git a/mt7915/mcu.c b/mt7915/mcu.c
index dffd1761..e07197d0 100644
--- a/mt7915/mcu.c
+++ b/mt7915/mcu.c
@@ -4410,6 +4410,12 @@ int mt7915_mcu_set_cfg(struct mt7915_phy *phy, u8 cfg_info, u8 type)
 		req.cert.length = cpu_to_le16(tlv_len);
 		req.cert.cert_program = type;
 		break;
+	case CFGINFO_RTS_SIGTA_EN_FEATURE:
+		tlv_len = sizeof(struct rts_sigta_cfg);
+		req.rts_sigta.tag = cpu_to_le16(cfg_info);
+		req.rts_sigta.length = cpu_to_le16(tlv_len);
+		req.rts_sigta.enable  = type ? 1: 0;
+		break;
 	case CFGINFO_3WIRE_EN_CFG:
 		tlv_len = sizeof(struct three_wire_cfg);
 		req.three_wire.tag = cpu_to_le16(cfg_info);
diff --git a/mt7915/mcu.h b/mt7915/mcu.h
index a07bb9ac..8cbd37ca 100644
--- a/mt7915/mcu.h
+++ b/mt7915/mcu.h
@@ -867,6 +867,13 @@ struct three_wire_cfg {
 	u8 rsv[3];
 } __packed;
 
+struct rts_sigta_cfg {
+	__le16 tag;
+	__le16 length;
+	bool enable; /* 0: Disable, 1: Enable */
+	u8 rsv[3];
+} __packed;
+
 struct cfg_basic_info {
 	u8 dbdc_idx;
 	u8 rsv[3];
@@ -874,11 +881,13 @@ struct cfg_basic_info {
 	union {
 		struct cert_cfg cert;
 		struct three_wire_cfg three_wire;
+		struct rts_sigta_cfg rts_sigta;
 	};
 } __packed;
 
 enum {
 	CFGINFO_CERT_CFG = 4,
+	CFGINFO_RTS_SIGTA_EN_FEATURE = 7,
 	CFGINFO_3WIRE_EN_CFG = 10,
 };
 
diff --git a/mt7915/vendor.c b/mt7915/vendor.c
index 2e5f07c3..3b7ac098 100644
--- a/mt7915/vendor.c
+++ b/mt7915/vendor.c
@@ -33,6 +33,7 @@ wireless_ctrl_policy[NUM_MTK_VENDOR_ATTRS_WIRELESS_CTRL] = {
 	[MTK_VENDOR_ATTR_WIRELESS_CTRL_AMSDU] = {.type = NLA_U8 },
 	[MTK_VENDOR_ATTR_WIRELESS_CTRL_MU_EDCA] = {.type = NLA_U8 },
 	[MTK_VENDOR_ATTR_WIRELESS_CTRL_CERT] = {.type = NLA_U8 },
+	[MTK_VENDOR_ATTR_WIRELESS_CTRL_RTS_SIGTA] = {.type = NLA_U8 },
 };
 
 static const struct nla_policy
@@ -992,6 +993,9 @@ static int mt7915_vendor_wireless_ctrl(struct wiphy *wiphy,
 	} else if (tb[MTK_VENDOR_ATTR_WIRELESS_CTRL_AMSDU]) {
 		val8 = nla_get_u8(tb[MTK_VENDOR_ATTR_WIRELESS_CTRL_AMSDU]);
 		mt7915_set_wireless_amsdu(hw, val8);
+	} else if (tb[MTK_VENDOR_ATTR_WIRELESS_CTRL_RTS_SIGTA]) {
+		val8 = nla_get_u8(tb[MTK_VENDOR_ATTR_WIRELESS_CTRL_RTS_SIGTA]);
+		mt7915_mcu_set_cfg(phy, CFGINFO_RTS_SIGTA_EN_FEATURE, val8);
 	}
 
 	return 0;
diff --git a/mt7915/vendor.h b/mt7915/vendor.h
index 33c75dc9..6001ce4a 100644
--- a/mt7915/vendor.h
+++ b/mt7915/vendor.h
@@ -76,6 +76,7 @@ enum mtk_vendor_attr_wireless_ctrl {
 	MTK_VENDOR_ATTR_WIRELESS_CTRL_MIMO,
 	MTK_VENDOR_ATTR_WIRELESS_CTRL_AMSDU,
 	MTK_VENDOR_ATTR_WIRELESS_CTRL_CERT = 9,
+	MTK_VENDOR_ATTR_WIRELESS_CTRL_RTS_SIGTA,
 
 	MTK_VENDOR_ATTR_WIRELESS_CTRL_MU_EDCA, /* reserve */
 	/* keep last */
-- 
2.18.0

