iPXE
|
#include "common.h"
Go to the source code of this file.
Data Structures | |
struct | ath_config |
struct | ath_descdma |
struct | ath_txq |
struct | ath_atx_ac |
struct | ath_frame_info |
struct | ath_buf_state |
struct | ath_buf |
struct | ath_atx_tid |
struct | ath_node |
struct | ath_tx_control |
struct | ath_tx |
@txq_map: Index is mac80211 queue number. More... | |
struct | ath_rx_edma |
struct | ath_rx |
struct | ath9k_legacy_rate |
struct | survey_info |
struct | ath9k_vif_iter_data |
struct | ath_softc |
Macros | |
#define | ito64(x) |
#define | INCR(_l, _sz) |
#define | DECR(_l, _sz) |
#define | A_MAX(a, b) ((a) > (b) ? (a) : (b)) |
#define | TSF_TO_TU(_h, _l) ((((u32)(_h)) << 22) | (((u32)(_l)) >> 10)) |
#define | ATH_TXQ_SETUP(sc, i) ((sc)->tx.txqsetup & (1<<i)) |
#define | ATH_TXBUF_RESET(_bf) |
#define | ATH_RXBUF_RESET(_bf) |
#define | bf_isampdu(bf) (bf->bf_state.bf_type & BUF_AMPDU) |
#define | bf_isaggr(bf) (bf->bf_state.bf_type & BUF_AGGR) |
#define | bf_isxretried(bf) (bf->bf_state.bf_type & BUF_XRETRY) |
#define | ATH_TXSTATUS_RING_SIZE 64 |
#define | ATH_RXBUF 16 |
#define | ATH_TXBUF 16 |
#define | ATH_TXBUF_RESERVE 5 |
#define | ATH_MAX_QDEPTH (ATH_TXBUF / 4 - ATH_TXBUF_RESERVE) |
#define | ATH_TXMAXTRY 13 |
#define | TID_TO_WME_AC(_tid) |
#define | ATH_AGGR_DELIM_SZ 4 |
#define | ATH_AGGR_MINPLEN 256 /* in bytes, minimum packet length */ |
#define | ATH_AGGR_ENCRYPTDELIM 10 |
#define | ATH_AGGR_MIN_QDEPTH 2 |
#define | ATH_AMPDU_SUBFRAME_DEFAULT 32 |
#define | FCS_LEN 4 |
#define | IEEE80211_SEQ_SEQ_SHIFT 4 |
#define | IEEE80211_SEQ_MAX 4096 |
#define | IEEE80211_WEP_IVLEN 3 |
#define | IEEE80211_WEP_KIDLEN 1 |
#define | IEEE80211_WEP_CRCLEN 4 |
#define | IEEE80211_MAX_MPDU_LEN |
#define | ATH_BA_ISSET(_bm, _n) |
#define | ATH_BA_INDEX(_st, _seq) (((_seq) - (_st)) & (IEEE80211_SEQ_MAX - 1)) |
#define | ATH_AGGR_GET_NDELIM(_len) |
#define | BAW_WITHIN(_start, _bawsz, _seqno) ((((_seqno) - (_start)) & 4095) < (_bawsz)) |
#define | ATH_AN_2_TID(_an, _tidno) (&(_an)->tid[(_tidno)]) |
#define | ATH_TX_COMPLETE_POLL_INT 1000 |
#define | ATH_TXFIFO_DEPTH 8 |
#define | AGGR_CLEANUP BIT(1) |
#define | AGGR_ADDBA_COMPLETE BIT(2) |
#define | AGGR_ADDBA_PROGRESS BIT(3) |
#define | ATH_TX_ERROR 0x01 |
#define | ATH_TX_XRETRY 0x02 |
#define | ATH_TX_BAR 0x04 |
#define | ATH_STA_SHORT_CALINTERVAL 1000 /* 1 second */ |
#define | ATH_AP_SHORT_CALINTERVAL 100 /* 100 ms */ |
#define | ATH_ANI_POLLINTERVAL_OLD 100 /* 100 ms */ |
#define | ATH_ANI_POLLINTERVAL_NEW 1000 /* 1000 ms */ |
#define | ATH_LONG_CALINTERVAL_INT 1000 /* 1000 ms */ |
#define | ATH_LONG_CALINTERVAL 30000 /* 30 seconds */ |
#define | ATH_RESTART_CALINTERVAL 1200000 /* 20 minutes */ |
#define | DEFAULT_CACHELINE 32 |
#define | ATH_REGCLASSIDS_MAX 10 |
#define | ATH_CABQ_READY_TIME 80 /* % of beacon interval */ |
#define | ATH_MAX_SW_RETRIES 10 |
#define | ATH_CHAN_MAX 255 |
#define | ATH_TXPOWER_MAX 100 /* .5 dBm units */ |
#define | ATH_RATE_DUMMY_MARKER 0 |
#define | SC_OP_INVALID BIT(0) |
#define | SC_OP_BEACONS BIT(1) |
#define | SC_OP_RXAGGR BIT(2) |
#define | SC_OP_TXAGGR BIT(3) |
#define | SC_OP_OFFCHANNEL BIT(4) |
#define | SC_OP_PREAMBLE_SHORT BIT(5) |
#define | SC_OP_PROTECT_ENABLE BIT(6) |
#define | SC_OP_RXFLUSH BIT(7) |
#define | SC_OP_LED_ASSOCIATED BIT(8) |
#define | SC_OP_LED_ON BIT(9) |
#define | SC_OP_TSF_RESET BIT(11) |
#define | SC_OP_BT_PRIORITY_DETECTED BIT(12) |
#define | SC_OP_BT_SCAN BIT(13) |
#define | SC_OP_ANI_RUN BIT(14) |
#define | SC_OP_ENABLE_APM BIT(15) |
#define | SC_OP_PRIM_STA_VIF BIT(16) |
#define | PS_WAIT_FOR_BEACON BIT(0) |
#define | PS_WAIT_FOR_CAB BIT(1) |
#define | PS_WAIT_FOR_PSPOLL_DATA BIT(2) |
#define | PS_WAIT_FOR_TX_ACK BIT(3) |
#define | PS_BEACON_SYNC BIT(4) |
#define | PS_TSFOOR_SYNC BIT(5) |
Enumerations | |
enum | buffer_type { BUF_AMPDU = BIT(0), BUF_AGGR = BIT(1), BUF_XRETRY = BIT(2) } |
enum buffer_type - Buffer type flags More... | |
enum | ATH_AGGR_STATUS { ATH_AGGR_DONE, ATH_AGGR_BAW_CLOSED, ATH_AGGR_LIMITED } |
enum | ath9k_rate_control_flags { IEEE80211_TX_RC_USE_RTS_CTS = BIT(0), IEEE80211_TX_RC_USE_CTS_PROTECT = BIT(1), IEEE80211_TX_RC_USE_SHORT_PREAMBLE = BIT(2), IEEE80211_TX_RC_MCS = BIT(3), IEEE80211_TX_RC_GREEN_FIELD = BIT(4), IEEE80211_TX_RC_40_MHZ_WIDTH = BIT(5), IEEE80211_TX_RC_DUP_DATA = BIT(6), IEEE80211_TX_RC_SHORT_GI = BIT(7) } |
enum | survey_info_flags { SURVEY_INFO_NOISE_DBM = 1<<0, SURVEY_INFO_IN_USE = 1<<1, SURVEY_INFO_CHANNEL_TIME = 1<<2, SURVEY_INFO_CHANNEL_TIME_BUSY = 1<<3, SURVEY_INFO_CHANNEL_TIME_EXT_BUSY = 1<<4, SURVEY_INFO_CHANNEL_TIME_RX = 1<<5, SURVEY_INFO_CHANNEL_TIME_TX = 1<<6 } |
Functions | |
FILE_LICENCE (BSD2) | |
int | ath_descdma_setup (struct ath_softc *sc, struct ath_descdma *dd, struct list_head *head, const char *name, int nbuf, int ndesc, int is_tx) |
void | ath_descdma_cleanup (struct ath_softc *sc, struct ath_descdma *dd, struct list_head *head) |
int | ath_startrecv (struct ath_softc *sc) |
int | ath_stoprecv (struct ath_softc *sc) |
void | ath_flushrecv (struct ath_softc *sc) |
u32 | ath_calcrxfilter (struct ath_softc *sc) |
int | ath_rx_init (struct ath_softc *sc, int nbufs) |
void | ath_rx_cleanup (struct ath_softc *sc) |
int | ath_rx_tasklet (struct ath_softc *sc, int flush, int hp) |
struct ath_txq * | ath_txq_setup (struct ath_softc *sc, int qtype, int subtype) |
void | ath_tx_cleanupq (struct ath_softc *sc, struct ath_txq *txq) |
int | ath_drain_all_txq (struct ath_softc *sc, int retry_tx) |
void | ath_draintxq (struct ath_softc *sc, struct ath_txq *txq, int retry_tx) |
void | ath_txq_schedule (struct ath_softc *sc, struct ath_txq *txq) |
int | ath_tx_init (struct ath_softc *sc, int nbufs) |
void | ath_tx_cleanup (struct ath_softc *sc) |
int | ath_txq_update (struct ath_softc *sc, int qnum, struct ath9k_tx_queue_info *q) |
int | ath_tx_start (struct net80211_device *dev, struct io_buffer *iob, struct ath_tx_control *txctl) |
void | ath_tx_tasklet (struct ath_softc *sc) |
void | ath_hw_pll_work (struct ath_softc *sc) |
void | ath_ani_calibrate (struct ath_softc *sc) |
void | ath9k_tasklet (struct ath_softc *sc) |
int | ath_reset (struct ath_softc *sc, int retry_tx) |
static void | ath_read_cachesize (struct ath_common *common, int *csz) |
void | ath_isr (struct net80211_device *dev) |
void | ath9k_init_crypto (struct ath_softc *sc) |
int | ath9k_init_device (u16 devid, struct ath_softc *sc, u16 subsysid, const struct ath_bus_ops *bus_ops) |
void | ath9k_deinit_device (struct ath_softc *sc) |
void | ath9k_set_hw_capab (struct ath_softc *sc, struct net80211_device *dev) |
int | ath_set_channel (struct ath_softc *sc, struct net80211_device *dev, struct ath9k_channel *hchan) |
void | ath_radio_enable (struct ath_softc *sc, struct net80211_device *dev) |
void | ath_radio_disable (struct ath_softc *sc, struct net80211_device *dev) |
int | ath9k_setpower (struct ath_softc *sc, enum ath9k_power_mode mode) |
int | ath9k_uses_beacons (int type) |
u8 | ath_txchainmask_reduction (struct ath_softc *sc, u8 chainmask, u32 rate) |
void | ath_start_rfkill_poll (struct ath_softc *sc) |
void | ath9k_rfkill_poll_state (struct net80211_device *dev) |
Variables | |
struct ath_config | __attribute__ |
struct net80211_device_operations | ath9k_ops |
int | ath9k_modparam_nohwcrypt |
int | is_ath9k_unloaded |
#define ito64 | ( | x | ) |
#define INCR | ( | _l, | |
_sz | |||
) |
#define DECR | ( | _l, | |
_sz | |||
) |
#define ATH_TXBUF_RESET | ( | _bf | ) |
#define ATH_RXBUF_RESET | ( | _bf | ) |
#define bf_isxretried | ( | bf | ) | (bf->bf_state.bf_type & BUF_XRETRY) |
#define ATH_MAX_QDEPTH (ATH_TXBUF / 4 - ATH_TXBUF_RESERVE) |
#define TID_TO_WME_AC | ( | _tid | ) |
#define IEEE80211_MAX_MPDU_LEN |
#define ATH_BA_ISSET | ( | _bm, | |
_n | |||
) |
#define ATH_BA_INDEX | ( | _st, | |
_seq | |||
) | (((_seq) - (_st)) & (IEEE80211_SEQ_MAX - 1)) |
#define ATH_AGGR_GET_NDELIM | ( | _len | ) |
#define BAW_WITHIN | ( | _start, | |
_bawsz, | |||
_seqno | |||
) | ((((_seqno) - (_start)) & 4095) < (_bawsz)) |
#define ATH_AN_2_TID | ( | _an, | |
_tidno | |||
) | (&(_an)->tid[(_tidno)]) |
enum buffer_type |
enum buffer_type - Buffer type flags
@BUF_AMPDU: This buffer is an ampdu, as part of an aggregate (during TX) @BUF_AGGR: Indicates whether the buffer can be aggregated (used in aggregation scheduling) @BUF_XRETRY: To denote excessive retries of the buffer
Enumerator | |
---|---|
BUF_AMPDU | |
BUF_AGGR | |
BUF_XRETRY |
enum ATH_AGGR_STATUS |
Enumerator | |
---|---|
ATH_AGGR_DONE | |
ATH_AGGR_BAW_CLOSED | |
ATH_AGGR_LIMITED |
Definition at line 396 of file ath9k.h.
enum survey_info_flags |
Enumerator | |
---|---|
SURVEY_INFO_NOISE_DBM | |
SURVEY_INFO_IN_USE | |
SURVEY_INFO_CHANNEL_TIME | |
SURVEY_INFO_CHANNEL_TIME_BUSY | |
SURVEY_INFO_CHANNEL_TIME_EXT_BUSY | |
SURVEY_INFO_CHANNEL_TIME_RX | |
SURVEY_INFO_CHANNEL_TIME_TX |
Definition at line 420 of file ath9k.h.
FILE_LICENCE | ( | BSD2 | ) |
int ath_descdma_setup | ( | struct ath_softc * | sc, |
struct ath_descdma * | dd, | ||
struct list_head * | head, | ||
const char * | name, | ||
int | nbuf, | ||
int | ndesc, | ||
int | is_tx | ||
) |
Definition at line 180 of file ath9k_init.c.
References ATH9K_HW_CAP_4KB_SPLITTRANS, ATH_DESC_4KB_BOUND_CHECK, ath_buf::bf_desc, ath_hw::caps, DBG, DBG2, ath_descdma::dd_bufptr, ath_descdma::dd_desc, ath_descdma::dd_desc_len, ath_descdma::dd_desc_paddr, ds, DS2PHYS, ENOMEM, error, free_phys(), head, ath9k_hw_capabilities::hw_caps, INIT_LIST_HEAD, ito64, list_add_tail, malloc_phys(), memset(), name, NULL, ath_softc::sc_ah, ath9k_hw_capabilities::tx_desc_len, u32, virt_to_bus(), and zalloc().
Referenced by ath_rx_init(), and ath_tx_init().
void ath_descdma_cleanup | ( | struct ath_softc * | sc, |
struct ath_descdma * | dd, | ||
struct list_head * | head | ||
) |
Referenced by ath_rx_cleanup(), and ath_tx_cleanup().
int ath_startrecv | ( | struct ath_softc * | sc | ) |
Definition at line 194 of file ath9k_recv.c.
References ah, ath9k_hw_putrxbuf(), ath9k_hw_rxena(), ath9k_hw_startpcureceive(), ath_opmode_init(), ath_rx_buf_link(), ath_buf::bf_daddr, ath_buf::list, list_empty, list_first_entry, list_for_each_entry_safe, NULL, ath_softc::rx, ath_rx::rxbuf, ath_rx::rxlink, ath_softc::sc_ah, ath_softc::sc_flags, and SC_OP_OFFCHANNEL.
Referenced by ath9k_start(), ath_reset(), and ath_set_channel().
int ath_stoprecv | ( | struct ath_softc * | sc | ) |
Definition at line 222 of file ath9k_recv.c.
References ah, AH_UNPLUGGED, ath9k_hw_abortpcurecv(), ath9k_hw_setrxfilter(), ath9k_hw_stopdmarecv(), DBG, NULL, ath_softc::rx, ath_rx::rxlink, and ath_softc::sc_ah.
Referenced by ath9k_stop(), ath_radio_disable(), ath_reset(), and ath_set_channel().
void ath_flushrecv | ( | struct ath_softc * | sc | ) |
Definition at line 242 of file ath9k_recv.c.
References ath_rx_tasklet(), ath_softc::sc_flags, and SC_OP_RXFLUSH.
Referenced by ath_radio_disable(), and ath_reset().
Definition at line 179 of file ath9k_recv.c.
References ath9k_hw_getrxfilter(), ATH9K_RX_FILTER_BCAST, ATH9K_RX_FILTER_BEACON, ATH9K_RX_FILTER_MCAST, ATH9K_RX_FILTER_UCAST, RX_FILTER_PRESERVE, and ath_softc::sc_ah.
Referenced by ath_opmode_init().
int ath_rx_init | ( | struct ath_softc * | sc, |
int | nbufs | ||
) |
Definition at line 97 of file ath9k_recv.c.
References alloc_iob_raw(), ath9k_hw_common(), ath_descdma_setup(), ath_rx_cleanup(), ath_buf::bf_buf_addr, ath_buf::bf_mpdu, ath_hw::caps, common, io_buffer::data, DBG, DBG2, ENOMEM, error, IEEE80211_MAX_MPDU_LEN, ath_buf::list, list_for_each_entry, NULL, ath_softc::rx, ath9k_hw_capabilities::rx_status_len, ath_rx::rxbuf, ath_rx::rxdma, ath_rx::rxlink, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_RXFLUSH, and virt_to_bus().
Referenced by ath9k_init_device().
void ath_rx_cleanup | ( | struct ath_softc * | sc | ) |
Definition at line 142 of file ath9k_recv.c.
References ath_descdma_cleanup(), ath_buf::bf_buf_addr, ath_buf::bf_mpdu, ath_descdma::dd_desc_len, free_iob(), ath_buf::list, list_for_each_entry, NULL, ath_softc::rx, ath_rx::rxbuf, and ath_rx::rxdma.
Referenced by ath9k_deinit_device(), ath9k_init_device(), and ath_rx_init().
int ath_rx_tasklet | ( | struct ath_softc * | sc, |
int | flush, | ||
int | hp | ||
) |
Definition at line 430 of file ath9k_recv.c.
References ah, alloc_iob_raw(), ath9k_hw_common(), ath9k_hw_rxena(), ath9k_rx_iob_preprocess(), ath_get_next_rx_buf(), ath_rx_buf_link(), ath_setdefantenna(), ath_buf::bf_buf_addr, ath_buf::bf_mpdu, ath9k_legacy_rate::bitrate, common, DBGIO, ath_rx::defant, ath_softc::dev, iob_pull, iob_put, ath_buf::list, list_add_tail, list_del, memset(), net80211_rx(), NULL, ath_softc::rates, retval, ath_rx_status::rs_antenna, ath_rx_status::rs_datalen, ath_rx_status::rs_rate, ath_rx_status::rs_rssi, ath_softc::rx, ath_rx::rxbuf, ath_rx::rxotherant, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_RXFLUSH, and virt_to_bus().
Referenced by ath9k_tasklet(), and ath_flushrecv().
Definition at line 106 of file ath9k_xmit.c.
References ah, ARRAY_SIZE, ath9k_hw_releasetxqueue(), ath9k_hw_setuptxqueue(), ATH9K_TXQ_USEDEFAULT, ATH_TXFIFO_DEPTH, ATH_TXQ_AC_BE, ATH_TXQ_SETUP, ath_txq::axq_acq, ath_txq::axq_ampdu_depth, ath_txq::axq_depth, ath_txq::axq_link, ath_txq::axq_q, ath_txq::axq_qnum, ath_txq::axq_tx_inprogress, DBG, INIT_LIST_HEAD, ath_txq::mac80211_qnum, memset(), NULL, ath_softc::sc_ah, subtype, ath9k_tx_queue_info::tqi_aifs, ath9k_tx_queue_info::tqi_cwmax, ath9k_tx_queue_info::tqi_cwmin, ath9k_tx_queue_info::tqi_physCompBuf, ath9k_tx_queue_info::tqi_qflags, ath9k_tx_queue_info::tqi_subtype, ath_softc::tx, ath_tx::txq, ath_txq::txq_fifo, ath_txq::txq_fifo_pending, TXQ_FLAG_TXDESCINT_ENABLE, TXQ_FLAG_TXEOLINT_ENABLE, ath_txq::txq_headidx, ath_txq::txq_tailidx, ath_tx::txqsetup, and WME_AC_BE.
Referenced by ath9k_init_queues().
Definition at line 255 of file ath9k_xmit.c.
References ath9k_hw_releasetxqueue(), ath_txq::axq_qnum, ath_softc::sc_ah, ath_softc::tx, and ath_tx::txqsetup.
Referenced by ath9k_deinit_softc(), and ath9k_init_softc().
int ath_drain_all_txq | ( | struct ath_softc * | sc, |
int | retry_tx | ||
) |
Definition at line 216 of file ath9k_xmit.c.
References ah, ath9k_hw_abort_tx_dma(), ath9k_hw_numtxpending(), ATH9K_NUM_TX_QUEUES, ath_draintxq(), ATH_TXQ_SETUP, ath_txq::axq_qnum, DBG, ath_softc::sc_ah, ath_softc::sc_flags, SC_OP_INVALID, ath_txq::stopped, ath_softc::tx, and ath_tx::txq.
Referenced by ath9k_stop(), ath_radio_disable(), ath_reset(), and ath_set_channel().
Definition at line 181 of file ath9k_xmit.c.
References __unused, ath_tx_complete_buf(), ath_tx_return_buffer(), ath_txq::axq_depth, ath_txq::axq_link, ath_txq::axq_q, ath_txq::axq_tx_inprogress, ath_buf::bf_lastbf, ath_buf::bf_stale, INIT_LIST_HEAD, ath_buf::list, list_cut_position, list_del, list_empty, list_first_entry, memset(), and NULL.
Referenced by ath_drain_all_txq().
Referenced by ath_reset().
int ath_tx_init | ( | struct ath_softc * | sc, |
int | nbufs | ||
) |
Definition at line 788 of file ath9k_xmit.c.
References ath_descdma_setup(), ath_tx_cleanup(), ath_tx_complete_poll_work(), DBG, error, ath_softc::tx, ath_softc::tx_complete_work, ath_tx::txbuf, and ath_tx::txdma.
Referenced by ath9k_init_device().
void ath_tx_cleanup | ( | struct ath_softc * | sc | ) |
Definition at line 809 of file ath9k_xmit.c.
References ath_descdma_cleanup(), ath_descdma::dd_desc_len, ath_softc::tx, ath_tx::txbuf, and ath_tx::txdma.
Referenced by ath9k_deinit_device(), ath9k_init_device(), and ath_tx_init().
int ath_txq_update | ( | struct ath_softc * | sc, |
int | qnum, | ||
struct ath9k_tx_queue_info * | q | ||
) |
int ath_tx_start | ( | struct net80211_device * | dev, |
struct io_buffer * | iob, | ||
struct ath_tx_control * | txctl | ||
) |
Definition at line 569 of file ath9k_xmit.c.
References ATH_MAX_QDEPTH, ath_tx_setup_buffer(), ath_tx_start_dma(), ath_softc::dev, ENOMEM, ath_txq::pending_frames, net80211_device::priv, ath_txq::stopped, ath_softc::tx, ath_tx_control::txq, and ath_tx::txq_map.
Referenced by ath9k_tx().
void ath_tx_tasklet | ( | struct ath_softc * | sc | ) |
Definition at line 771 of file ath9k_xmit.c.
References ath9k_hw_gettxintrtxqs(), ATH9K_NUM_TX_QUEUES, ath_tx_processq(), ATH_TXQ_SETUP, ath_softc::sc_ah, ath_softc::tx, and ath_tx::txq.
Referenced by ath9k_tasklet().
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 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 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().
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().
|
inlinestatic |
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 ath9k_init_crypto | ( | struct ath_softc * | sc | ) |
Definition at line 275 of file ath9k_init.c.
References AR_KEYTABLE_SIZE, AR_PCU_MIC_NEW_LOC_ENA, ath9k_hw_common(), ATH_CRYPT_CAP_MIC_COMBINED, ath_hw_keyreset(), common, ath_hw::misc_mode, and ath_softc::sc_ah.
Referenced by ath9k_init_softc().
int ath9k_init_device | ( | u16 | devid, |
struct ath_softc * | sc, | ||
u16 | subsysid, | ||
const struct ath_bus_ops * | bus_ops | ||
) |
Definition at line 486 of file ath9k_init.c.
References ath9k_deinit_softc(), ath9k_init_softc(), ath9k_init_txpower_limits(), ath9k_ops, ath9k_set_hw_capab(), ath_hw_pll_work(), ATH_RSSI_DUMMY_MARKER, ath_rx_cleanup(), ath_rx_init(), ATH_RXBUF, ath_tx_cleanup(), ath_tx_init(), ATH_TXBUF, ath_softc::dev, error, ath_softc::hw_pll_work, ath_softc::hwinfo, ath_softc::last_rssi, and net80211_register().
Referenced by ath_pci_probe().
void ath9k_deinit_device | ( | struct ath_softc * | sc | ) |
Definition at line 577 of file ath9k_init.c.
References ath9k_deinit_softc(), ath_rx_cleanup(), ath_tx_cleanup(), ath_softc::dev, and net80211_unregister().
Referenced by ath_pci_remove().
void ath9k_set_hw_capab | ( | struct ath_softc * | sc, |
struct net80211_device * | dev | ||
) |
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_radio_enable | ( | struct ath_softc * | sc, |
struct net80211_device * | dev | ||
) |
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 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().
int ath9k_uses_beacons | ( | int | type | ) |
Definition at line 409 of file ath9k_xmit.c.
References ah, CHANNEL_5GHZ, ath9k_channel::channelFlags, ath_softc::sc_ah, ath_softc::sc_flags, and SC_OP_ENABLE_APM.
Referenced by ath_buf_set_rate().
void ath_start_rfkill_poll | ( | struct ath_softc * | sc | ) |
void ath9k_rfkill_poll_state | ( | struct net80211_device * | dev | ) |
struct ath_config __attribute__ |
struct net80211_device_operations ath9k_ops |
Definition at line 909 of file ath9k_main.c.
Referenced by ath9k_init_device().
int ath9k_modparam_nohwcrypt |
int is_ath9k_unloaded |
Definition at line 29 of file ath9k_init.c.
Referenced by ath_pci_remove().