#include <linux/fs.h>
#include <linux/firmware.h>
#include "mt7921.h"
#include "mcu.h"
#include "../mt76_connac2_mac.h"
#include "../mt792x_trace.h"
#define MT_STA_BFER …
#define MT_STA_BFEE …
static bool mt7921_disable_clc;
module_param_named(disable_clc, mt7921_disable_clc, bool, 0644);
MODULE_PARM_DESC(…) …;
int mt7921_mcu_parse_response(struct mt76_dev *mdev, int cmd,
struct sk_buff *skb, int seq)
{ … }
EXPORT_SYMBOL_GPL(…);
static int mt7921_mcu_read_eeprom(struct mt792x_dev *dev, u32 offset, u8 *val)
{ … }
#ifdef CONFIG_PM
static int
mt7921_mcu_set_ipv6_ns_filter(struct mt76_dev *dev,
struct ieee80211_vif *vif, bool suspend)
{ … }
void mt7921_mcu_set_suspend_iter(void *priv, u8 *mac, struct ieee80211_vif *vif)
{ … }
#endif
static void
mt7921_mcu_uni_roc_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_scan_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_connection_loss_iter(void *priv, u8 *mac,
struct ieee80211_vif *vif)
{ … }
static void
mt7921_mcu_connection_loss_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_debug_msg_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_low_power_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_tx_done_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_rssi_monitor_iter(void *priv, u8 *mac,
struct ieee80211_vif *vif)
{ … }
static void
mt7921_mcu_rssi_monitor_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_rx_unsolicited_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
static void
mt7921_mcu_uni_rx_unsolicited_event(struct mt792x_dev *dev,
struct sk_buff *skb)
{ … }
void mt7921_mcu_rx_event(struct mt792x_dev *dev, struct sk_buff *skb)
{ … }
int mt7921_mcu_uni_tx_ba(struct mt792x_dev *dev,
struct ieee80211_ampdu_params *params,
bool enable)
{ … }
int mt7921_mcu_uni_rx_ba(struct mt792x_dev *dev,
struct ieee80211_ampdu_params *params,
bool enable)
{ … }
static int mt7921_load_clc(struct mt792x_dev *dev, const char *fw_name)
{ … }
static void mt7921_mcu_parse_tx_resource(struct mt76_dev *dev,
struct sk_buff *skb)
{ … }
static void mt7921_mcu_parse_phy_cap(struct mt76_dev *dev,
struct sk_buff *skb)
{ … }
static int mt7921_mcu_get_nic_capability(struct mt792x_phy *mphy)
{ … }
int mt7921_mcu_fw_log_2_host(struct mt792x_dev *dev, u8 ctrl)
{ … }
int mt7921_run_firmware(struct mt792x_dev *dev)
{ … }
EXPORT_SYMBOL_GPL(…);
int mt7921_mcu_radio_led_ctrl(struct mt792x_dev *dev, u8 value)
{ … }
EXPORT_SYMBOL_GPL(…);
int mt7921_mcu_set_tx(struct mt792x_dev *dev, struct ieee80211_vif *vif)
{ … }
int mt7921_mcu_set_roc(struct mt792x_phy *phy, struct mt792x_vif *vif,
struct ieee80211_channel *chan, int duration,
enum mt7921_roc_req type, u8 token_id)
{ … }
int mt7921_mcu_abort_roc(struct mt792x_phy *phy, struct mt792x_vif *vif,
u8 token_id)
{ … }
int mt7921_mcu_set_chan_info(struct mt792x_phy *phy, int cmd)
{ … }
int mt7921_mcu_set_eeprom(struct mt792x_dev *dev)
{ … }
EXPORT_SYMBOL_GPL(…);
int mt7921_mcu_uni_bss_ps(struct mt792x_dev *dev, struct ieee80211_vif *vif)
{ … }
static int
mt7921_mcu_uni_bss_bcnft(struct mt792x_dev *dev, struct ieee80211_vif *vif,
bool enable)
{ … }
int
mt7921_mcu_set_bss_pm(struct mt792x_dev *dev, struct ieee80211_vif *vif,
bool enable)
{ … }
int mt7921_mcu_sta_update(struct mt792x_dev *dev, struct ieee80211_sta *sta,
struct ieee80211_vif *vif, bool enable,
enum mt76_sta_info_state state)
{ … }
int mt7921_mcu_set_beacon_filter(struct mt792x_dev *dev,
struct ieee80211_vif *vif,
bool enable)
{ … }
int mt7921_get_txpwr_info(struct mt792x_dev *dev, struct mt7921_txpwr *txpwr)
{ … }
int mt7921_mcu_set_sniffer(struct mt792x_dev *dev, struct ieee80211_vif *vif,
bool enable)
{ … }
int mt7921_mcu_config_sniffer(struct mt792x_vif *vif,
struct ieee80211_chanctx_conf *ctx)
{ … }
int
mt7921_mcu_uni_add_beacon_offload(struct mt792x_dev *dev,
struct ieee80211_hw *hw,
struct ieee80211_vif *vif,
bool enable)
{ … }
static
int __mt7921_mcu_set_clc(struct mt792x_dev *dev, u8 *alpha2,
enum environment_cap env_cap,
struct mt7921_clc *clc,
u8 idx)
{ … }
int mt7921_mcu_set_clc(struct mt792x_dev *dev, u8 *alpha2,
enum environment_cap env_cap)
{ … }
int mt7921_mcu_get_temperature(struct mt792x_phy *phy)
{ … }
int mt7921_mcu_set_rxfilter(struct mt792x_dev *dev, u32 fif,
u8 bit_op, u32 bit_map)
{ … }
int mt7921_mcu_set_rssimonitor(struct mt792x_dev *dev, struct ieee80211_vif *vif)
{ … }