Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
ath9k.h File Reference
#include <linux/etherdevice.h>
#include <linux/device.h>
#include <linux/interrupt.h>
#include <linux/leds.h>
#include <linux/completion.h>
#include "debug.h"
#include "common.h"
#include "mci.h"
#include "dfs.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
 
struct  ath_rx_edma
 
struct  ath_rx
 
struct  ath_vif
 
struct  ath_beacon_config
 
struct  ath_beacon
 
struct  ath_btcoex
 
struct  ath9k_wow_pattern
 
struct  ath_ant_comb
 
struct  ath9k_vif_iter_data
 
struct  ath_softc
 

Macros

#define ito64(x)
 
#define INCR(_l, _sz)
 
#define DECR(_l,_sz)
 
#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 ATH_TXSTATUS_RING_SIZE   512
 
#define DS2PHYS(_dd, _ds)   ((_dd)->dd_desc_paddr + ((caddr_t)(_ds) - (caddr_t)(_dd)->dd_desc))
 
#define ATH_DESC_4KB_BOUND_CHECK(_daddr)   ((((_daddr) & 0xFFF) > 0xF7F) ? 1 : 0)
 
#define ATH_DESC_4KB_BOUND_NUM_SKIPPED(_len)   ((_len) / 4096)
 
#define ATH_RXBUF   512
 
#define ATH_TXBUF   512
 
#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 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_BA_INDEX2SEQ(_seq, _offset)   (((_seq) + (_offset)) & (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 IS_CCK_RATE(rate)   ((rate >= 0x18) && (rate <= 0x1e))
 
#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 BSTUCK_THRESH   9
 
#define ATH_BCBUF   8
 
#define ATH_DEFAULT_BINTVAL   100 /* TU */
 
#define ATH_DEFAULT_BMISS_LIMIT   10
 
#define IEEE80211_MS_TO_TU(x)   (((x) * 1000) / 1024)
 
#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 ATH_PAPRD_TIMEOUT   100 /* msecs */
 
#define ATH_PLL_WORK_INTERVAL   100
 
#define ATH_LED_PIN_DEF   1
 
#define ATH_LED_PIN_9287   8
 
#define ATH_LED_PIN_9300   10
 
#define ATH_LED_PIN_9485   6
 
#define ATH_LED_PIN_9462   4
 
#define ATH_ANT_RX_CURRENT_SHIFT   4
 
#define ATH_ANT_RX_MAIN_SHIFT   2
 
#define ATH_ANT_RX_MASK   0x3
 
#define ATH_ANT_DIV_COMB_SHORT_SCAN_INTR   50
 
#define ATH_ANT_DIV_COMB_SHORT_SCAN_PKTCOUNT   0x100
 
#define ATH_ANT_DIV_COMB_MAX_PKTCOUNT   0x200
 
#define ATH_ANT_DIV_COMB_INIT_COUNT   95
 
#define ATH_ANT_DIV_COMB_MAX_COUNT   100
 
#define ATH_ANT_DIV_COMB_ALT_ANT_RATIO   30
 
#define ATH_ANT_DIV_COMB_ALT_ANT_RATIO2   20
 
#define ATH_ANT_DIV_COMB_LNA1_LNA2_SWITCH_DELTA   -1
 
#define ATH_ANT_DIV_COMB_LNA1_DELTA_HI   -4
 
#define ATH_ANT_DIV_COMB_LNA1_DELTA_MID   -2
 
#define ATH_ANT_DIV_COMB_LNA1_DELTA_LOW   2
 
#define DEFAULT_CACHELINE   32
 
#define ATH_REGCLASSIDS_MAX   10
 
#define ATH_CABQ_READY_TIME   80 /* % of beacon interval */
 
#define ATH_MAX_SW_RETRIES   30
 
#define ATH_CHAN_MAX   255
 
#define ATH_TXPOWER_MAX   100 /* .5 dBm units */
 
#define ATH_RATE_DUMMY_MARKER   0
 
#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)
 

Enumerations

enum  buffer_type { BUF_AMPDU = BIT(0), BUF_AGGR = BIT(1) }
 
enum  ATH_AGGR_STATUS { ATH_AGGR_DONE, ATH_AGGR_BAW_CLOSED, ATH_AGGR_LIMITED }
 
enum  bt_op_flags { BT_OP_PRIORITY_DETECTED, BT_OP_SCAN }
 
enum  ath9k_ant_div_comb_lna_conf { ATH_ANT_DIV_COMB_LNA1_MINUS_LNA2, ATH_ANT_DIV_COMB_LNA2, ATH_ANT_DIV_COMB_LNA1, ATH_ANT_DIV_COMB_LNA1_PLUS_LNA2 }
 
enum  sc_op_flags {
  SC_OP_INVALID, SC_OP_BEACONS, SC_OP_RXFLUSH, SC_OP_ANI_RUN,
  SC_OP_PRIM_STA_VIF, SC_OP_HW_RESET
}
 

Functions

int ath_descdma_setup (struct ath_softc *sc, struct ath_descdma *dd, struct list_head *head, const char *name, int nbuf, int ndesc, bool 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)
 
bool 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, bool hp)
 
struct ath_txqath_txq_setup (struct ath_softc *sc, int qtype, int subtype)
 
void ath_txq_lock (struct ath_softc *sc, struct ath_txq *txq)
 
void ath_txq_unlock (struct ath_softc *sc, struct ath_txq *txq)
 
void ath_txq_unlock_complete (struct ath_softc *sc, struct ath_txq *txq)
 
void ath_tx_cleanupq (struct ath_softc *sc, struct ath_txq *txq)
 
bool ath_drain_all_txq (struct ath_softc *sc, bool retry_tx)
 
void ath_draintxq (struct ath_softc *sc, struct ath_txq *txq, bool retry_tx)
 
void ath_tx_node_init (struct ath_softc *sc, struct ath_node *an)
 
void ath_tx_node_cleanup (struct ath_softc *sc, struct ath_node *an)
 
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)
 
void ath_update_max_aggr_framelen (struct ath_softc *sc, int queue, int txop)
 
int ath_tx_start (struct ieee80211_hw *hw, struct sk_buff *skb, struct ath_tx_control *txctl)
 
void ath_tx_tasklet (struct ath_softc *sc)
 
void ath_tx_edma_tasklet (struct ath_softc *sc)
 
int ath_tx_aggr_start (struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid, u16 *ssn)
 
void ath_tx_aggr_stop (struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid)
 
void ath_tx_aggr_resume (struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid)
 
void ath_tx_aggr_wakeup (struct ath_softc *sc, struct ath_node *an)
 
void ath_tx_aggr_sleep (struct ieee80211_sta *sta, struct ath_softc *sc, struct ath_node *an)
 
void ath9k_beacon_tasklet (unsigned long data)
 
bool ath9k_allow_beacon_config (struct ath_softc *sc, struct ieee80211_vif *vif)
 
void ath9k_beacon_config (struct ath_softc *sc, struct ieee80211_vif *vif, u32 changed)
 
void ath9k_beacon_assign_slot (struct ath_softc *sc, struct ieee80211_vif *vif)
 
void ath9k_beacon_remove_slot (struct ath_softc *sc, struct ieee80211_vif *vif)
 
void ath9k_set_tsfadjust (struct ath_softc *sc, struct ieee80211_vif *vif)
 
void ath9k_set_beacon (struct ath_softc *sc)
 
void ath_tx_complete_poll_work (struct work_struct *work)
 
void ath_reset_work (struct work_struct *work)
 
void ath_hw_check (struct work_struct *work)
 
void ath_hw_pll_work (struct work_struct *work)
 
void ath_rx_poll (unsigned long data)
 
void ath_start_rx_poll (struct ath_softc *sc, u8 nbeacon)
 
void ath_paprd_calibrate (struct work_struct *work)
 
void ath_ani_calibrate (unsigned long data)
 
void ath_start_ani (struct ath_softc *sc)
 
void ath_stop_ani (struct ath_softc *sc)
 
void ath_check_ani (struct ath_softc *sc)
 
int ath_update_survey_stats (struct ath_softc *sc)
 
void ath_update_survey_nf (struct ath_softc *sc, int channel)
 
void ath9k_queue_reset (struct ath_softc *sc, enum ath_reset_type type)
 
void ath_ant_comb_scan (struct ath_softc *sc, struct ath_rx_status *rs)
 
void ath_ant_comb_update (struct ath_softc *sc)
 
void ath9k_tasklet (unsigned long data)
 
int ath_cabq_update (struct ath_softc *)
 
u8 ath9k_parse_mpdudensity (u8 mpdudensity)
 
irqreturn_t ath_isr (int irq, void *dev)
 
int ath9k_init_device (u16 devid, struct ath_softc *sc, 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 ieee80211_hw *hw)
 
void ath9k_reload_chainmask_settings (struct ath_softc *sc)
 
bool ath9k_uses_beacons (int type)
 
void ath9k_ps_wakeup (struct ath_softc *sc)
 
void ath9k_ps_restore (struct ath_softc *sc)
 
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 ieee80211_hw *hw)
 
void ath9k_calculate_iter_data (struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ath9k_vif_iter_data *iter_data)
 

Variables

struct ieee80211_ops ath9k_ops
 
int ath9k_modparam_nohwcrypt
 
int led_blink
 
bool is_ath9k_unloaded
 

Macro Definition Documentation

#define AGGR_ADDBA_COMPLETE   BIT(2)

Definition at line 278 of file ath9k.h.

#define AGGR_ADDBA_PROGRESS   BIT(3)

Definition at line 279 of file ath9k.h.

#define AGGR_CLEANUP   BIT(1)

Definition at line 277 of file ath9k.h.

#define ATH_AGGR_DELIM_SZ   4

Definition at line 137 of file ath9k.h.

#define ATH_AGGR_ENCRYPTDELIM   10

Definition at line 140 of file ath9k.h.

#define ATH_AGGR_GET_NDELIM (   _len)
Value:
(((_len) >= ATH_AGGR_MINPLEN) ? 0 : \
DIV_ROUND_UP(ATH_AGGR_MINPLEN - (_len), ATH_AGGR_DELIM_SZ))

Definition at line 167 of file ath9k.h.

#define ATH_AGGR_MIN_QDEPTH   2

Definition at line 142 of file ath9k.h.

#define ATH_AGGR_MINPLEN   256 /* in bytes, minimum packet length */

Definition at line 138 of file ath9k.h.

#define ATH_AMPDU_SUBFRAME_DEFAULT   32

Definition at line 143 of file ath9k.h.

#define ATH_AN_2_TID (   _an,
  _tidno 
)    (&(_an)->tid[(_tidno)])

Definition at line 174 of file ath9k.h.

#define ATH_ANI_POLLINTERVAL_NEW   1000 /* 1000 ms */

Definition at line 436 of file ath9k.h.

#define ATH_ANI_POLLINTERVAL_OLD   100 /* 100 ms */

Definition at line 435 of file ath9k.h.

#define ATH_ANT_DIV_COMB_ALT_ANT_RATIO   30

Definition at line 569 of file ath9k.h.

#define ATH_ANT_DIV_COMB_ALT_ANT_RATIO2   20

Definition at line 570 of file ath9k.h.

#define ATH_ANT_DIV_COMB_INIT_COUNT   95

Definition at line 567 of file ath9k.h.

#define ATH_ANT_DIV_COMB_LNA1_DELTA_HI   -4

Definition at line 573 of file ath9k.h.

#define ATH_ANT_DIV_COMB_LNA1_DELTA_LOW   2

Definition at line 575 of file ath9k.h.

#define ATH_ANT_DIV_COMB_LNA1_DELTA_MID   -2

Definition at line 574 of file ath9k.h.

#define ATH_ANT_DIV_COMB_LNA1_LNA2_SWITCH_DELTA   -1

Definition at line 572 of file ath9k.h.

#define ATH_ANT_DIV_COMB_MAX_COUNT   100

Definition at line 568 of file ath9k.h.

#define ATH_ANT_DIV_COMB_MAX_PKTCOUNT   0x200

Definition at line 566 of file ath9k.h.

#define ATH_ANT_DIV_COMB_SHORT_SCAN_INTR   50

Definition at line 564 of file ath9k.h.

#define ATH_ANT_DIV_COMB_SHORT_SCAN_PKTCOUNT   0x100

Definition at line 565 of file ath9k.h.

#define ATH_ANT_RX_CURRENT_SHIFT   4

Definition at line 560 of file ath9k.h.

#define ATH_ANT_RX_MAIN_SHIFT   2

Definition at line 561 of file ath9k.h.

#define ATH_ANT_RX_MASK   0x3

Definition at line 562 of file ath9k.h.

#define ATH_AP_SHORT_CALINTERVAL   100 /* 100 ms */

Definition at line 434 of file ath9k.h.

#define ATH_BA_INDEX (   _st,
  _seq 
)    (((_seq) - (_st)) & (IEEE80211_SEQ_MAX - 1))

Definition at line 161 of file ath9k.h.

#define ATH_BA_INDEX2SEQ (   _seq,
  _offset 
)    (((_seq) + (_offset)) & (IEEE80211_SEQ_MAX - 1))

Definition at line 164 of file ath9k.h.

#define ATH_BA_ISSET (   _bm,
  _n 
)
Value:
(((_n) < (WME_BA_BMP_SIZE)) && \
((_bm)[(_n) >> 5] & (1 << ((_n) & 31))))

Definition at line 157 of file ath9k.h.

#define ATH_BCBUF   8

Definition at line 384 of file ath9k.h.

#define ATH_CABQ_READY_TIME   80 /* % of beacon interval */

Definition at line 623 of file ath9k.h.

#define ATH_CHAN_MAX   255

Definition at line 625 of file ath9k.h.

#define ATH_DEFAULT_BINTVAL   100 /* TU */

Definition at line 385 of file ath9k.h.

#define ATH_DEFAULT_BMISS_LIMIT   10

Definition at line 386 of file ath9k.h.

#define ATH_DESC_4KB_BOUND_CHECK (   _daddr)    ((((_daddr) & 0xFFF) > 0xF7F) ? 1 : 0)

Definition at line 105 of file ath9k.h.

#define ATH_DESC_4KB_BOUND_NUM_SKIPPED (   _len)    ((_len) / 4096)

Definition at line 106 of file ath9k.h.

#define ATH_LED_PIN_9287   8

Definition at line 534 of file ath9k.h.

#define ATH_LED_PIN_9300   10

Definition at line 535 of file ath9k.h.

#define ATH_LED_PIN_9462   4

Definition at line 537 of file ath9k.h.

#define ATH_LED_PIN_9485   6

Definition at line 536 of file ath9k.h.

#define ATH_LED_PIN_DEF   1

Definition at line 533 of file ath9k.h.

#define ATH_LONG_CALINTERVAL   30000 /* 30 seconds */

Definition at line 438 of file ath9k.h.

#define ATH_LONG_CALINTERVAL_INT   1000 /* 1000 ms */

Definition at line 437 of file ath9k.h.

#define ATH_MAX_QDEPTH   (ATH_TXBUF / 4 - ATH_TXBUF_RESERVE)

Definition at line 128 of file ath9k.h.

#define ATH_MAX_SW_RETRIES   30

Definition at line 624 of file ath9k.h.

#define ATH_PAPRD_TIMEOUT   100 /* msecs */

Definition at line 441 of file ath9k.h.

#define ATH_PLL_WORK_INTERVAL   100

Definition at line 442 of file ath9k.h.

#define ATH_RATE_DUMMY_MARKER   0

Definition at line 628 of file ath9k.h.

#define ATH_REGCLASSIDS_MAX   10

Definition at line 622 of file ath9k.h.

#define ATH_RESTART_CALINTERVAL   1200000 /* 20 minutes */

Definition at line 439 of file ath9k.h.

#define ATH_RXBUF   512

Definition at line 125 of file ath9k.h.

#define ATH_RXBUF_RESET (   _bf)
Value:
do { \
(_bf)->bf_stale = false; \
} while (0)

Definition at line 82 of file ath9k.h.

#define ATH_STA_SHORT_CALINTERVAL   1000 /* 1 second */

Definition at line 433 of file ath9k.h.

#define ATH_TX_COMPLETE_POLL_INT   1000

Definition at line 178 of file ath9k.h.

#define ATH_TX_ERROR   0x01

Definition at line 288 of file ath9k.h.

#define ATH_TXBUF   512

Definition at line 126 of file ath9k.h.

#define ATH_TXBUF_RESERVE   5

Definition at line 127 of file ath9k.h.

#define ATH_TXBUF_RESET (   _bf)
Value:
do { \
(_bf)->bf_stale = false; \
(_bf)->bf_lastbf = NULL; \
(_bf)->bf_next = NULL; \
memset(&((_bf)->bf_state), 0, \
sizeof(struct ath_buf_state)); \
} while (0)

Definition at line 74 of file ath9k.h.

#define ATH_TXFIFO_DEPTH   8

Definition at line 186 of file ath9k.h.

#define ATH_TXMAXTRY   13

Definition at line 129 of file ath9k.h.

#define ATH_TXPOWER_MAX   100 /* .5 dBm units */

Definition at line 627 of file ath9k.h.

#define ATH_TXQ_SETUP (   sc,
  i 
)    ((sc)->tx.txqsetup & (1<<i))

Definition at line 63 of file ath9k.h.

#define ATH_TXSTATUS_RING_SIZE   512

Definition at line 101 of file ath9k.h.

#define BAW_WITHIN (   _start,
  _bawsz,
  _seqno 
)    ((((_seqno) - (_start)) & 4095) < (_bawsz))

Definition at line 171 of file ath9k.h.

#define bf_isaggr (   bf)    (bf->bf_state.bf_type & BUF_AGGR)

Definition at line 99 of file ath9k.h.

#define bf_isampdu (   bf)    (bf->bf_state.bf_type & BUF_AMPDU)

Definition at line 98 of file ath9k.h.

#define BSTUCK_THRESH   9

Definition at line 383 of file ath9k.h.

#define DECR (   _l,
  _sz 
)
Value:
do { \
(_l)--; \
(_l) &= ((_sz) - 1); \
} while (0)

Definition at line 55 of file ath9k.h.

#define DEFAULT_CACHELINE   32

Definition at line 621 of file ath9k.h.

#define DS2PHYS (   _dd,
  _ds 
)    ((_dd)->dd_desc_paddr + ((caddr_t)(_ds) - (caddr_t)(_dd)->dd_desc))

Definition at line 103 of file ath9k.h.

#define IEEE80211_MAX_MPDU_LEN
Value:
(3840 + FCS_LEN + \
IEEE80211_WEP_KIDLEN + \
IEEE80211_WEP_CRCLEN))

Definition at line 150 of file ath9k.h.

#define IEEE80211_MS_TO_TU (   x)    (((x) * 1000) / 1024)

Definition at line 387 of file ath9k.h.

#define IEEE80211_SEQ_MAX   4096

Definition at line 146 of file ath9k.h.

#define IEEE80211_SEQ_SEQ_SHIFT   4

Definition at line 145 of file ath9k.h.

#define IEEE80211_WEP_CRCLEN   4

Definition at line 149 of file ath9k.h.

#define IEEE80211_WEP_IVLEN   3

Definition at line 147 of file ath9k.h.

#define IEEE80211_WEP_KIDLEN   1

Definition at line 148 of file ath9k.h.

#define INCR (   _l,
  _sz 
)
Value:
do { \
(_l)++; \
(_l) &= ((_sz) - 1); \
} while (0)

Definition at line 49 of file ath9k.h.

#define IS_CCK_RATE (   rate)    ((rate >= 0x18) && (rate <= 0x1e))

Definition at line 176 of file ath9k.h.

#define ito64 (   x)
Value:
(sizeof(x) == 1) ? \
(((unsigned long long int)(x)) & (0xff)) : \
(sizeof(x) == 2) ? \
(((unsigned long long int)(x)) & 0xffff) : \
((sizeof(x) == 4) ? \
(((unsigned long long int)(x)) & 0xffffffff) : \
(unsigned long long int)(x))

Definition at line 40 of file ath9k.h.

#define PS_BEACON_SYNC   BIT(4)

Definition at line 644 of file ath9k.h.

#define PS_WAIT_FOR_BEACON   BIT(0)

Definition at line 640 of file ath9k.h.

#define PS_WAIT_FOR_CAB   BIT(1)

Definition at line 641 of file ath9k.h.

#define PS_WAIT_FOR_PSPOLL_DATA   BIT(2)

Definition at line 642 of file ath9k.h.

#define PS_WAIT_FOR_TX_ACK   BIT(3)

Definition at line 643 of file ath9k.h.

#define TID_TO_WME_AC (   _tid)
Value:
((((_tid) == 0) || ((_tid) == 3)) ? WME_AC_BE : \
(((_tid) == 1) || ((_tid) == 2)) ? WME_AC_BK : \
(((_tid) == 4) || ((_tid) == 5)) ? WME_AC_VI : \

Definition at line 131 of file ath9k.h.

#define TSF_TO_TU (   _h,
  _l 
)    ((((u32)(_h)) << 22) | (((u32)(_l)) >> 10))

Definition at line 60 of file ath9k.h.

Enumeration Type Documentation

Enumerator:
ATH_ANT_DIV_COMB_LNA1_MINUS_LNA2 
ATH_ANT_DIV_COMB_LNA2 
ATH_ANT_DIV_COMB_LNA1 
ATH_ANT_DIV_COMB_LNA1_PLUS_LNA2 

Definition at line 577 of file ath9k.h.

Enumerator:
ATH_AGGR_DONE 
ATH_AGGR_BAW_CLOSED 
ATH_AGGR_LIMITED 

Definition at line 180 of file ath9k.h.

Enumerator:
BT_OP_PRIORITY_DETECTED 
BT_OP_SCAN 

Definition at line 463 of file ath9k.h.

enum buffer_type - Buffer type flags

: This buffer is an ampdu, as part of an aggregate (during TX) : Indicates whether the buffer can be aggregated (used in aggregation scheduling)

Enumerator:
BUF_AMPDU 
BUF_AGGR 

Definition at line 93 of file ath9k.h.

Enumerator:
SC_OP_INVALID 
SC_OP_BEACONS 
SC_OP_RXFLUSH 
SC_OP_ANI_RUN 
SC_OP_PRIM_STA_VIF 
SC_OP_HW_RESET 

Definition at line 630 of file ath9k.h.

Function Documentation

bool ath9k_allow_beacon_config ( struct ath_softc sc,
struct ieee80211_vif vif 
)

Definition at line 602 of file beacon.c.

void ath9k_beacon_assign_slot ( struct ath_softc sc,
struct ieee80211_vif vif 
)

Definition at line 215 of file beacon.c.

void ath9k_beacon_config ( struct ath_softc sc,
struct ieee80211_vif vif,
u32  changed 
)

Definition at line 664 of file beacon.c.

void ath9k_beacon_remove_slot ( struct ath_softc sc,
struct ieee80211_vif vif 
)

Definition at line 238 of file beacon.c.

void ath9k_beacon_tasklet ( unsigned long  data)

Definition at line 310 of file beacon.c.

void ath9k_calculate_iter_data ( struct ieee80211_hw hw,
struct ieee80211_vif vif,
struct ath9k_vif_iter_data iter_data 
)

Definition at line 902 of file main.c.

void ath9k_deinit_device ( struct ath_softc sc)

Definition at line 892 of file init.c.

int ath9k_init_device ( u16  devid,
struct ath_softc sc,
const struct ath_bus_ops bus_ops 
)

Definition at line 782 of file init.c.

u8 ath9k_parse_mpdudensity ( u8  mpdudensity)

Definition at line 25 of file main.c.

void ath9k_ps_restore ( struct ath_softc sc)

Definition at line 115 of file main.c.

void ath9k_ps_wakeup ( struct ath_softc sc)

Definition at line 85 of file main.c.

void ath9k_queue_reset ( struct ath_softc sc,
enum ath_reset_type  type 
)

Definition at line 585 of file main.c.

void ath9k_reload_chainmask_settings ( struct ath_softc sc)

Definition at line 662 of file init.c.

void ath9k_rfkill_poll_state ( struct ieee80211_hw hw)

Definition at line 106 of file gpio.c.

void ath9k_set_beacon ( struct ath_softc sc)

Definition at line 700 of file beacon.c.

void ath9k_set_hw_capab ( struct ath_softc sc,
struct ieee80211_hw hw 
)

Definition at line 692 of file init.c.

void ath9k_set_tsfadjust ( struct ath_softc sc,
struct ieee80211_vif vif 
)

Definition at line 293 of file beacon.c.

void ath9k_tasklet ( unsigned long  data)

Definition at line 361 of file main.c.

bool ath9k_uses_beacons ( int  type)

Definition at line 846 of file main.c.

void ath_ani_calibrate ( unsigned long  data)

Definition at line 332 of file link.c.

void ath_ant_comb_scan ( struct ath_softc sc,
struct ath_rx_status rs 
)

Definition at line 543 of file antenna.c.

void ath_ant_comb_update ( struct ath_softc sc)

Definition at line 776 of file antenna.c.

int ath_cabq_update ( struct ath_softc )

Definition at line 1452 of file xmit.c.

u32 ath_calcrxfilter ( struct ath_softc sc)

Definition at line 391 of file recv.c.

void ath_check_ani ( struct ath_softc sc)

Definition at line 462 of file link.c.

void ath_descdma_cleanup ( struct ath_softc sc,
struct ath_descdma dd,
struct list_head head 
)

Definition at line 909 of file init.c.

int ath_descdma_setup ( struct ath_softc sc,
struct ath_descdma dd,
struct list_head head,
const char name,
int  nbuf,
int  ndesc,
bool  is_tx 
)

Definition at line 328 of file init.c.

bool ath_drain_all_txq ( struct ath_softc sc,
bool  retry_tx 
)

Definition at line 1549 of file xmit.c.

void ath_draintxq ( struct ath_softc sc,
struct ath_txq txq,
bool  retry_tx 
)

Definition at line 1522 of file xmit.c.

void ath_flushrecv ( struct ath_softc sc)

Definition at line 502 of file recv.c.

void ath_hw_check ( struct work_struct work)

Definition at line 64 of file link.c.

void ath_hw_pll_work ( struct work_struct work)

Definition at line 133 of file link.c.

irqreturn_t ath_isr ( int  irq,
void dev 
)

Definition at line 429 of file main.c.

void ath_paprd_calibrate ( struct work_struct work)

Definition at line 244 of file link.c.

void ath_reset_work ( struct work_struct work)

Definition at line 594 of file main.c.

void ath_rx_cleanup ( struct ath_softc sc)

Definition at line 344 of file recv.c.

int ath_rx_init ( struct ath_softc sc,
int  nbufs 
)

Definition at line 280 of file recv.c.

void ath_rx_poll ( unsigned long  data)

Definition at line 172 of file link.c.

int ath_rx_tasklet ( struct ath_softc sc,
int  flush,
bool  hp 
)

Definition at line 1037 of file recv.c.

void ath_start_ani ( struct ath_softc sc)

Definition at line 434 of file link.c.

void ath_start_rfkill_poll ( struct ath_softc sc)

Definition at line 114 of file gpio.c.

void ath_start_rx_poll ( struct ath_softc sc,
u8  nbeacon 
)

Definition at line 160 of file link.c.

int ath_startrecv ( struct ath_softc sc)

Definition at line 440 of file recv.c.

void ath_stop_ani ( struct ath_softc sc)

Definition at line 454 of file link.c.

bool ath_stoprecv ( struct ath_softc sc)

Definition at line 476 of file recv.c.

void ath_tx_aggr_resume ( struct ath_softc sc,
struct ieee80211_sta sta,
u16  tid 
)

Definition at line 1317 of file xmit.c.

void ath_tx_aggr_sleep ( struct ieee80211_sta sta,
struct ath_softc sc,
struct ath_node an 
)

Definition at line 1256 of file xmit.c.

int ath_tx_aggr_start ( struct ath_softc sc,
struct ieee80211_sta sta,
u16  tid,
u16 ssn 
)

Definition at line 1189 of file xmit.c.

void ath_tx_aggr_stop ( struct ath_softc sc,
struct ieee80211_sta sta,
u16  tid 
)

Definition at line 1224 of file xmit.c.

void ath_tx_aggr_wakeup ( struct ath_softc sc,
struct ath_node an 
)

Definition at line 1292 of file xmit.c.

void ath_tx_cleanup ( struct ath_softc sc)

Definition at line 2430 of file xmit.c.

void ath_tx_cleanupq ( struct ath_softc sc,
struct ath_txq txq 
)

Definition at line 1591 of file xmit.c.

void ath_tx_complete_poll_work ( struct work_struct work)

Definition at line 23 of file link.c.

void ath_tx_edma_tasklet ( struct ath_softc sc)

Definition at line 2289 of file xmit.c.

int ath_tx_init ( struct ath_softc sc,
int  nbufs 
)

Definition at line 2392 of file xmit.c.

void ath_tx_node_cleanup ( struct ath_softc sc,
struct ath_node an 
)

Definition at line 2474 of file xmit.c.

void ath_tx_node_init ( struct ath_softc sc,
struct ath_node an 
)

Definition at line 2442 of file xmit.c.

int ath_tx_start ( struct ieee80211_hw hw,
struct sk_buff skb,
struct ath_tx_control txctl 
)

Definition at line 1949 of file xmit.c.

void ath_tx_tasklet ( struct ath_softc sc)

Definition at line 2277 of file xmit.c.

u8 ath_txchainmask_reduction ( struct ath_softc sc,
u8  chainmask,
u32  rate 
)

Definition at line 1832 of file xmit.c.

void ath_txq_lock ( struct ath_softc sc,
struct ath_txq txq 
)

Definition at line 82 of file xmit.c.

void ath_txq_schedule ( struct ath_softc sc,
struct ath_txq txq 
)

Definition at line 1600 of file xmit.c.

struct ath_txq* ath_txq_setup ( struct ath_softc sc,
int  qtype,
int  subtype 
)
read

Definition at line 1352 of file xmit.c.

void ath_txq_unlock ( struct ath_softc sc,
struct ath_txq txq 
)

Definition at line 88 of file xmit.c.

void ath_txq_unlock_complete ( struct ath_softc sc,
struct ath_txq txq 
)

Definition at line 94 of file xmit.c.

int ath_txq_update ( struct ath_softc sc,
int  qnum,
struct ath9k_tx_queue_info q 
)

Definition at line 1425 of file xmit.c.

void ath_update_max_aggr_framelen ( struct ath_softc sc,
int  queue,
int  txop 
)

Definition at line 937 of file xmit.c.

void ath_update_survey_nf ( struct ath_softc sc,
int  channel 
)

Definition at line 500 of file link.c.

int ath_update_survey_stats ( struct ath_softc sc)

Definition at line 517 of file link.c.

Variable Documentation

int ath9k_modparam_nohwcrypt

Definition at line 37 of file init.c.

struct ieee80211_ops ath9k_ops

Definition at line 2374 of file main.c.

bool is_ath9k_unloaded

Definition at line 53 of file init.c.

int led_blink

Definition at line 41 of file init.c.