mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-15 17:27:32 +07:00
mt76: mt7615: introduce set_bmc and st_sta for uni commands
Introduce mt7615_mcu_uni_set_bmc and mt7615_mcu_uni_set_sta routines for mt7663e commands. Co-developed-by: Sean Wang <sean.wang@mediatek.com> Signed-off-by: Sean Wang <sean.wang@mediatek.com> Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
323d7daad3
commit
af44ce4f47
@ -1062,8 +1062,8 @@ mt7615_mcu_sta_rx_ba(struct mt7615_dev *dev,
|
||||
}
|
||||
|
||||
static int
|
||||
mt7615_mcu_add_sta(struct mt7615_dev *dev, struct ieee80211_vif *vif,
|
||||
struct ieee80211_sta *sta, bool enable)
|
||||
mt7615_mcu_add_sta_cmd(struct mt7615_dev *dev, struct ieee80211_vif *vif,
|
||||
struct ieee80211_sta *sta, bool enable, int cmd)
|
||||
{
|
||||
struct mt7615_vif *mvif = (struct mt7615_vif *)vif->drv_priv;
|
||||
struct wtbl_req_hdr *wtbl_hdr;
|
||||
@ -1092,8 +1092,15 @@ mt7615_mcu_add_sta(struct mt7615_dev *dev, struct ieee80211_vif *vif,
|
||||
mt7615_mcu_wtbl_ht_tlv(skb, sta, sta_wtbl, wtbl_hdr);
|
||||
}
|
||||
|
||||
return __mt76_mcu_skb_send_msg(&dev->mt76, skb,
|
||||
MCU_EXT_CMD_STA_REC_UPDATE, true);
|
||||
return __mt76_mcu_skb_send_msg(&dev->mt76, skb, cmd, true);
|
||||
}
|
||||
|
||||
static int
|
||||
mt7615_mcu_add_sta(struct mt7615_dev *dev, struct ieee80211_vif *vif,
|
||||
struct ieee80211_sta *sta, bool enable)
|
||||
{
|
||||
return mt7615_mcu_add_sta_cmd(dev, vif, sta, enable,
|
||||
MCU_EXT_CMD_STA_REC_UPDATE);
|
||||
}
|
||||
|
||||
static const struct mt7615_mcu_ops sta_update_ops = {
|
||||
@ -1106,6 +1113,18 @@ static const struct mt7615_mcu_ops sta_update_ops = {
|
||||
.sta_add = mt7615_mcu_add_sta,
|
||||
};
|
||||
|
||||
static int
|
||||
mt7615_mcu_uni_add_sta(struct mt7615_dev *dev, struct ieee80211_vif *vif,
|
||||
struct ieee80211_sta *sta, bool enable)
|
||||
{
|
||||
return mt7615_mcu_add_sta_cmd(dev, vif, sta, enable,
|
||||
MCU_UNI_CMD_STA_REC_UPDATE);
|
||||
}
|
||||
|
||||
static const struct mt7615_mcu_ops uni_update_ops = {
|
||||
.sta_add = mt7615_mcu_uni_add_sta,
|
||||
};
|
||||
|
||||
static int mt7615_mcu_send_firmware(struct mt7615_dev *dev, const void *data,
|
||||
int len)
|
||||
{
|
||||
|
@ -269,6 +269,10 @@ enum {
|
||||
MCU_EXT_CMD_SET_RDD_PATTERN = 0x7d,
|
||||
};
|
||||
|
||||
enum {
|
||||
MCU_UNI_CMD_STA_REC_UPDATE = MCU_UNI_PREFIX | 0x03,
|
||||
};
|
||||
|
||||
#define MCU_CMD_ACK BIT(0)
|
||||
#define MCU_CMD_UNI BIT(1)
|
||||
#define MCU_CMD_QUERY BIT(2)
|
||||
@ -607,6 +611,15 @@ struct sta_req_hdr {
|
||||
u8 rsv[2];
|
||||
} __packed;
|
||||
|
||||
struct sta_rec_state {
|
||||
__le16 tag;
|
||||
__le16 len;
|
||||
u8 state;
|
||||
__le32 flags;
|
||||
u8 vhtop;
|
||||
u8 pad[2];
|
||||
} __packed;
|
||||
|
||||
struct sta_rec_basic {
|
||||
__le16 tag;
|
||||
__le16 len;
|
||||
@ -659,7 +672,7 @@ enum {
|
||||
STA_REC_BF,
|
||||
STA_REC_AMSDU, /* for CR4 */
|
||||
STA_REC_BA,
|
||||
STA_REC_RED, /* not used */
|
||||
STA_REC_STATE,
|
||||
STA_REC_TX_PROC, /* for hdr trans and CSO in CR4 */
|
||||
STA_REC_HT,
|
||||
STA_REC_VHT,
|
||||
|
Loading…
Reference in New Issue
Block a user