Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations | Functions
xmit.c File Reference
#include <linux/dma-mapping.h>
#include "ath9k.h"
#include "ar9003_mac.h"

Go to the source code of this file.

Macros

#define BITS_PER_BYTE   8
 
#define OFDM_PLCP_BITS   22
 
#define HT_RC_2_STREAMS(_rc)   ((((_rc) & 0x78) >> 3) + 1)
 
#define L_STF   8
 
#define L_LTF   8
 
#define L_SIG   4
 
#define HT_SIG   8
 
#define HT_STF   4
 
#define HT_LTF(_ns)   (4 * (_ns))
 
#define SYMBOL_TIME(_ns)   ((_ns) << 2) /* ns * 4 us */
 
#define SYMBOL_TIME_HALFGI(_ns)   (((_ns) * 18 + 4) / 5) /* ns * 3.6 us */
 
#define TIME_SYMBOLS(t)   ((t) >> 2)
 
#define TIME_SYMBOLS_HALFGI(t)   (((t) * 5 - 4) / 18)
 
#define NUM_SYMBOLS_PER_USEC(_usec)   (_usec >> 2)
 
#define NUM_SYMBOLS_PER_USEC_HALFGI(_usec)   (((_usec*5)-4)/18)
 
#define IS_HT_RATE(_rate)   ((_rate) & 0x80)
 
#define FIRST_DESC_NDELIMS   60
 
#define PADBYTES(_len)   ((4 - ((_len) % 4)) % 4)
 

Enumerations

enum  { MCS_HT20, MCS_HT20_SGI, MCS_HT40, MCS_HT40_SGI }
 

Functions

void ath_txq_lock (struct ath_softc *sc, struct ath_txq *txq) __acquires(&txq-> axq_lock)
 
void ath_txq_unlock (struct ath_softc *sc, struct ath_txq *txq) __releases(&txq-> axq_lock)
 
void ath_txq_unlock_complete (struct ath_softc *sc, struct ath_txq *txq) __releases(&txq-> axq_lock)
 
void ath_update_max_aggr_framelen (struct ath_softc *sc, int queue, int txop)
 
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_sleep (struct ieee80211_sta *sta, struct ath_softc *sc, struct ath_node *an)
 
void ath_tx_aggr_wakeup (struct ath_softc *sc, struct ath_node *an)
 
void ath_tx_aggr_resume (struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid)
 
struct ath_txqath_txq_setup (struct ath_softc *sc, int qtype, int subtype)
 
int ath_txq_update (struct ath_softc *sc, int qnum, struct ath9k_tx_queue_info *qinfo)
 
int ath_cabq_update (struct ath_softc *sc)
 
void ath_draintxq (struct ath_softc *sc, struct ath_txq *txq, bool retry_tx)
 
bool ath_drain_all_txq (struct ath_softc *sc, bool retry_tx)
 
void ath_tx_cleanupq (struct ath_softc *sc, struct ath_txq *txq)
 
void ath_txq_schedule (struct ath_softc *sc, struct ath_txq *txq)
 
u8 ath_txchainmask_reduction (struct ath_softc *sc, u8 chainmask, u32 rate)
 
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_init (struct ath_softc *sc, int nbufs)
 
void ath_tx_cleanup (struct ath_softc *sc)
 
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)
 

Macro Definition Documentation

#define BITS_PER_BYTE   8

Definition at line 21 of file xmit.c.

#define FIRST_DESC_NDELIMS   60
#define HT_LTF (   _ns)    (4 * (_ns))

Definition at line 29 of file xmit.c.

#define HT_RC_2_STREAMS (   _rc)    ((((_rc) & 0x78) >> 3) + 1)

Definition at line 23 of file xmit.c.

#define HT_SIG   8

Definition at line 27 of file xmit.c.

#define HT_STF   4

Definition at line 28 of file xmit.c.

#define IS_HT_RATE (   _rate)    ((_rate) & 0x80)

Definition at line 50 of file xmit.c.

#define L_LTF   8

Definition at line 25 of file xmit.c.

#define L_SIG   4

Definition at line 26 of file xmit.c.

#define L_STF   8

Definition at line 24 of file xmit.c.

#define NUM_SYMBOLS_PER_USEC (   _usec)    (_usec >> 2)

Definition at line 34 of file xmit.c.

#define NUM_SYMBOLS_PER_USEC_HALFGI (   _usec)    (((_usec*5)-4)/18)

Definition at line 35 of file xmit.c.

#define OFDM_PLCP_BITS   22

Definition at line 22 of file xmit.c.

#define PADBYTES (   _len)    ((4 - ((_len) % 4)) % 4)
#define SYMBOL_TIME (   _ns)    ((_ns) << 2) /* ns * 4 us */

Definition at line 30 of file xmit.c.

#define SYMBOL_TIME_HALFGI (   _ns)    (((_ns) * 18 + 4) / 5) /* ns * 3.6 us */

Definition at line 31 of file xmit.c.

#define TIME_SYMBOLS (   t)    ((t) >> 2)

Definition at line 32 of file xmit.c.

#define TIME_SYMBOLS_HALFGI (   t)    (((t) * 5 - 4) / 18)

Definition at line 33 of file xmit.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
MCS_HT20 
MCS_HT20_SGI 
MCS_HT40 
MCS_HT40_SGI 

Definition at line 71 of file xmit.c.

Function Documentation

int ath_cabq_update ( struct ath_softc sc)

Definition at line 1452 of file xmit.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_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_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 
) -> axq_lock)

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 
) -> axq_lock)

Definition at line 88 of file xmit.c.

void ath_txq_unlock_complete ( struct ath_softc sc,
struct ath_txq txq 
) -> axq_lock)

Definition at line 94 of file xmit.c.

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

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.