iPXE
|
Go to the source code of this file.
Macros | |
#define | SCHED_INTR |
Functions | |
static void | ath9k_bss_info_changed (struct net80211_device *dev, u32 changed) |
int | ath9k_setpower (struct ath_softc *sc, enum ath9k_power_mode mode) |
static void | ath_start_ani (struct ath_common *common) |
static void | ath_update_survey_nf (struct ath_softc *sc, int channel) |
static int | ath_update_survey_stats (struct ath_softc *sc) |
int | ath_set_channel (struct ath_softc *sc, struct net80211_device *dev, struct ath9k_channel *hchan) |
void | ath_ani_calibrate (struct ath_softc *sc) |
void | ath_hw_check (struct ath_softc *sc) |
static void | ath_hw_pll_rx_hang_check (struct ath_softc *sc, u32 pll_sqsum) |
void | ath_hw_pll_work (struct ath_softc *sc) |
void | ath9k_tasklet (struct ath_softc *sc) |
void | ath_isr (struct net80211_device *dev) |
void | ath_radio_disable (struct ath_softc *sc, struct net80211_device *dev) |
int | ath_reset (struct ath_softc *sc, int retry_tx) |
static int | ath9k_start (struct net80211_device *dev) |
static int | ath9k_tx (struct net80211_device *dev, struct io_buffer *iob) |
static void | ath9k_stop (struct net80211_device *dev) |
static int | ath9k_config (struct net80211_device *dev, int changed) |
static void | ath9k_bss_iter (struct ath_softc *sc) |
static void | ath9k_config_bss (struct ath_softc *sc) |
static void | ath9k_poll (struct net80211_device *dev) |
static void | ath9k_irq (struct net80211_device *dev, int enable) |
Variables | |
struct net80211_device_operations | ath9k_ops |
#define SCHED_INTR |
|
static |
Definition at line 854 of file ath9k_main.c.
References ah, ath9k_config_bss(), ath9k_hw_common(), ath9k_hw_init_global_settings(), net80211_device::channel, net80211_device::channels, common, DBG2, ath_common::dev, ath_softc::dev, NET80211_BAND_5GHZ, NET80211_CFG_ASSOC, NET80211_CFG_PHY_PARAMS, NET80211_PHY_USE_PROTECTION, NET80211_PHY_USE_SHORT_PREAMBLE, net80211_device::phy_flags, net80211_device::priv, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_PREAMBLE_SHORT, and SC_OP_PROTECT_ENABLE.
Referenced by ath9k_config().
int ath9k_setpower | ( | struct ath_softc * | sc, |
enum ath9k_power_mode | mode | ||
) |
Definition at line 26 of file ath9k_main.c.
References ath9k_hw_setpower(), and ath_softc::sc_ah.
Referenced by ath_isr().
|
static |
Definition at line 35 of file ath9k_main.c.
References ah, common, currticks(), if(), ath_softc::sc_flags, SC_OP_ANI_RUN, SC_OP_OFFCHANNEL, TICKS_PER_SEC, and timestamp.
Referenced by ath9k_bss_iter(), ath_reset(), and ath_set_channel().
|
static |
Definition at line 54 of file ath9k_main.c.
References ah, ath9k_channel::chan, channel, survey_info::filled, survey_info::noise, ath9k_channel::noisefloor, ath_softc::sc_ah, ath_softc::survey, and SURVEY_INFO_NOISE_DBM.
Referenced by ath9k_config(), and ath_update_survey_stats().
|
static |
Definition at line 71 of file ath9k_main.c.
References ah, ath9k_hw_common(), ATH9K_PM_AWAKE, ath_hw_cycle_counters_update(), ath_update_survey_nf(), survey_info::channel_time, survey_info::channel_time_busy, survey_info::channel_time_rx, survey_info::channel_time_tx, common, ath_cycle_counters::cycles, survey_info::filled, memset(), ath_cycle_counters::rx_busy, ath_cycle_counters::rx_frame, ath_softc::sc_ah, ath_softc::survey, SURVEY_INFO_CHANNEL_TIME, SURVEY_INFO_CHANNEL_TIME_BUSY, SURVEY_INFO_CHANNEL_TIME_RX, SURVEY_INFO_CHANNEL_TIME_TX, and ath_cycle_counters::tx_frame.
Referenced by ath9k_config(), ath_ani_calibrate(), and ath_hw_check().
int ath_set_channel | ( | struct ath_softc * | sc, |
struct net80211_device * | dev, | ||
struct ath9k_channel * | hchan | ||
) |
Definition at line 116 of file ath9k_main.c.
References __unused, ah, ath9k_cmn_update_txpow(), ath9k_hw_check_alive(), ath9k_hw_common(), ath9k_hw_disable_interrupts(), ath9k_hw_reset(), ath9k_hw_set_interrupts(), ath_drain_all_txq(), ath_start_ani(), ath_startrecv(), ath_stoprecv(), ath_softc::caldata, channel, ath9k_channel::channel, net80211_device::channel, net80211_device::channels, common, ath_softc::config, ath_hw::curchan, currticks(), ath_softc::curtxpow, DBG, DBG2, EIO, ath_softc::hw_busy_count, ath_softc::hw_pll_work_timer, NULL, r, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_INVALID, SC_OP_OFFCHANNEL, TICKS_PER_SEC, ath_softc::tx_complete_work, ath_softc::tx_complete_work_timer, and ath_config::txpowlimit.
Referenced by ath9k_config().
void ath_ani_calibrate | ( | struct ath_softc * | sc | ) |
Definition at line 200 of file ath9k_main.c.
References ah, ath9k_hw_ani_monitor(), ath9k_hw_calibrate(), ath9k_hw_common(), ath9k_hw_reset_calvalid(), ATH9K_PM_AWAKE, ATH_LONG_CALINTERVAL, ATH_LONG_CALINTERVAL_INT, ATH_RESTART_CALINTERVAL, ATH_STA_SHORT_CALINTERVAL, ath_update_survey_stats(), common, ath_hw::config, currticks(), DBG2, ath9k_ops_config::enable_ani, min, ath_hw::power_mode, ath_softc::sc_ah, TICKS_PER_SEC, and timestamp.
Referenced by ath_isr().
void ath_hw_check | ( | struct ath_softc * | sc | ) |
Definition at line 287 of file ath9k_main.c.
References ath9k_hw_check_alive(), ath_reset(), ath_update_survey_stats(), DBG, ath_softc::hw_busy_count, out, and ath_softc::sc_ah.
Definition at line 308 of file ath9k_main.c.
References ath_reset(), count, and DBG.
Referenced by ath_hw_pll_work().
void ath_hw_pll_work | ( | struct ath_softc * | sc | ) |
Definition at line 325 of file ath9k_main.c.
References ar9003_get_pll_sqsum_dvc(), AR_SREV_9485, ath_hw_pll_rx_hang_check(), currticks(), ath_softc::hw_pll_work_timer, ath_softc::sc_ah, and TICKS_PER_SEC.
Referenced by ath9k_init_device().
void ath9k_tasklet | ( | struct ath_softc * | sc | ) |
Definition at line 339 of file ath9k_main.c.
References ah, ath9k_hw_enable_interrupts(), ATH9K_INT_BB_WATCHDOG, ATH9K_INT_FATAL, ATH9K_INT_RX, ATH9K_INT_RXEOL, ATH9K_INT_RXORN, ATH9K_INT_TX, ath_reset(), ath_rx_tasklet(), ath_tx_tasklet(), ath_softc::intrstatus, ath_softc::sc_ah, and status.
Referenced by ath9k_init_softc().
void ath_isr | ( | struct net80211_device * | dev | ) |
Definition at line 366 of file ath9k_main.c.
References ah, ATH9K_HW_CAP_AUTOSLEEP, ath9k_hw_common(), ath9k_hw_disable_interrupts(), ath9k_hw_getisr(), ath9k_hw_intrpend(), ath9k_hw_setrxabort(), ath9k_hw_updatetxtriglevel(), ATH9K_INT_FATAL, ATH9K_INT_RXORN, ATH9K_INT_TIM_TIMER, ATH9K_INT_TXURN, ATH9K_PM_AWAKE, ath9k_setpower(), ath_ani_calibrate(), common, currticks(), ath_softc::dev, ath_softc::hw_pll_work, ath_softc::hw_pll_work_timer, ath_softc::intr_tq, ath_softc::intrstatus, net80211_device::priv, ath_softc::ps_flags, ath_softc::ps_idle, PS_WAIT_FOR_BEACON, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_INVALID, SCHED_INTR, status, TICKS_PER_SEC, timestamp, ath_softc::tx_complete_work, and ath_softc::tx_complete_work_timer.
Referenced by ath9k_poll().
void ath_radio_disable | ( | struct ath_softc * | sc, |
struct net80211_device * | dev | ||
) |
Definition at line 471 of file ath9k_main.c.
References ah, ath9k_cmn_get_curchannel(), ath9k_hw_cfg_gpio_input(), ath9k_hw_configpcipowersave(), ath9k_hw_disable_interrupts(), ath9k_hw_phy_disable(), ath9k_hw_reset(), ath9k_hw_set_gpio(), ath_drain_all_txq(), ath_flushrecv(), ath_stoprecv(), channel, net80211_device::channel, net80211_device::channels, DBG, ath_softc::hw_pll_work_timer, ath_softc::ps_idle, r, and ath_softc::sc_ah.
Referenced by ath9k_stop().
int ath_reset | ( | struct ath_softc * | sc, |
int | retry_tx | ||
) |
Definition at line 511 of file ath9k_main.c.
References ah, ath9k_cmn_update_txpow(), ath9k_hw_common(), ath9k_hw_disable_interrupts(), ath9k_hw_reset(), ath9k_hw_set_interrupts(), ATH9K_NUM_TX_QUEUES, ath_drain_all_txq(), ath_flushrecv(), ath_start_ani(), ath_startrecv(), ath_stoprecv(), ath_txq_schedule(), ATH_TXQ_SETUP, common, ath_softc::config, ath_hw::curchan, ath_softc::curtxpow, DBG, ath_softc::hw_busy_count, r, ath_softc::sc_ah, ath_softc::tx, ath_config::txpowlimit, and ath_tx::txq.
Referenced by ath9k_tasklet(), ath_hw_check(), ath_hw_pll_rx_hang_check(), and ath_tx_complete_poll_work().
|
static |
Definition at line 565 of file ath9k_main.c.
References ah, ath9k_cmn_get_curchannel(), ath9k_cmn_update_txpow(), ath9k_hw_common(), ath9k_hw_configpcipowersave(), ath9k_hw_reset(), ath9k_hw_set_interrupts(), ATH9K_INT_FATAL, ATH9K_INT_GLOBAL, ATH9K_INT_RX, ATH9K_INT_RXEOL, ATH9K_INT_RXORN, ATH9K_INT_TX, ath_startrecv(), net80211_channel::center_freq, ath_softc::chan_idx, net80211_device::channel, net80211_device::channels, common, ath_softc::config, ath_softc::curtxpow, DBG, ath_softc::dev, EIO, net80211_channel::hw_value, ath_hw::is_monitoring, net80211_device::priv, r, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_INVALID, ath_softc::tx_complete_work, and ath_config::txpowlimit.
|
static |
Definition at line 642 of file ath9k_main.c.
References ath_tx_start(), DBG, DBGIO, ath_softc::dev, free_iob(), memset(), net80211_device::priv, ath_softc::tx, ath_tx_control::txq, and ath_tx::txq_map.
|
static |
Definition at line 665 of file ath9k_main.c.
References ah, ath9k_hw_configpcipowersave(), ath9k_hw_disable(), ath9k_hw_disable_interrupts(), ath9k_hw_phy_disable(), ATH9K_INT_GLOBAL, ath_drain_all_txq(), ath_radio_disable(), ath_stoprecv(), DBG, ath_softc::dev, ath_hw::dev, ath_rx::frag, free_iob(), ath_softc::hw_pll_work_timer, NULL, net80211_device::priv, ath_softc::rx, ath_rx::rxlink, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_INVALID, and ath_softc::tx_complete_work_timer.
|
static |
Definition at line 708 of file ath9k_main.c.
References ah, ath9k_bss_info_changed(), ath9k_cmn_update_ichannel(), ath9k_cmn_update_txpow(), ath_set_channel(), ath_update_survey_nf(), ath_update_survey_stats(), ath9k_legacy_rate::bitrate, net80211_channel::center_freq, net80211_device::channel, ath_hw::channels, net80211_device::channels, ath_softc::config, ath_softc::cur_survey, ath_softc::curtxpow, DBG, DBG2, ath_softc::dev, ath_hw::dev, EINVAL, survey_info::filled, ath9k_legacy_rate::flags, ath_softc::hw_rix, net80211_channel::hw_value, IEEE80211_TX_RC_USE_SHORT_PREAMBLE, if(), net80211_channel::maxpower, memset(), NET80211_CFG_CHANNEL, NET80211_CFG_PHY_PARAMS, NET80211_CFG_RATE, NET80211_MAX_RATES, net80211_device::priv, net80211_device::rate, ath_softc::rates, net80211_device::rates, net80211_device::rtscts_rate, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_OFFCHANNEL, SC_OP_PREAMBLE_SHORT, ath_softc::survey, SURVEY_INFO_IN_USE, and ath_config::txpowlimit.
|
static |
Definition at line 797 of file ath9k_main.c.
References ath9k_hw_common(), ath9k_hw_write_associd(), ATH_RSSI_DUMMY_MARKER, ath_start_ani(), ar5416Stats::avgbrssi, common, DBG, ETH_ALEN, ath_softc::last_rssi, memcpy(), NET80211_ASSOCIATED, PS_BEACON_SYNC, ath_softc::ps_flags, PS_WAIT_FOR_BEACON, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_ANI_RUN, SC_OP_PRIM_STA_VIF, and ath_hw::stats.
Referenced by ath9k_config_bss().
|
static |
Definition at line 825 of file ath9k_main.c.
References ath9k_bss_iter(), ath9k_hw_common(), ath9k_hw_write_associd(), common, DBG2, ETH_ALEN, memset(), NET80211_ASSOCIATED, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_ANI_RUN, SC_OP_BEACONS, SC_OP_PRIM_STA_VIF, and net80211_device::state.
Referenced by ath9k_bss_info_changed().
|
static |
|
static |
Definition at line 899 of file ath9k_main.c.
References ah, AR_IER_DISABLE, AR_IER_ENABLE, ath9k_hw_set_interrupts(), ath_softc::dev, net80211_device::priv, and ath_softc::sc_ah.
struct net80211_device_operations ath9k_ops |
Definition at line 909 of file ath9k_main.c.
Referenced by ath9k_init_device().