Linux Kernel
3.7.1
|
#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 |
#define DEBUG | ( | __dev, | |
__msg, | |||
__args... | |||
) | DEBUG_PRINTK(__dev, KERN_DEBUG, "Debug", __msg, ##__args) |
#define DEBUG_PRINTK | ( | __dev, | |
__kernlvl, | |||
__lvl, | |||
__msg, | |||
__args... | |||
) | do { } while (0) |
#define DEBUG_PRINTK_MSG | ( | __dev, | |
__kernlvl, | |||
__lvl, | |||
__msg, | |||
__args... | |||
) |
#define DEBUG_PRINTK_PROBE | ( | __kernlvl, | |
__lvl, | |||
__msg, | |||
__args... | |||
) |
#define EEPROM | ( | __dev, | |
__msg, | |||
__args... | |||
) | DEBUG_PRINTK(__dev, KERN_DEBUG, "EEPROM recovery", __msg, ##__args) |
#define EIFS |
#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 GET_DURATION | ( | __size, | |
__rate | |||
) | (((__size) * 8 * 10) / (__rate)) |
#define GET_DURATION_RES | ( | __size, | |
__rate | |||
) | (((__size) * 8 * 10) % (__rate)) |
#define INFO | ( | __dev, | |
__msg, | |||
__args... | |||
) | DEBUG_PRINTK(__dev, KERN_INFO, "Info", __msg, ##__args) |
#define NOTICE | ( | __dev, | |
__msg, | |||
__args... | |||
) | DEBUG_PRINTK(__dev, KERN_NOTICE, "Notice", __msg, ##__args) |
#define PANIC | ( | __dev, | |
__msg, | |||
__args... | |||
) | DEBUG_PRINTK_MSG(__dev, KERN_CRIT, "Panic", __msg, ##__args) |
#define SHORT_DIFS ( SHORT_PIFS + SHORT_SLOT_TIME ) |
#define SHORT_EIFS |
#define SHORT_PIFS ( SIFS + SHORT_SLOT_TIME ) |
#define WARNING | ( | __dev, | |
__msg, | |||
__args... | |||
) | DEBUG_PRINTK(__dev, KERN_WARNING, "Warning", __msg, ##__args) |
enum rt2x00_chip_intf |
enum rt2x00_delayed_flags |
enum rt2x00_state_flags |
void rt2x00lib_beacondone | ( | struct rt2x00_dev * | rt2x00dev | ) |
Definition at line 222 of file rt2x00dev.c.
Definition at line 265 of file rt2x00dev.c.
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.
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.
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.
|
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.
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.
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.