#include "mt7601u.h"
#include "mcu.h"
#include "eeprom.h"
#include "trace.h"
#include "initvals_phy.h"
#include <linux/etherdevice.h>
static void mt7601u_agc_reset(struct mt7601u_dev *dev);
static int
mt7601u_rf_wr(struct mt7601u_dev *dev, u8 bank, u8 offset, u8 value)
{ … }
static int
mt7601u_rf_rr(struct mt7601u_dev *dev, u8 bank, u8 offset)
{ … }
static int
mt7601u_rf_rmw(struct mt7601u_dev *dev, u8 bank, u8 offset, u8 mask, u8 val)
{ … }
static int
mt7601u_rf_set(struct mt7601u_dev *dev, u8 bank, u8 offset, u8 val)
{ … }
static int
mt7601u_rf_clear(struct mt7601u_dev *dev, u8 bank, u8 offset, u8 mask)
{ … }
static void mt7601u_bbp_wr(struct mt7601u_dev *dev, u8 offset, u8 val)
{ … }
static int mt7601u_bbp_rr(struct mt7601u_dev *dev, u8 offset)
{ … }
static int mt7601u_bbp_rmw(struct mt7601u_dev *dev, u8 offset, u8 mask, u8 val)
{ … }
static u8 mt7601u_bbp_rmc(struct mt7601u_dev *dev, u8 offset, u8 mask, u8 val)
{ … }
int mt7601u_wait_bbp_ready(struct mt7601u_dev *dev)
{ … }
u32 mt7601u_bbp_set_ctrlch(struct mt7601u_dev *dev, bool below)
{ … }
int mt7601u_phy_get_rssi(struct mt7601u_dev *dev,
struct mt7601u_rxwi *rxwi, u16 rate)
{ … }
static void mt7601u_vco_cal(struct mt7601u_dev *dev)
{ … }
static int mt7601u_set_bw_filter(struct mt7601u_dev *dev, bool cal)
{ … }
static int mt7601u_load_bbp_temp_table_bw(struct mt7601u_dev *dev)
{ … }
static int mt7601u_bbp_temp(struct mt7601u_dev *dev, int mode, const char *name)
{ … }
static void mt7601u_apply_ch14_fixup(struct mt7601u_dev *dev, int hw_chan)
{ … }
static int __mt7601u_phy_set_channel(struct mt7601u_dev *dev,
struct cfg80211_chan_def *chandef)
{ … }
int mt7601u_phy_set_channel(struct mt7601u_dev *dev,
struct cfg80211_chan_def *chandef)
{ … }
#define BBP_R47_FLAG …
#define BBP_R47_F_TSSI …
#define BBP_R47_F_PKT_T …
#define BBP_R47_F_TX_RATE …
#define BBP_R47_F_TEMP …
static u8 mt7601u_bbp_r47_get(struct mt7601u_dev *dev, u8 reg, u8 flag)
{ … }
static s8 mt7601u_read_bootup_temp(struct mt7601u_dev *dev)
{ … }
static s8 mt7601u_read_temp(struct mt7601u_dev *dev)
{ … }
static void mt7601u_rxdc_cal(struct mt7601u_dev *dev)
{ … }
void mt7601u_phy_recalibrate_after_assoc(struct mt7601u_dev *dev)
{ … }
static s16 lin2dBd(u16 linear)
{ … }
static void
mt7601u_set_initial_tssi(struct mt7601u_dev *dev, s16 tssi_db, s16 tssi_hvga_db)
{ … }
static void mt7601u_tssi_dc_gain_cal(struct mt7601u_dev *dev)
{ … }
static int mt7601u_temp_comp(struct mt7601u_dev *dev, bool on)
{ … }
static int mt7601u_current_tx_power(struct mt7601u_dev *dev)
{ … }
static bool mt7601u_use_hvga(struct mt7601u_dev *dev)
{ … }
static s16
mt7601u_phy_rf_pa_mode_val(struct mt7601u_dev *dev, int phy_mode, int tx_rate)
{ … }
static struct mt7601u_tssi_params
mt7601u_tssi_params_get(struct mt7601u_dev *dev)
{ … }
static bool mt7601u_tssi_read_ready(struct mt7601u_dev *dev)
{ … }
static int mt7601u_tssi_cal(struct mt7601u_dev *dev)
{ … }
static u8 mt7601u_agc_default(struct mt7601u_dev *dev)
{ … }
static void mt7601u_agc_reset(struct mt7601u_dev *dev)
{ … }
void mt7601u_agc_save(struct mt7601u_dev *dev)
{ … }
void mt7601u_agc_restore(struct mt7601u_dev *dev)
{ … }
static void mt7601u_agc_tune(struct mt7601u_dev *dev)
{ … }
static void mt7601u_phy_calibrate(struct work_struct *work)
{ … }
static unsigned long
__mt7601u_phy_freq_cal(struct mt7601u_dev *dev, s8 last_offset, u8 phy_mode)
{ … }
static void mt7601u_phy_freq_cal(struct work_struct *work)
{ … }
void mt7601u_phy_con_cal_onoff(struct mt7601u_dev *dev,
struct ieee80211_bss_conf *info)
{ … }
static int mt7601u_init_cal(struct mt7601u_dev *dev)
{ … }
int mt7601u_bbp_set_bw(struct mt7601u_dev *dev, int bw)
{ … }
void mt7601u_set_rx_path(struct mt7601u_dev *dev, u8 path)
{ … }
void mt7601u_set_tx_dac(struct mt7601u_dev *dev, u8 dac)
{ … }
int mt7601u_phy_init(struct mt7601u_dev *dev)
{ … }