iPXE
|
#include <unistd.h>
Go to the source code of this file.
Data Structures | |
struct | ath_tx_status |
struct | ath_rx_status |
struct | ath_htc_rx_status |
struct | ath_desc |
struct | ar5416_desc |
struct | ath9k_tx_queue_info |
struct | ath9k_11n_rate_series |
Macros | |
#define | RXSTATUS_RATE(ah, ads) |
#define | set11nTries(_series, _index) (SM((_series)[_index].Tries, AR_XmitDataTries##_index)) |
#define | set11nRate(_series, _index) (SM((_series)[_index].Rate, AR_XmitRate##_index)) |
#define | set11nPktDurRTSCTS(_series, _index) |
#define | set11nRateFlags(_series, _index) |
#define | CCK_SIFS_TIME 10 |
#define | CCK_PREAMBLE_BITS 144 |
#define | CCK_PLCP_BITS 48 |
#define | OFDM_SIFS_TIME 16 |
#define | OFDM_PREAMBLE_TIME 20 |
#define | OFDM_PLCP_BITS 22 |
#define | OFDM_SYMBOL_TIME 4 |
#define | OFDM_SIFS_TIME_HALF 32 |
#define | OFDM_PREAMBLE_TIME_HALF 40 |
#define | OFDM_PLCP_BITS_HALF 22 |
#define | OFDM_SYMBOL_TIME_HALF 8 |
#define | OFDM_SIFS_TIME_QUARTER 64 |
#define | OFDM_PREAMBLE_TIME_QUARTER 80 |
#define | OFDM_PLCP_BITS_QUARTER 22 |
#define | OFDM_SYMBOL_TIME_QUARTER 16 |
#define | INIT_AIFS 2 |
#define | INIT_CWMIN 15 |
#define | INIT_CWMIN_11B 31 |
#define | INIT_CWMAX 1023 |
#define | INIT_SH_RETRY 10 |
#define | INIT_LG_RETRY 10 |
#define | INIT_SSH_RETRY 32 |
#define | INIT_SLG_RETRY 32 |
#define | ATH9K_SLOT_TIME_6 6 |
#define | ATH9K_SLOT_TIME_9 9 |
#define | ATH9K_SLOT_TIME_20 20 |
#define | ATH9K_TXERR_XRETRY 0x01 |
#define | ATH9K_TXERR_FILT 0x02 |
#define | ATH9K_TXERR_FIFO 0x04 |
#define | ATH9K_TXERR_XTXOP 0x08 |
#define | ATH9K_TXERR_TIMER_EXPIRED 0x10 |
#define | ATH9K_TX_ACKED 0x20 |
#define | ATH9K_TXERR_MASK |
#define | ATH9K_TX_BA 0x01 |
#define | ATH9K_TX_PWRMGMT 0x02 |
#define | ATH9K_TX_DESC_CFG_ERR 0x04 |
#define | ATH9K_TX_DATA_UNDERRUN 0x08 |
#define | ATH9K_TX_DELIM_UNDERRUN 0x10 |
#define | ATH9K_TX_SW_FILTERED 0x80 |
#define | MIN_TX_FIFO_THRESHOLD 0x1 |
#define | MAX_TX_FIFO_THRESHOLD ((4096 / 64) - 1) |
#define | ATH9K_RXERR_CRC 0x01 |
#define | ATH9K_RXERR_PHY 0x02 |
#define | ATH9K_RXERR_FIFO 0x04 |
#define | ATH9K_RXERR_DECRYPT 0x08 |
#define | ATH9K_RXERR_MIC 0x10 |
#define | ATH9K_RX_MORE 0x01 |
#define | ATH9K_RX_MORE_AGGR 0x02 |
#define | ATH9K_RX_GI 0x04 |
#define | ATH9K_RX_2040 0x08 |
#define | ATH9K_RX_DELIM_CRC_PRE 0x10 |
#define | ATH9K_RX_DELIM_CRC_POST 0x20 |
#define | ATH9K_RX_DECRYPT_BUSY 0x40 |
#define | ATH9K_RXKEYIX_INVALID ((u8)-1) |
#define | ATH9K_TXKEYIX_INVALID ((u32)-1) |
#define | ATH9K_TXDESC_NOACK 0x0002 |
#define | ATH9K_TXDESC_RTSENA 0x0004 |
#define | ATH9K_TXDESC_CTSENA 0x0008 |
#define | ATH9K_TXDESC_INTREQ 0x0010 |
#define | ATH9K_TXDESC_VEOL 0x0020 |
#define | ATH9K_TXDESC_EXT_ONLY 0x0040 |
#define | ATH9K_TXDESC_EXT_AND_CTL 0x0080 |
#define | ATH9K_TXDESC_VMF 0x0100 |
#define | ATH9K_TXDESC_FRAG_IS_ON 0x0200 |
#define | ATH9K_TXDESC_LOWRXCHAIN 0x0400 |
#define | ATH9K_TXDESC_LDPC 0x00010000 |
#define | ATH9K_RXDESC_INTREQ 0x0020 |
#define | AR5416DESC(_ds) ((struct ar5416_desc *)(_ds)) |
#define | AR5416DESC_CONST(_ds) ((const struct ar5416_desc *)(_ds)) |
#define | ds_ctl2 u.tx.ctl2 |
#define | ds_ctl3 u.tx.ctl3 |
#define | ds_ctl4 u.tx.ctl4 |
#define | ds_ctl5 u.tx.ctl5 |
#define | ds_ctl6 u.tx.ctl6 |
#define | ds_ctl7 u.tx.ctl7 |
#define | ds_ctl8 u.tx.ctl8 |
#define | ds_ctl9 u.tx.ctl9 |
#define | ds_ctl10 u.tx.ctl10 |
#define | ds_ctl11 u.tx.ctl11 |
#define | ds_txstatus0 u.tx.status0 |
#define | ds_txstatus1 u.tx.status1 |
#define | ds_txstatus2 u.tx.status2 |
#define | ds_txstatus3 u.tx.status3 |
#define | ds_txstatus4 u.tx.status4 |
#define | ds_txstatus5 u.tx.status5 |
#define | ds_txstatus6 u.tx.status6 |
#define | ds_txstatus7 u.tx.status7 |
#define | ds_txstatus8 u.tx.status8 |
#define | ds_txstatus9 u.tx.status9 |
#define | ds_rxstatus0 u.rx.status0 |
#define | ds_rxstatus1 u.rx.status1 |
#define | ds_rxstatus2 u.rx.status2 |
#define | ds_rxstatus3 u.rx.status3 |
#define | ds_rxstatus4 u.rx.status4 |
#define | ds_rxstatus5 u.rx.status5 |
#define | ds_rxstatus6 u.rx.status6 |
#define | ds_rxstatus7 u.rx.status7 |
#define | ds_rxstatus8 u.rx.status8 |
#define | AR_FrameLen 0x00000fff |
#define | AR_VirtMoreFrag 0x00001000 |
#define | AR_TxCtlRsvd00 0x0000e000 |
#define | AR_XmitPower 0x003f0000 |
#define | AR_XmitPower_S 16 |
#define | AR_RTSEnable 0x00400000 |
#define | AR_VEOL 0x00800000 |
#define | AR_ClrDestMask 0x01000000 |
#define | AR_TxCtlRsvd01 0x1e000000 |
#define | AR_TxIntrReq 0x20000000 |
#define | AR_DestIdxValid 0x40000000 |
#define | AR_CTSEnable 0x80000000 |
#define | AR_TxMore 0x00001000 |
#define | AR_DestIdx 0x000fe000 |
#define | AR_DestIdx_S 13 |
#define | AR_FrameType 0x00f00000 |
#define | AR_FrameType_S 20 |
#define | AR_NoAck 0x01000000 |
#define | AR_InsertTS 0x02000000 |
#define | AR_CorruptFCS 0x04000000 |
#define | AR_ExtOnly 0x08000000 |
#define | AR_ExtAndCtl 0x10000000 |
#define | AR_MoreAggr 0x20000000 |
#define | AR_IsAggr 0x40000000 |
#define | AR_BurstDur 0x00007fff |
#define | AR_BurstDur_S 0 |
#define | AR_DurUpdateEna 0x00008000 |
#define | AR_XmitDataTries0 0x000f0000 |
#define | AR_XmitDataTries0_S 16 |
#define | AR_XmitDataTries1 0x00f00000 |
#define | AR_XmitDataTries1_S 20 |
#define | AR_XmitDataTries2 0x0f000000 |
#define | AR_XmitDataTries2_S 24 |
#define | AR_XmitDataTries3 0xf0000000 |
#define | AR_XmitDataTries3_S 28 |
#define | AR_XmitRate0 0x000000ff |
#define | AR_XmitRate0_S 0 |
#define | AR_XmitRate1 0x0000ff00 |
#define | AR_XmitRate1_S 8 |
#define | AR_XmitRate2 0x00ff0000 |
#define | AR_XmitRate2_S 16 |
#define | AR_XmitRate3 0xff000000 |
#define | AR_XmitRate3_S 24 |
#define | AR_PacketDur0 0x00007fff |
#define | AR_PacketDur0_S 0 |
#define | AR_RTSCTSQual0 0x00008000 |
#define | AR_PacketDur1 0x7fff0000 |
#define | AR_PacketDur1_S 16 |
#define | AR_RTSCTSQual1 0x80000000 |
#define | AR_PacketDur2 0x00007fff |
#define | AR_PacketDur2_S 0 |
#define | AR_RTSCTSQual2 0x00008000 |
#define | AR_PacketDur3 0x7fff0000 |
#define | AR_PacketDur3_S 16 |
#define | AR_RTSCTSQual3 0x80000000 |
#define | AR_AggrLen 0x0000ffff |
#define | AR_AggrLen_S 0 |
#define | AR_TxCtlRsvd60 0x00030000 |
#define | AR_PadDelim 0x03fc0000 |
#define | AR_PadDelim_S 18 |
#define | AR_EncrType 0x0c000000 |
#define | AR_EncrType_S 26 |
#define | AR_TxCtlRsvd61 0xf0000000 |
#define | AR_LDPC 0x80000000 |
#define | AR_2040_0 0x00000001 |
#define | AR_GI0 0x00000002 |
#define | AR_ChainSel0 0x0000001c |
#define | AR_ChainSel0_S 2 |
#define | AR_2040_1 0x00000020 |
#define | AR_GI1 0x00000040 |
#define | AR_ChainSel1 0x00000380 |
#define | AR_ChainSel1_S 7 |
#define | AR_2040_2 0x00000400 |
#define | AR_GI2 0x00000800 |
#define | AR_ChainSel2 0x00007000 |
#define | AR_ChainSel2_S 12 |
#define | AR_2040_3 0x00008000 |
#define | AR_GI3 0x00010000 |
#define | AR_ChainSel3 0x000e0000 |
#define | AR_ChainSel3_S 17 |
#define | AR_RTSCTSRate 0x0ff00000 |
#define | AR_RTSCTSRate_S 20 |
#define | AR_STBC0 0x10000000 |
#define | AR_STBC1 0x20000000 |
#define | AR_STBC2 0x40000000 |
#define | AR_STBC3 0x80000000 |
#define | AR_TxRSSIAnt00 0x000000ff |
#define | AR_TxRSSIAnt00_S 0 |
#define | AR_TxRSSIAnt01 0x0000ff00 |
#define | AR_TxRSSIAnt01_S 8 |
#define | AR_TxRSSIAnt02 0x00ff0000 |
#define | AR_TxRSSIAnt02_S 16 |
#define | AR_TxStatusRsvd00 0x3f000000 |
#define | AR_TxBaStatus 0x40000000 |
#define | AR_TxStatusRsvd01 0x80000000 |
#define | AR_FrmXmitOK 0x00000001 |
#define | AR_ExcessiveRetries 0x00000002 |
#define | AR_FIFOUnderrun 0x00000004 |
#define | AR_Filtered 0x00000008 |
#define | AR_RTSFailCnt 0x000000f0 |
#define | AR_RTSFailCnt_S 4 |
#define | AR_DataFailCnt 0x00000f00 |
#define | AR_DataFailCnt_S 8 |
#define | AR_VirtRetryCnt 0x0000f000 |
#define | AR_VirtRetryCnt_S 12 |
#define | AR_TxDelimUnderrun 0x00010000 |
#define | AR_TxDataUnderrun 0x00020000 |
#define | AR_DescCfgErr 0x00040000 |
#define | AR_TxTimerExpired 0x00080000 |
#define | AR_TxStatusRsvd10 0xfff00000 |
#define | AR_SendTimestamp ds_txstatus2 |
#define | AR_BaBitmapLow ds_txstatus3 |
#define | AR_BaBitmapHigh ds_txstatus4 |
#define | AR_TxRSSIAnt10 0x000000ff |
#define | AR_TxRSSIAnt10_S 0 |
#define | AR_TxRSSIAnt11 0x0000ff00 |
#define | AR_TxRSSIAnt11_S 8 |
#define | AR_TxRSSIAnt12 0x00ff0000 |
#define | AR_TxRSSIAnt12_S 16 |
#define | AR_TxRSSICombined 0xff000000 |
#define | AR_TxRSSICombined_S 24 |
#define | AR_TxTid 0xf0000000 |
#define | AR_TxTid_S 28 |
#define | AR_TxEVM0 ds_txstatus5 |
#define | AR_TxEVM1 ds_txstatus6 |
#define | AR_TxEVM2 ds_txstatus7 |
#define | AR_TxDone 0x00000001 |
#define | AR_SeqNum 0x00001ffe |
#define | AR_SeqNum_S 1 |
#define | AR_TxStatusRsvd80 0x0001e000 |
#define | AR_TxOpExceeded 0x00020000 |
#define | AR_TxStatusRsvd81 0x001c0000 |
#define | AR_FinalTxIdx 0x00600000 |
#define | AR_FinalTxIdx_S 21 |
#define | AR_TxStatusRsvd82 0x01800000 |
#define | AR_PowerMgmt 0x02000000 |
#define | AR_TxStatusRsvd83 0xfc000000 |
#define | AR_RxCTLRsvd00 0xffffffff |
#define | AR_RxCtlRsvd00 0x00001000 |
#define | AR_RxIntrReq 0x00002000 |
#define | AR_RxCtlRsvd01 0xffffc000 |
#define | AR_RxRSSIAnt00 0x000000ff |
#define | AR_RxRSSIAnt00_S 0 |
#define | AR_RxRSSIAnt01 0x0000ff00 |
#define | AR_RxRSSIAnt01_S 8 |
#define | AR_RxRSSIAnt02 0x00ff0000 |
#define | AR_RxRSSIAnt02_S 16 |
#define | AR_RxRate 0xff000000 |
#define | AR_RxRate_S 24 |
#define | AR_RxStatusRsvd00 0xff000000 |
#define | AR_DataLen 0x00000fff |
#define | AR_RxMore 0x00001000 |
#define | AR_NumDelim 0x003fc000 |
#define | AR_NumDelim_S 14 |
#define | AR_RxStatusRsvd10 0xff800000 |
#define | AR_RcvTimestamp ds_rxstatus2 |
#define | AR_GI 0x00000001 |
#define | AR_2040 0x00000002 |
#define | AR_Parallel40 0x00000004 |
#define | AR_Parallel40_S 2 |
#define | AR_RxStatusRsvd30 0x000000f8 |
#define | AR_RxAntenna 0xffffff00 |
#define | AR_RxAntenna_S 8 |
#define | AR_RxRSSIAnt10 0x000000ff |
#define | AR_RxRSSIAnt10_S 0 |
#define | AR_RxRSSIAnt11 0x0000ff00 |
#define | AR_RxRSSIAnt11_S 8 |
#define | AR_RxRSSIAnt12 0x00ff0000 |
#define | AR_RxRSSIAnt12_S 16 |
#define | AR_RxRSSICombined 0xff000000 |
#define | AR_RxRSSICombined_S 24 |
#define | AR_RxEVM0 ds_rxstatus4 |
#define | AR_RxEVM1 ds_rxstatus5 |
#define | AR_RxEVM2 ds_rxstatus6 |
#define | AR_RxDone 0x00000001 |
#define | AR_RxFrameOK 0x00000002 |
#define | AR_CRCErr 0x00000004 |
#define | AR_DecryptCRCErr 0x00000008 |
#define | AR_PHYErr 0x00000010 |
#define | AR_MichaelErr 0x00000020 |
#define | AR_PreDelimCRCErr 0x00000040 |
#define | AR_RxStatusRsvd70 0x00000080 |
#define | AR_RxKeyIdxValid 0x00000100 |
#define | AR_KeyIdx 0x0000fe00 |
#define | AR_KeyIdx_S 9 |
#define | AR_PHYErrCode 0x0000ff00 |
#define | AR_PHYErrCode_S 8 |
#define | AR_RxMoreAggr 0x00010000 |
#define | AR_RxAggr 0x00020000 |
#define | AR_PostDelimCRCErr 0x00040000 |
#define | AR_RxStatusRsvd71 0x3ff80000 |
#define | AR_DecryptBusyErr 0x40000000 |
#define | AR_KeyMiss 0x80000000 |
#define | ATH9K_NUM_TX_QUEUES 1 |
#define | ATH9K_WME_UPSD 4 |
#define | ATH9K_TXQ_USEDEFAULT ((u32) -1) |
#define | ATH9K_TXQ_USE_LOCKOUT_BKOFF_DIS 0x00000001 |
#define | ATH9K_DECOMP_MASK_SIZE 128 |
#define | ATH9K_READY_TIME_LO_BOUND 50 |
#define | ATH9K_READY_TIME_HI_BOUND 96 |
#define | ATH9K_RATESERIES_RTS_CTS 0x0001 |
#define | ATH9K_RATESERIES_2040 0x0002 |
#define | ATH9K_RATESERIES_HALFGI 0x0004 |
#define | ATH9K_RATESERIES_STBC 0x0008 |
#define RXSTATUS_RATE | ( | ah, | |
ads | |||
) |
#define set11nTries | ( | _series, | |
_index | |||
) | (SM((_series)[_index].Tries, AR_XmitDataTries##_index)) |
#define set11nRate | ( | _series, | |
_index | |||
) | (SM((_series)[_index].Rate, AR_XmitRate##_index)) |
#define set11nPktDurRTSCTS | ( | _series, | |
_index | |||
) |
#define set11nRateFlags | ( | _series, | |
_index | |||
) |
#define ATH9K_TXERR_MASK |
#define AR5416DESC | ( | _ds | ) | ((struct ar5416_desc *)(_ds)) |
#define AR5416DESC_CONST | ( | _ds | ) | ((const struct ar5416_desc *)(_ds)) |
#define ds_ctl10 u.tx.ctl10 |
#define ds_ctl11 u.tx.ctl11 |
#define ds_txstatus1 u.tx.status1 |
#define ds_txstatus2 u.tx.status2 |
#define ds_txstatus3 u.tx.status3 |
#define ds_txstatus4 u.tx.status4 |
#define ds_txstatus5 u.tx.status5 |
#define ds_txstatus6 u.tx.status6 |
#define ds_txstatus7 u.tx.status7 |
#define ds_txstatus8 u.tx.status8 |
#define ds_txstatus9 u.tx.status9 |
#define ds_rxstatus1 u.rx.status1 |
#define ds_rxstatus2 u.rx.status2 |
#define ds_rxstatus3 u.rx.status3 |
#define ds_rxstatus4 u.rx.status4 |
#define ds_rxstatus5 u.rx.status5 |
#define ds_rxstatus6 u.rx.status6 |
#define ds_rxstatus7 u.rx.status7 |
#define ds_rxstatus8 u.rx.status8 |
#define AR_SendTimestamp ds_txstatus2 |
#define AR_BaBitmapLow ds_txstatus3 |
#define AR_BaBitmapHigh ds_txstatus4 |
#define AR_TxEVM0 ds_txstatus5 |
#define AR_TxEVM1 ds_txstatus6 |
#define AR_TxEVM2 ds_txstatus7 |
#define AR_RcvTimestamp ds_rxstatus2 |
#define AR_RxEVM0 ds_rxstatus4 |
#define AR_RxEVM1 ds_rxstatus5 |
#define AR_RxEVM2 ds_rxstatus6 |
enum ath9k_phyerr |
Definition at line 206 of file mac.h.
enum ath9k_tx_queue |
enum ath9k_tx_queue_flags |
enum ath9k_pkt_type |
Enumerator | |
---|---|
ATH9K_PKT_TYPE_NORMAL | |
ATH9K_PKT_TYPE_ATIM | |
ATH9K_PKT_TYPE_PSPOLL | |
ATH9K_PKT_TYPE_BEACON | |
ATH9K_PKT_TYPE_PROBE_RESP | |
ATH9K_PKT_TYPE_CHIRP | |
ATH9K_PKT_TYPE_GRP_POLL |
enum ath9k_rx_filter |
Definition at line 633 of file mac.h.
enum ath9k_key_type |
FILE_LICENCE | ( | BSD2 | ) |
Referenced by ath_tx_processq().
Definition at line 50 of file ath9k_mac.c.
References ah, AR_QTXDP, REG_WRITE, and txdp.
Referenced by ath_tx_txqaddbuf().
Definition at line 55 of file ath9k_mac.c.
References ah, AR_Q_TXE, DBG2, and REG_WRITE.
Referenced by ath_tx_txqaddbuf().
void ath9k_hw_cleartxdesc | ( | struct ath_hw * | ah, |
void * | ds | ||
) |
Definition at line 62 of file ath9k_mac.c.
References ah, AR_Q_STS_PEND_FR_CNT, AR_Q_TXE, AR_QSTS, and REG_READ.
Referenced by ath9k_hw_abort_tx_dma(), ath9k_hw_channel_change(), and ath_drain_all_txq().
int ath9k_hw_updatetxtriglevel | ( | struct ath_hw * | ah, |
int | bIncTrigLevel | ||
) |
ath9k_hw_updatetxtriglevel - adjusts the frame trigger level
@ah: atheros hardware struct @bIncTrigLevel: whether or not the frame trigger level should be updated
The frame trigger level specifies the minimum number of bytes, in units of 64 bytes, that must be DMA'ed into the PCU TX FIFO before the PCU will initiate sending the frame on the air. This can mean we initiate transmit before a full frame is on the PCU TX FIFO. Resets to 0x1 (meaning 64 bytes or a full frame, whichever occurs first)
Caution must be taken to ensure to set the frame trigger level based on the DMA request size. For example if the DMA request size is set to 128 bytes the trigger level cannot exceed 6 * 64 = 384. This is because there need to be enough space in the tx FIFO for the requested transfer size. Hence the tx FIFO will stop with 512 - 128 = 384 bytes. If we set the threshold to a value beyond 6, then the transmit will hang.
Current dual stream devices have a PCU TX FIFO size of 8 KB. Current single stream devices have a PCU TX FIFO size of 4 KB, however, there is a hardware issue which forces us to use 2 KB instead so the frame trigger level must not exceed 2 KB for these chipsets.
Definition at line 101 of file ath9k_mac.c.
References ah, AR_FTRIG, AR_TXCFG, ath9k_hw_disable_interrupts(), ath9k_hw_enable_interrupts(), MIN_TX_FIFO_THRESHOLD, MS, REG_READ, REG_WRITE, SM, and txcfg.
Referenced by ar9002_hw_proc_txdesc(), ar9003_hw_proc_txdesc(), and ath_isr().
void ath9k_hw_abort_tx_dma | ( | struct ath_hw * | ah | ) |
Definition at line 129 of file ath9k_mac.c.
References ah, AR_D_GBL_IFS_MISC, AR_D_GBL_IFS_MISC_IGNORE_BACKOFF, AR_DIAG_FORCE_CH_IDLE_HIGH, AR_DIAG_SW, AR_NUM_QCU, AR_PCU_CLEAR_VMF, AR_PCU_FORCE_QUIET_COLL, AR_PCU_MISC, AR_Q_TXD, AR_Q_TXD_M, ath9k_hw_numtxpending(), REG_CLR_BIT, REG_SET_BIT, REG_WRITE, and udelay().
Referenced by ath_drain_all_txq().
int ath9k_hw_set_txq_props | ( | struct ath_hw * | ah, |
int | q, | ||
const struct ath9k_tx_queue_info * | qinfo | ||
) |
Definition at line 162 of file ath9k_mac.c.
References ah, ATH9K_TX_QUEUE_INACTIVE, ATH9K_TXQ_USEDEFAULT, DBG, DBG2, INIT_AIFS, INIT_CWMAX, INIT_LG_RETRY, INIT_SH_RETRY, min, ath9k_tx_queue_info::tqi_aifs, ath9k_tx_queue_info::tqi_burstTime, ath9k_tx_queue_info::tqi_cbrOverflowLimit, ath9k_tx_queue_info::tqi_cbrPeriod, ath9k_tx_queue_info::tqi_cwmax, ath9k_tx_queue_info::tqi_cwmin, ath9k_tx_queue_info::tqi_lgretry, ath9k_tx_queue_info::tqi_priority, ath9k_tx_queue_info::tqi_qflags, ath9k_tx_queue_info::tqi_readyTime, ath9k_tx_queue_info::tqi_shretry, ath9k_tx_queue_info::tqi_subtype, ath9k_tx_queue_info::tqi_type, and ath9k_tx_queue_info::tqi_ver.
Referenced by ath9k_hw_setuptxqueue().
int ath9k_hw_get_txq_props | ( | struct ath_hw * | ah, |
int | q, | ||
struct ath9k_tx_queue_info * | qinfo | ||
) |
int ath9k_hw_setuptxqueue | ( | struct ath_hw * | ah, |
enum ath9k_tx_queue | type, | ||
const struct ath9k_tx_queue_info * | qinfo | ||
) |
Definition at line 216 of file ath9k_mac.c.
References ah, ath9k_hw_set_txq_props(), ATH9K_NUM_TX_QUEUES, ATH9K_TX_QUEUE_INACTIVE, ATH9K_TXQ_USEDEFAULT, DBG, DBG2, INIT_AIFS, INIT_CWMAX, INIT_LG_RETRY, INIT_SH_RETRY, memset(), NULL, ath9k_tx_queue_info::tqi_aifs, ath9k_tx_queue_info::tqi_cwmax, ath9k_tx_queue_info::tqi_cwmin, ath9k_tx_queue_info::tqi_lgretry, ath9k_tx_queue_info::tqi_physCompBuf, ath9k_tx_queue_info::tqi_qflags, ath9k_tx_queue_info::tqi_shretry, ath9k_tx_queue_info::tqi_type, TXQ_FLAG_TXDESCINT_ENABLE, TXQ_FLAG_TXERRINT_ENABLE, TXQ_FLAG_TXOKINT_ENABLE, TXQ_FLAG_TXURNINT_ENABLE, and type.
Referenced by ath_txq_setup().
Definition at line 259 of file ath9k_mac.c.
References ah, ath9k_hw_set_txq_interrupts(), ATH9K_TX_QUEUE_INACTIVE, DBG, DBG2, and ath9k_tx_queue_info::tqi_type.
Referenced by ath_tx_cleanupq(), and ath_txq_setup().
Definition at line 283 of file ath9k_mac.c.
References __unused, ah, AR_D_CHNTIME_DUR, AR_D_CHNTIME_EN, AR_D_LCL_IFS_AIFS, AR_D_LCL_IFS_CWMAX, AR_D_LCL_IFS_CWMIN, AR_D_MISC_ARB_LOCKOUT_CNTRL, AR_D_MISC_ARB_LOCKOUT_CNTRL_GLOBAL, AR_D_MISC_CW_BKOFF_EN, AR_D_MISC_FRAG_BKOFF_EN, AR_D_MISC_FRAG_WAIT_EN, AR_D_MISC_POST_FR_BKOFF_DIS, AR_D_RETRY_LIMIT_FR_SH, AR_D_RETRY_LIMIT_STA_LG, AR_D_RETRY_LIMIT_STA_SH, AR_DCHNTIME, AR_DLCL_IFS, AR_DMISC, AR_DRETRY_LIMIT, AR_Q_CBRCFG_INTERVAL, AR_Q_CBRCFG_OVF_THRESH, AR_Q_DESC_CRCCHK, AR_Q_DESC_CRCCHK_EN, AR_Q_MISC_CBR_EXP_CNTR_LIMIT_EN, AR_Q_MISC_DCU_EARLY_TERM_REQ, AR_Q_MISC_FSP_CBR, AR_Q_MISC_RDYTIME_EXP_POLICY, AR_Q_RDYTIMECFG_DURATION, AR_Q_RDYTIMECFG_EN, AR_QCBRCFG, AR_QMISC, AR_QRDYTIMECFG, AR_SREV_9300_20_OR_LATER, AR_SREV_9340, ath9k_hw_set_txq_interrupts(), ATH9K_TX_QUEUE_INACTIVE, ATH9K_TXQ_USE_LOCKOUT_BKOFF_DIS, ATH9K_TXQ_USEDEFAULT, ath9k_channel::chan, DBG, DBG2, ENABLE_REGWRITE_BUFFER, INIT_CWMIN, INIT_CWMIN_11B, INIT_SLG_RETRY, INIT_SSH_RETRY, IS_CHAN_B, REG_SET_BIT, REG_WRITE, REGWRITE_BUFFER_FLUSH, SM, ath9k_tx_queue_info::tqi_aifs, ath9k_tx_queue_info::tqi_burstTime, ath9k_tx_queue_info::tqi_cbrOverflowLimit, ath9k_tx_queue_info::tqi_cbrPeriod, ath9k_tx_queue_info::tqi_cwmax, ath9k_tx_queue_info::tqi_cwmin, ath9k_tx_queue_info::tqi_intFlags, ath9k_tx_queue_info::tqi_qflags, ath9k_tx_queue_info::tqi_readyTime, ath9k_tx_queue_info::tqi_shretry, ath9k_tx_queue_info::tqi_type, TXQ_FLAG_BACKOFF_DISABLE, TXQ_FLAG_FRAG_BURST_BACKOFF_ENABLE, TXQ_FLAG_RDYTIME_EXP_POLICY_ENABLE, TXQ_FLAG_TXDESCINT_ENABLE, TXQ_FLAG_TXEOLINT_ENABLE, TXQ_FLAG_TXERRINT_ENABLE, TXQ_FLAG_TXOKINT_ENABLE, TXQ_FLAG_TXURNINT_ENABLE, and value.
Referenced by ath9k_hw_reset().
int ath9k_hw_rxprocdesc | ( | struct ath_hw * | ah, |
struct ath_desc * | ds, | ||
struct ath_rx_status * | rs, | ||
u64 | tsf | ||
) |
Definition at line 394 of file ath9k_mac.c.
References ah, AR5416DESC, AR_2040, AR_CRCErr, AR_DataLen, AR_DecryptBusyErr, AR_DecryptCRCErr, AR_GI, AR_KeyIdx, AR_KeyMiss, AR_MichaelErr, AR_PHYErr, AR_PHYErrCode, AR_PostDelimCRCErr, AR_PreDelimCRCErr, AR_RxAggr, AR_RxAntenna, AR_RxDone, AR_RxFrameOK, AR_RxKeyIdxValid, AR_RxMore, AR_RxMoreAggr, AR_RxRSSIAnt00, AR_RxRSSIAnt01, AR_RxRSSIAnt02, AR_RxRSSIAnt10, AR_RxRSSIAnt11, AR_RxRSSIAnt12, AR_RxRSSICombined, ATH9K_RSSI_BAD, ATH9K_RX_2040, ATH9K_RX_DECRYPT_BUSY, ATH9K_RX_DELIM_CRC_POST, ATH9K_RX_DELIM_CRC_PRE, ATH9K_RX_GI, ATH9K_RXERR_CRC, ATH9K_RXERR_DECRYPT, ATH9K_RXERR_MIC, ATH9K_RXERR_PHY, ATH9K_RXKEYIX_INVALID, ds, EINPROGRESS, MS, ath_rx_status::rs_antenna, ath_rx_status::rs_datalen, ath_rx_status::rs_flags, ath_rx_status::rs_isaggr, ath_rx_status::rs_keyix, ath_rx_status::rs_more, ath_rx_status::rs_moreaggr, ath_rx_status::rs_phyerr, ath_rx_status::rs_rate, ath_rx_status::rs_rssi, ath_rx_status::rs_rssi_ctl0, ath_rx_status::rs_rssi_ctl1, ath_rx_status::rs_rssi_ctl2, ath_rx_status::rs_rssi_ext0, ath_rx_status::rs_rssi_ext1, ath_rx_status::rs_rssi_ext2, ath_rx_status::rs_status, ath_rx_status::rs_tstamp, ar5416_desc::rx, RXSTATUS_RATE, and ar5416_desc::u.
Referenced by ath_get_next_rx_buf().
Definition at line 422 of file ath9k_ar9002_mac.c.
References ah, AR5416DESC, AR_BufLen, AR_RxDone, AR_RxIntrReq, ATH9K_HW_CAP_AUTOSLEEP, ATH9K_RXDESC_INTREQ, ds, ar5416_desc::ds_ctl1, flags, ath9k_hw_capabilities::hw_caps, memset(), size, and ar5416_desc::u.
Referenced by ath_rx_buf_link().
int ath9k_hw_setrxabort | ( | struct ath_hw * | ah, |
int | set | ||
) |
Definition at line 490 of file ath9k_mac.c.
References ah, AH_WAIT_TIMEOUT, AR_DIAG_RX_ABORT, AR_DIAG_RX_DIS, AR_DIAG_SW, AR_OBS_BUS_1, AR_OBS_BUS_1_RX_STATE, ath9k_hw_wait(), DBG, reg, REG_CLR_BIT, REG_READ, REG_SET_BIT, and set.
Referenced by ath_isr().
Definition at line 519 of file ath9k_mac.c.
References ah, AR_RXDP, REG_WRITE, and rxdp.
Referenced by ath_rx_buf_link(), and ath_startrecv().
void ath9k_hw_startpcureceive | ( | struct ath_hw * | ah, |
int | is_scanning | ||
) |
Definition at line 524 of file ath9k_mac.c.
References ah, AR_DIAG_RX_ABORT, AR_DIAG_RX_DIS, AR_DIAG_SW, ath9k_ani_reset(), and REG_CLR_BIT.
Referenced by ath_startrecv().
void ath9k_hw_abortpcurecv | ( | struct ath_hw * | ah | ) |
Definition at line 531 of file ath9k_mac.c.
References ah, AR_DIAG_RX_ABORT, AR_DIAG_RX_DIS, AR_DIAG_SW, and REG_SET_BIT.
Referenced by ath_stoprecv().
int ath9k_hw_stopdmarecv | ( | struct ath_hw * | ah, |
int * | reset | ||
) |
Definition at line 536 of file ath9k_mac.c.
References ah, AH_RX_STOP_DMA_TIMEOUT, AH_TIME_QUANTUM, AR_CR, AR_CR_RXD, AR_CR_RXE, AR_DIAG_SW, AR_DMADBG_7, AR_MACMISC, AR_MACMISC_DMA_OBS_LINE_8, AR_MACMISC_DMA_OBS_S, AR_MACMISC_MISC_OBS_BUS_1, AR_MACMISC_MISC_OBS_BUS_MSB_S, AR_SREV_9300_20_OR_LATER, DBG, REG_READ, REG_WRITE, and udelay().
Referenced by ath_stoprecv().
int ath9k_hw_intrpend | ( | struct ath_hw * | ah | ) |
Definition at line 583 of file ath9k_mac.c.
References ah, AR_IER_ENABLE, AR_INTR_ASYNC_CAUSE, AR_INTR_MAC_IRQ, AR_INTR_SPURIOUS, AR_INTR_SYNC_CAUSE, AR_INTR_SYNC_DEFAULT, AR_SREV_9100, and REG_READ.
Referenced by ath_isr().
void ath9k_hw_set_interrupts | ( | struct ath_hw * | ah, |
unsigned int | ints | ||
) |
Definition at line 641 of file ath9k_mac.c.
References ah, AR_IMR, AR_IMR_BCNMISC, AR_IMR_GENTMR, AR_IMR_RXDESC, AR_IMR_RXERR, AR_IMR_RXINTM, AR_IMR_RXMINTR, AR_IMR_RXOK, AR_IMR_RXOK_HP, AR_IMR_RXOK_LP, AR_IMR_S2, AR_IMR_S2_CABEND, AR_IMR_S2_CABTO, AR_IMR_S2_CST, AR_IMR_S2_DTIM, AR_IMR_S2_DTIMSYNC, AR_IMR_S2_GTT, AR_IMR_S2_TIM, AR_IMR_S2_TSFOOR, AR_IMR_S5, AR_IMR_S5_TIM_TIMER, AR_IMR_TXDESC, AR_IMR_TXEOL, AR_IMR_TXERR, AR_IMR_TXINTM, AR_IMR_TXMINTR, AR_IMR_TXOK, AR_SREV_9300_20_OR_LATER, ATH9K_HW_CAP_AUTOSLEEP, ath9k_hw_disable_interrupts(), ath9k_hw_enable_interrupts(), ATH9K_INT_BMISC, ATH9K_INT_CABEND, ATH9K_INT_COMMON, ATH9K_INT_CST, ATH9K_INT_DTIM, ATH9K_INT_DTIMSYNC, ATH9K_INT_GENTIMER, ATH9K_INT_GLOBAL, ATH9K_INT_GTT, ATH9K_INT_RX, ATH9K_INT_TIM, ATH9K_INT_TIM_TIMER, ATH9K_INT_TSFOOR, ATH9K_INT_TX, DBG2, ath9k_hw_capabilities::hw_caps, REG_CLR_BIT, REG_SET_BIT, and REG_WRITE.
Referenced by ath9k_irq(), ath9k_start(), ath_reset(), and ath_set_channel().
void ath9k_hw_enable_interrupts | ( | struct ath_hw * | ah | ) |
Definition at line 616 of file ath9k_mac.c.
References ah, AR_IER, AR_IMR, AR_INTR_ASYNC_ENABLE, AR_INTR_ASYNC_MASK, AR_INTR_MAC_IRQ, AR_INTR_SYNC_DEFAULT, AR_INTR_SYNC_ENABLE, AR_INTR_SYNC_HOST1_FATAL, AR_INTR_SYNC_MASK, AR_SREV_9100, AR_SREV_9340, ATH9K_INT_GLOBAL, DBG2, REG_READ, and REG_WRITE.
Referenced by ath9k_hw_set_interrupts(), ath9k_hw_updatetxtriglevel(), and ath9k_tasklet().
void ath9k_hw_disable_interrupts | ( | struct ath_hw * | ah | ) |
Definition at line 602 of file ath9k_mac.c.
References ah, AR_IER, AR_INTR_ASYNC_ENABLE, AR_INTR_SYNC_ENABLE, AR_SREV_9100, DBG2, REG_READ, and REG_WRITE.
Referenced by ath9k_hw_set_interrupts(), ath9k_hw_updatetxtriglevel(), ath9k_stop(), ath_isr(), ath_radio_disable(), ath_reset(), and ath_set_channel().
void ar9002_hw_attach_mac_ops | ( | struct ath_hw * | ah | ) |
Definition at line 437 of file ath9k_ar9002_mac.c.
References ah, ar9002_hw_clr11n_aggr(), ar9002_hw_fill_txdesc(), ar9002_hw_get_desc_link(), ar9002_hw_get_isr(), ar9002_hw_proc_txdesc(), ar9002_hw_rx_enable(), ar9002_hw_set11n_aggr_first(), ar9002_hw_set11n_aggr_last(), ar9002_hw_set11n_aggr_middle(), ar9002_hw_set11n_ratescenario(), ar9002_hw_set11n_txdesc(), ar9002_hw_set_clrdmask(), ar9002_hw_set_desc_link(), ath9k_hw_ops(), ath_hw_ops::clr11n_aggr, ath_hw_ops::fill_txdesc, ath_hw_ops::get_desc_link, ath_hw_ops::get_isr, ath_hw_ops::proc_txdesc, ath_hw_ops::rx_enable, ath_hw_ops::set11n_aggr_first, ath_hw_ops::set11n_aggr_last, ath_hw_ops::set11n_aggr_middle, ath_hw_ops::set11n_ratescenario, ath_hw_ops::set11n_txdesc, ath_hw_ops::set_clrdmask, and ath_hw_ops::set_desc_link.
Referenced by ar9002_hw_attach_ops().