Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
rt2x00.h File Reference
#include <linux/bitops.h>
#include <linux/interrupt.h>
#include <linux/skbuff.h>
#include <linux/workqueue.h>
#include <linux/firmware.h>
#include <linux/leds.h>
#include <linux/mutex.h>
#include <linux/etherdevice.h>
#include <linux/input-polldev.h>
#include <linux/kfifo.h>
#include <linux/hrtimer.h>
#include <net/mac80211.h>
#include "rt2x00debug.h"
#include "rt2x00dump.h"
#include "rt2x00leds.h"
#include "rt2x00reg.h"
#include "rt2x00queue.h"

Go to the source code of this file.

Data Structures

struct  avg_val
 
struct  rt2x00_chip
 
struct  rf_channel
 
struct  channel_info
 
struct  antenna_setup
 
struct  link_qual
 
struct  link_ant
 
struct  link
 
struct  rt2x00_intf
 
struct  hw_mode_spec
 
struct  rt2x00lib_conf
 
struct  rt2x00lib_erp
 
struct  rt2x00lib_crypto
 
struct  rt2x00intf_conf
 
struct  rt2x00_sta
 
struct  rt2x00lib_ops
 
struct  rt2x00_ops
 
struct  rt2x00_dev
 
union  rt2x00_dev::csr
 

Macros

#define DRV_VERSION   "2.3.0"
 
#define DRV_PROJECT   "http://rt2x00.serialmonkey.com"
 
#define DEBUG_PRINTK_MSG(__dev, __kernlvl, __lvl, __msg, __args...)
 
#define DEBUG_PRINTK_PROBE(__kernlvl, __lvl, __msg, __args...)
 
#define DEBUG_PRINTK(__dev, __kernlvl, __lvl, __msg, __args...)   do { } while (0)
 
#define PANIC(__dev, __msg, __args...)   DEBUG_PRINTK_MSG(__dev, KERN_CRIT, "Panic", __msg, ##__args)
 
#define ERROR(__dev, __msg, __args...)   DEBUG_PRINTK_MSG(__dev, KERN_ERR, "Error", __msg, ##__args)
 
#define ERROR_PROBE(__msg, __args...)   DEBUG_PRINTK_PROBE(KERN_ERR, "Error", __msg, ##__args)
 
#define WARNING(__dev, __msg, __args...)   DEBUG_PRINTK(__dev, KERN_WARNING, "Warning", __msg, ##__args)
 
#define NOTICE(__dev, __msg, __args...)   DEBUG_PRINTK(__dev, KERN_NOTICE, "Notice", __msg, ##__args)
 
#define INFO(__dev, __msg, __args...)   DEBUG_PRINTK(__dev, KERN_INFO, "Info", __msg, ##__args)
 
#define DEBUG(__dev, __msg, __args...)   DEBUG_PRINTK(__dev, KERN_DEBUG, "Debug", __msg, ##__args)
 
#define EEPROM(__dev, __msg, __args...)   DEBUG_PRINTK(__dev, KERN_DEBUG, "EEPROM recovery", __msg, ##__args)
 
#define GET_DURATION(__size, __rate)   (((__size) * 8 * 10) / (__rate))
 
#define GET_DURATION_RES(__size, __rate)   (((__size) * 8 * 10) % (__rate))
 
#define L2PAD_SIZE(__hdrlen)   (-(__hdrlen) & 3)
 
#define ALIGN_SIZE(__skb, __header)   ( ((unsigned long)((__skb)->data + (__header))) & 3 )
 
#define RT2X00_ALIGN_SIZE   4 /* Only whole frame needs alignment */
 
#define RT2X00_L2PAD_SIZE   8 /* Both header & payload need alignment */
 
#define ACK_SIZE   14
 
#define IEEE80211_HEADER   24
 
#define PLCP   48
 
#define BEACON   100
 
#define PREAMBLE   144
 
#define SHORT_PREAMBLE   72
 
#define SLOT_TIME   20
 
#define SHORT_SLOT_TIME   9
 
#define SIFS   10
 
#define PIFS   ( SIFS + SLOT_TIME )
 
#define SHORT_PIFS   ( SIFS + SHORT_SLOT_TIME )
 
#define DIFS   ( PIFS + SLOT_TIME )
 
#define SHORT_DIFS   ( SHORT_PIFS + SHORT_SLOT_TIME )
 
#define EIFS
 
#define SHORT_EIFS
 
#define RT2460   0x2460
 
#define RT2560   0x2560
 
#define RT2570   0x2570
 
#define RT2661   0x2661
 
#define RT2573   0x2573
 
#define RT2860   0x2860 /* 2.4GHz */
 
#define RT2872   0x2872 /* WSOC */
 
#define RT2883   0x2883 /* WSOC */
 
#define RT3070   0x3070
 
#define RT3071   0x3071
 
#define RT3090   0x3090 /* 2.4GHz PCIe */
 
#define RT3290   0x3290
 
#define RT3352   0x3352 /* WSOC */
 
#define RT3390   0x3390
 
#define RT3572   0x3572
 
#define RT3593   0x3593
 
#define RT3883   0x3883 /* WSOC */
 
#define RT5390   0x5390 /* 2.4GHz */
 
#define RT5392   0x5392 /* 2.4GHz */
 
#define GEOGRAPHY_ALLOWED   0x00000001
 
#define ANTENNA_RX_DIVERSITY   0x00000001
 
#define ANTENNA_TX_DIVERSITY   0x00000002
 
#define ANTENNA_MODE_SAMPLE   0x00000004
 
#define SUPPORT_BAND_2GHZ   0x00000001
 
#define SUPPORT_BAND_5GHZ   0x00000002
 
#define SUPPORT_RATE_CCK   0x00000001
 
#define SUPPORT_RATE_OFDM   0x00000002
 
#define CONFIG_UPDATE_TYPE   ( 1 << 1 )
 
#define CONFIG_UPDATE_MAC   ( 1 << 2 )
 
#define CONFIG_UPDATE_BSSID   ( 1 << 3 )
 
#define REGISTER_BUSY_COUNT   100
 
#define REGISTER_BUSY_DELAY   100
 
#define rt2x00mac_set_key   NULL
 

Enumerations

enum  rt2x00_chip_intf { RT2X00_CHIP_INTF_PCI, RT2X00_CHIP_INTF_PCIE, RT2X00_CHIP_INTF_USB, RT2X00_CHIP_INTF_SOC }
 
enum  rt2x00_delayed_flags { DELAYED_UPDATE_BEACON }
 
enum  rt2x00_state_flags {
  DEVICE_STATE_PRESENT, DEVICE_STATE_REGISTERED_HW, DEVICE_STATE_INITIALIZED, DEVICE_STATE_STARTED,
  DEVICE_STATE_ENABLED_RADIO, DEVICE_STATE_SCANNING, CONFIG_CHANNEL_HT40, CONFIG_POWERSAVING,
  CONFIG_HT_DISABLED, CONFIG_QOS_DISABLED, TX_STATUS_READING
}
 
enum  rt2x00_capability_flags {
  REQUIRE_FIRMWARE, REQUIRE_BEACON_GUARD, REQUIRE_ATIM_QUEUE, REQUIRE_DMA,
  REQUIRE_COPY_IV, REQUIRE_L2PAD, REQUIRE_TXSTATUS_FIFO, REQUIRE_TASKLET_CONTEXT,
  REQUIRE_SW_SEQNO, REQUIRE_HT_TX_DESC, REQUIRE_PS_AUTOWAKE, CAPABILITY_HW_BUTTON,
  CAPABILITY_HW_CRYPTO, CAPABILITY_POWER_LIMIT, CAPABILITY_CONTROL_FILTERS, CAPABILITY_CONTROL_FILTER_PSPOLL,
  CAPABILITY_PRE_TBTT_INTERRUPT, CAPABILITY_LINK_TUNING, CAPABILITY_FRAME_TYPE, CAPABILITY_RF_SEQUENCE,
  CAPABILITY_EXTERNAL_LNA_A, CAPABILITY_EXTERNAL_LNA_BG, CAPABILITY_DOUBLE_ANTENNA, CAPABILITY_BT_COEXIST,
  CAPABILITY_VCO_RECALIBRATION
}
 
enum  { IF_COMB_AP = 0, NUM_IF_COMB }
 

Functions

void rt2x00queue_map_txskb (struct queue_entry *entry)
 
void rt2x00queue_unmap_skb (struct queue_entry *entry)
 
struct queue_entry * rt2x00queue_get_entry (struct data_queue *queue, enum queue_index index)
 
void rt2x00queue_pause_queue (struct data_queue *queue)
 
void rt2x00queue_unpause_queue (struct data_queue *queue)
 
void rt2x00queue_start_queue (struct data_queue *queue)
 
void rt2x00queue_stop_queue (struct data_queue *queue)
 
void rt2x00queue_flush_queue (struct data_queue *queue, bool drop)
 
void rt2x00queue_start_queues (struct rt2x00_dev *rt2x00dev)
 
void rt2x00queue_stop_queues (struct rt2x00_dev *rt2x00dev)
 
void rt2x00queue_flush_queues (struct rt2x00_dev *rt2x00dev, bool drop)
 
u32 rt2x00lib_get_bssidx (struct rt2x00_dev *rt2x00dev, struct ieee80211_vif *vif)
 
void rt2x00lib_beacondone (struct rt2x00_dev *rt2x00dev)
 
void rt2x00lib_pretbtt (struct rt2x00_dev *rt2x00dev)
 
void rt2x00lib_dmastart (struct queue_entry *entry)
 
void rt2x00lib_dmadone (struct queue_entry *entry)
 
void rt2x00lib_txdone (struct queue_entry *entry, struct txdone_entry_desc *txdesc)
 
void rt2x00lib_txdone_noinfo (struct queue_entry *entry, u32 status)
 
void rt2x00lib_rxdone (struct queue_entry *entry, gfp_t gfp)
 
void rt2x00mac_tx (struct ieee80211_hw *hw, struct ieee80211_tx_control *control, struct sk_buff *skb)
 
int rt2x00mac_start (struct ieee80211_hw *hw)
 
void rt2x00mac_stop (struct ieee80211_hw *hw)
 
int rt2x00mac_add_interface (struct ieee80211_hw *hw, struct ieee80211_vif *vif)
 
void rt2x00mac_remove_interface (struct ieee80211_hw *hw, struct ieee80211_vif *vif)
 
int rt2x00mac_config (struct ieee80211_hw *hw, u32 changed)
 
void rt2x00mac_configure_filter (struct ieee80211_hw *hw, unsigned int changed_flags, unsigned int *total_flags, u64 multicast)
 
int rt2x00mac_set_tim (struct ieee80211_hw *hw, struct ieee80211_sta *sta, bool set)
 
int rt2x00mac_sta_add (struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta)
 
int rt2x00mac_sta_remove (struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta)
 
void rt2x00mac_sw_scan_start (struct ieee80211_hw *hw)
 
void rt2x00mac_sw_scan_complete (struct ieee80211_hw *hw)
 
int rt2x00mac_get_stats (struct ieee80211_hw *hw, struct ieee80211_low_level_stats *stats)
 
void rt2x00mac_bss_info_changed (struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_bss_conf *bss_conf, u32 changes)
 
int rt2x00mac_conf_tx (struct ieee80211_hw *hw, struct ieee80211_vif *vif, u16 queue, const struct ieee80211_tx_queue_params *params)
 
void rt2x00mac_rfkill_poll (struct ieee80211_hw *hw)
 
void rt2x00mac_flush (struct ieee80211_hw *hw, bool drop)
 
int rt2x00mac_set_antenna (struct ieee80211_hw *hw, u32 tx_ant, u32 rx_ant)
 
int rt2x00mac_get_antenna (struct ieee80211_hw *hw, u32 *tx_ant, u32 *rx_ant)
 
void rt2x00mac_get_ringparam (struct ieee80211_hw *hw, u32 *tx, u32 *tx_max, u32 *rx, u32 *rx_max)
 
bool rt2x00mac_tx_frames_pending (struct ieee80211_hw *hw)
 
int rt2x00lib_probe_dev (struct rt2x00_dev *rt2x00dev)
 
void rt2x00lib_remove_dev (struct rt2x00_dev *rt2x00dev)
 

Macro Definition Documentation

#define ACK_SIZE   14

Definition at line 136 of file rt2x00.h.

#define ALIGN_SIZE (   __skb,
  __header 
)    ( ((unsigned long)((__skb)->data + (__header))) & 3 )

Definition at line 123 of file rt2x00.h.

#define ANTENNA_MODE_SAMPLE   0x00000004

Definition at line 290 of file rt2x00.h.

#define ANTENNA_RX_DIVERSITY   0x00000001

Definition at line 288 of file rt2x00.h.

#define ANTENNA_TX_DIVERSITY   0x00000002

Definition at line 289 of file rt2x00.h.

#define BEACON   100

Definition at line 139 of file rt2x00.h.

#define CONFIG_UPDATE_BSSID   ( 1 << 3 )

Definition at line 636 of file rt2x00.h.

#define CONFIG_UPDATE_MAC   ( 1 << 2 )

Definition at line 635 of file rt2x00.h.

#define CONFIG_UPDATE_TYPE   ( 1 << 1 )

Definition at line 634 of file rt2x00.h.

#define DEBUG (   __dev,
  __msg,
  __args... 
)    DEBUG_PRINTK(__dev, KERN_DEBUG, "Debug", __msg, ##__args)

Definition at line 96 of file rt2x00.h.

#define DEBUG_PRINTK (   __dev,
  __kernlvl,
  __lvl,
  __msg,
  __args... 
)    do { } while (0)

Definition at line 73 of file rt2x00.h.

#define DEBUG_PRINTK_MSG (   __dev,
  __kernlvl,
  __lvl,
  __msg,
  __args... 
)
Value:
printk(__kernlvl "%s -> %s: %s - " __msg, \
wiphy_name((__dev)->hw->wiphy), __func__, __lvl, ##__args)

Definition at line 61 of file rt2x00.h.

#define DEBUG_PRINTK_PROBE (   __kernlvl,
  __lvl,
  __msg,
  __args... 
)
Value:
printk(__kernlvl "%s -> %s: %s - " __msg, \
KBUILD_MODNAME, __func__, __lvl, ##__args)

Definition at line 65 of file rt2x00.h.

#define DIFS   ( PIFS + SLOT_TIME )

Definition at line 147 of file rt2x00.h.

#define DRV_PROJECT   "http://rt2x00.serialmonkey.com"

Definition at line 55 of file rt2x00.h.

#define DRV_VERSION   "2.3.0"

Definition at line 54 of file rt2x00.h.

#define EEPROM (   __dev,
  __msg,
  __args... 
)    DEBUG_PRINTK(__dev, KERN_DEBUG, "EEPROM recovery", __msg, ##__args)

Definition at line 98 of file rt2x00.h.

#define EIFS
Value:
( SIFS + DIFS + \
GET_DURATION(IEEE80211_HEADER + ACK_SIZE, 10) )

Definition at line 149 of file rt2x00.h.

#define ERROR (   __dev,
  __msg,
  __args... 
)    DEBUG_PRINTK_MSG(__dev, KERN_ERR, "Error", __msg, ##__args)

Definition at line 86 of file rt2x00.h.

#define ERROR_PROBE (   __msg,
  __args... 
)    DEBUG_PRINTK_PROBE(KERN_ERR, "Error", __msg, ##__args)

Definition at line 88 of file rt2x00.h.

#define GEOGRAPHY_ALLOWED   0x00000001

Definition at line 221 of file rt2x00.h.

#define GET_DURATION (   __size,
  __rate 
)    (((__size) * 8 * 10) / (__rate))

Definition at line 108 of file rt2x00.h.

#define GET_DURATION_RES (   __size,
  __rate 
)    (((__size) * 8 * 10) % (__rate))

Definition at line 109 of file rt2x00.h.

#define IEEE80211_HEADER   24

Definition at line 137 of file rt2x00.h.

#define INFO (   __dev,
  __msg,
  __args... 
)    DEBUG_PRINTK(__dev, KERN_INFO, "Info", __msg, ##__args)

Definition at line 94 of file rt2x00.h.

#define L2PAD_SIZE (   __hdrlen)    (-(__hdrlen) & 3)

Definition at line 115 of file rt2x00.h.

#define NOTICE (   __dev,
  __msg,
  __args... 
)    DEBUG_PRINTK(__dev, KERN_NOTICE, "Notice", __msg, ##__args)

Definition at line 92 of file rt2x00.h.

#define PANIC (   __dev,
  __msg,
  __args... 
)    DEBUG_PRINTK_MSG(__dev, KERN_CRIT, "Panic", __msg, ##__args)

Definition at line 84 of file rt2x00.h.

#define PIFS   ( SIFS + SLOT_TIME )

Definition at line 145 of file rt2x00.h.

#define PLCP   48

Definition at line 138 of file rt2x00.h.

#define PREAMBLE   144

Definition at line 140 of file rt2x00.h.

#define REGISTER_BUSY_COUNT   100

Definition at line 1027 of file rt2x00.h.

#define REGISTER_BUSY_DELAY   100

Definition at line 1028 of file rt2x00.h.

#define RT2460   0x2460

Definition at line 179 of file rt2x00.h.

#define RT2560   0x2560

Definition at line 180 of file rt2x00.h.

#define RT2570   0x2570

Definition at line 181 of file rt2x00.h.

#define RT2573   0x2573

Definition at line 183 of file rt2x00.h.

#define RT2661   0x2661

Definition at line 182 of file rt2x00.h.

#define RT2860   0x2860 /* 2.4GHz */

Definition at line 184 of file rt2x00.h.

#define RT2872   0x2872 /* WSOC */

Definition at line 185 of file rt2x00.h.

#define RT2883   0x2883 /* WSOC */

Definition at line 186 of file rt2x00.h.

#define RT2X00_ALIGN_SIZE   4 /* Only whole frame needs alignment */

Definition at line 129 of file rt2x00.h.

#define RT2X00_L2PAD_SIZE   8 /* Both header & payload need alignment */

Definition at line 130 of file rt2x00.h.

#define rt2x00mac_set_key   NULL

Definition at line 1325 of file rt2x00.h.

#define RT3070   0x3070

Definition at line 187 of file rt2x00.h.

#define RT3071   0x3071

Definition at line 188 of file rt2x00.h.

#define RT3090   0x3090 /* 2.4GHz PCIe */

Definition at line 189 of file rt2x00.h.

#define RT3290   0x3290

Definition at line 190 of file rt2x00.h.

#define RT3352   0x3352 /* WSOC */

Definition at line 191 of file rt2x00.h.

#define RT3390   0x3390

Definition at line 192 of file rt2x00.h.

#define RT3572   0x3572

Definition at line 193 of file rt2x00.h.

#define RT3593   0x3593

Definition at line 194 of file rt2x00.h.

#define RT3883   0x3883 /* WSOC */

Definition at line 195 of file rt2x00.h.

#define RT5390   0x5390 /* 2.4GHz */

Definition at line 196 of file rt2x00.h.

#define RT5392   0x5392 /* 2.4GHz */

Definition at line 197 of file rt2x00.h.

#define SHORT_DIFS   ( SHORT_PIFS + SHORT_SLOT_TIME )

Definition at line 148 of file rt2x00.h.

#define SHORT_EIFS
Value:
GET_DURATION(IEEE80211_HEADER + ACK_SIZE, 10) )

Definition at line 151 of file rt2x00.h.

#define SHORT_PIFS   ( SIFS + SHORT_SLOT_TIME )

Definition at line 146 of file rt2x00.h.

#define SHORT_PREAMBLE   72

Definition at line 141 of file rt2x00.h.

#define SHORT_SLOT_TIME   9

Definition at line 143 of file rt2x00.h.

#define SIFS   10

Definition at line 144 of file rt2x00.h.

#define SLOT_TIME   20

Definition at line 142 of file rt2x00.h.

#define SUPPORT_BAND_2GHZ   0x00000001

Definition at line 426 of file rt2x00.h.

#define SUPPORT_BAND_5GHZ   0x00000002

Definition at line 427 of file rt2x00.h.

#define SUPPORT_RATE_CCK   0x00000001

Definition at line 430 of file rt2x00.h.

#define SUPPORT_RATE_OFDM   0x00000002

Definition at line 431 of file rt2x00.h.

#define WARNING (   __dev,
  __msg,
  __args... 
)    DEBUG_PRINTK(__dev, KERN_WARNING, "Warning", __msg, ##__args)

Definition at line 90 of file rt2x00.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
IF_COMB_AP 
NUM_IF_COMB 

Definition at line 746 of file rt2x00.h.

Enumerator:
REQUIRE_FIRMWARE 
REQUIRE_BEACON_GUARD 
REQUIRE_ATIM_QUEUE 
REQUIRE_DMA 
REQUIRE_COPY_IV 
REQUIRE_L2PAD 
REQUIRE_TXSTATUS_FIFO 
REQUIRE_TASKLET_CONTEXT 
REQUIRE_SW_SEQNO 
REQUIRE_HT_TX_DESC 
REQUIRE_PS_AUTOWAKE 
CAPABILITY_HW_BUTTON 
CAPABILITY_HW_CRYPTO 
CAPABILITY_POWER_LIMIT 
CAPABILITY_CONTROL_FILTERS 
CAPABILITY_CONTROL_FILTER_PSPOLL 
CAPABILITY_PRE_TBTT_INTERRUPT 
CAPABILITY_LINK_TUNING 
CAPABILITY_FRAME_TYPE 
CAPABILITY_RF_SEQUENCE 
CAPABILITY_EXTERNAL_LNA_A 
CAPABILITY_EXTERNAL_LNA_BG 
CAPABILITY_DOUBLE_ANTENNA 
CAPABILITY_BT_COEXIST 
CAPABILITY_VCO_RECALIBRATION 

Definition at line 708 of file rt2x00.h.

Enumerator:
RT2X00_CHIP_INTF_PCI 
RT2X00_CHIP_INTF_PCIE 
RT2X00_CHIP_INTF_USB 
RT2X00_CHIP_INTF_SOC 

Definition at line 165 of file rt2x00.h.

Enumerator:
DELAYED_UPDATE_BEACON 

Definition at line 368 of file rt2x00.h.

Enumerator:
DEVICE_STATE_PRESENT 
DEVICE_STATE_REGISTERED_HW 
DEVICE_STATE_INITIALIZED 
DEVICE_STATE_STARTED 
DEVICE_STATE_ENABLED_RADIO 
DEVICE_STATE_SCANNING 
CONFIG_CHANNEL_HT40 
CONFIG_POWERSAVING 
CONFIG_HT_DISABLED 
CONFIG_QOS_DISABLED 
TX_STATUS_READING 

Definition at line 679 of file rt2x00.h.

Function Documentation

void rt2x00lib_beacondone ( struct rt2x00_dev rt2x00dev)

Definition at line 222 of file rt2x00dev.c.

void rt2x00lib_dmadone ( struct queue_entry *  entry)

Definition at line 265 of file rt2x00dev.c.

void rt2x00lib_dmastart ( struct queue_entry *  entry)

Definition at line 258 of file rt2x00dev.c.

u32 rt2x00lib_get_bssidx ( struct rt2x00_dev rt2x00dev,
struct ieee80211_vif vif 
)

Definition at line 38 of file rt2x00dev.c.

void rt2x00lib_pretbtt ( struct rt2x00_dev rt2x00dev)

Definition at line 246 of file rt2x00dev.c.

int rt2x00lib_probe_dev ( struct rt2x00_dev rt2x00dev)

Definition at line 1152 of file rt2x00dev.c.

void rt2x00lib_remove_dev ( struct rt2x00_dev rt2x00dev)

Definition at line 1255 of file rt2x00dev.c.

void rt2x00lib_rxdone ( struct queue_entry *  entry,
gfp_t  gfp 
)

Definition at line 591 of file rt2x00dev.c.

void rt2x00lib_txdone ( struct queue_entry *  entry,
struct txdone_entry_desc txdesc 
)

Definition at line 273 of file rt2x00dev.c.

void rt2x00lib_txdone_noinfo ( struct queue_entry *  entry,
u32  status 
)

Definition at line 445 of file rt2x00dev.c.

int rt2x00mac_add_interface ( struct ieee80211_hw hw,
struct ieee80211_vif vif 
)

Definition at line 200 of file rt2x00mac.c.

void rt2x00mac_bss_info_changed ( struct ieee80211_hw hw,
struct ieee80211_vif vif,
struct ieee80211_bss_conf bss_conf,
u32  changes 
)

Definition at line 603 of file rt2x00mac.c.

int rt2x00mac_conf_tx ( struct ieee80211_hw hw,
struct ieee80211_vif vif,
u16  queue,
const struct ieee80211_tx_queue_params params 
)

Definition at line 706 of file rt2x00mac.c.

int rt2x00mac_config ( struct ieee80211_hw hw,
u32  changed 
)

Definition at line 304 of file rt2x00mac.c.

void rt2x00mac_configure_filter ( struct ieee80211_hw hw,
unsigned int  changed_flags,
unsigned int total_flags,
u64  multicast 
)

Definition at line 347 of file rt2x00mac.c.

void rt2x00mac_flush ( struct ieee80211_hw hw,
bool  drop 
)

Definition at line 751 of file rt2x00mac.c.

int rt2x00mac_get_antenna ( struct ieee80211_hw hw,
u32 tx_ant,
u32 rx_ant 
)

Definition at line 804 of file rt2x00mac.c.

void rt2x00mac_get_ringparam ( struct ieee80211_hw hw,
u32 tx,
u32 tx_max,
u32 rx,
u32 rx_max 
)

Definition at line 826 of file rt2x00mac.c.

int rt2x00mac_get_stats ( struct ieee80211_hw hw,
struct ieee80211_low_level_stats stats 
)

Definition at line 587 of file rt2x00mac.c.

void rt2x00mac_remove_interface ( struct ieee80211_hw hw,
struct ieee80211_vif vif 
)

Definition at line 268 of file rt2x00mac.c.

void rt2x00mac_rfkill_poll ( struct ieee80211_hw hw)

Definition at line 742 of file rt2x00mac.c.

int rt2x00mac_set_antenna ( struct ieee80211_hw hw,
u32  tx_ant,
u32  rx_ant 
)

Definition at line 761 of file rt2x00mac.c.

int rt2x00mac_set_tim ( struct ieee80211_hw hw,
struct ieee80211_sta sta,
bool  set 
)

Definition at line 419 of file rt2x00mac.c.

int rt2x00mac_sta_add ( struct ieee80211_hw hw,
struct ieee80211_vif vif,
struct ieee80211_sta sta 
)

Definition at line 538 of file rt2x00mac.c.

int rt2x00mac_sta_remove ( struct ieee80211_hw hw,
struct ieee80211_vif vif,
struct ieee80211_sta sta 
)

Definition at line 555 of file rt2x00mac.c.

int rt2x00mac_start ( struct ieee80211_hw hw)

Definition at line 178 of file rt2x00mac.c.

void rt2x00mac_stop ( struct ieee80211_hw hw)

Definition at line 189 of file rt2x00mac.c.

void rt2x00mac_sw_scan_complete ( struct ieee80211_hw hw)

Definition at line 579 of file rt2x00mac.c.

void rt2x00mac_sw_scan_start ( struct ieee80211_hw hw)

Definition at line 571 of file rt2x00mac.c.

void rt2x00mac_tx ( struct ieee80211_hw hw,
struct ieee80211_tx_control control,
struct sk_buff skb 
)

Definition at line 102 of file rt2x00mac.c.

bool rt2x00mac_tx_frames_pending ( struct ieee80211_hw hw)

Definition at line 842 of file rt2x00mac.c.

void rt2x00queue_flush_queue ( struct data_queue queue,
bool  drop 
)

rt2x00queue_flush_queue - Flush a data queue : Pointer to &struct data_queue. : True to drop all pending frames.

This function will flush the queue. After this call the queue is guaranteed to be empty.

Definition at line 971 of file rt2x00queue.c.

void rt2x00queue_flush_queues ( struct rt2x00_dev rt2x00dev,
bool  drop 
)

rt2x00queue_flush_queues - Flush all data queues : Pointer to &struct rt2x00_dev. : True to drop all pending frames.

This function will loop through all available queues to flush any pending frames.

Definition at line 1064 of file rt2x00queue.c.

struct queue_entry* rt2x00queue_get_entry ( struct data_queue queue,
enum queue_index  index 
)
read

rt2x00queue_get_entry - Get queue entry where the given index points to. : Pointer to &struct data_queue from where we obtain the entry. : Index identifier for obtaining the correct index.

Definition at line 829 of file rt2x00queue.c.

void rt2x00queue_map_txskb ( struct queue_entry *  entry)

rt2x00queue_map_txskb - Map a skb into DMA for TX purposes. : Pointer to &struct queue_entry

Definition at line 100 of file rt2x00queue.c.

void rt2x00queue_pause_queue ( struct data_queue queue)

rt2x00queue_pause_queue - Pause a data queue : Pointer to &struct data_queue.

This function will pause the data queue locally, preventing new frames to be added to the queue (while the hardware is still allowed to run).

Definition at line 880 of file rt2x00queue.c.

void rt2x00queue_start_queue ( struct data_queue queue)

rt2x00queue_start_queue - Start a data queue : Pointer to &struct data_queue.

This function will start handling all pending frames in the queue.

Definition at line 934 of file rt2x00queue.c.

void rt2x00queue_start_queues ( struct rt2x00_dev rt2x00dev)

rt2x00queue_start_queues - Start all data queues : Pointer to &struct rt2x00_dev.

This function will loop through all available queues to start them

Definition at line 1030 of file rt2x00queue.c.

void rt2x00queue_stop_queue ( struct data_queue queue)

rt2x00queue_stop_queue - Halt a data queue : Pointer to &struct data_queue.

This function will stop all pending frames in the queue.

Definition at line 954 of file rt2x00queue.c.

void rt2x00queue_stop_queues ( struct rt2x00_dev rt2x00dev)

rt2x00queue_stop_queues - Halt all data queues : Pointer to &struct rt2x00_dev.

This function will loop through all available queues to stop any pending frames.

Definition at line 1045 of file rt2x00queue.c.

void rt2x00queue_unmap_skb ( struct queue_entry *  entry)

rt2x00queue_unmap_skb - Unmap a skb from DMA. : Pointer to &struct queue_entry

Definition at line 111 of file rt2x00queue.c.

void rt2x00queue_unpause_queue ( struct data_queue queue)

rt2x00queue_unpause_queue - unpause a data queue : Pointer to &struct data_queue.

This function will unpause the data queue locally, allowing new frames to be added to the queue again.

Definition at line 904 of file rt2x00queue.c.