Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
rx.h File Reference
#include <linux/bitops.h>

Go to the source code of this file.

Data Structures

struct  wl1271_rx_descriptor
 

Macros

#define WL1271_RX_MAX_RSSI   -30
 
#define WL1271_RX_MIN_RSSI   -95
 
#define SHORT_PREAMBLE_BIT   BIT(0)
 
#define OFDM_RATE_BIT   BIT(6)
 
#define PBCC_RATE_BIT   BIT(7)
 
#define PLCP_HEADER_LENGTH   8
 
#define RX_DESC_PACKETID_SHIFT   11
 
#define RX_MAX_PACKET_ID   3
 
#define RX_DESC_VALID_FCS   0x0001
 
#define RX_DESC_MATCH_RXADDR1   0x0002
 
#define RX_DESC_MCAST   0x0004
 
#define RX_DESC_STAINTIM   0x0008
 
#define RX_DESC_VIRTUAL_BM   0x0010
 
#define RX_DESC_BCAST   0x0020
 
#define RX_DESC_MATCH_SSID   0x0040
 
#define RX_DESC_MATCH_BSSID   0x0080
 
#define RX_DESC_ENCRYPTION_MASK   0x0300
 
#define RX_DESC_MEASURMENT   0x0400
 
#define RX_DESC_SEQNUM_MASK   0x1800
 
#define RX_DESC_MIC_FAIL   0x2000
 
#define RX_DESC_DECRYPT_FAIL   0x4000
 
#define WL1271_RX_DESC_BAND_MASK   0x03
 
#define WL1271_RX_DESC_ENCRYPT_MASK   0xE0
 
#define WL1271_RX_DESC_BAND_BG   0x00
 
#define WL1271_RX_DESC_BAND_J   0x01
 
#define WL1271_RX_DESC_BAND_A   0x02
 
#define WL1271_RX_DESC_STBC   BIT(2)
 
#define WL1271_RX_DESC_A_MPDU   BIT(3)
 
#define WL1271_RX_DESC_HT   BIT(4)
 
#define WL1271_RX_DESC_ENCRYPT_WEP   0x20
 
#define WL1271_RX_DESC_ENCRYPT_TKIP   0x40
 
#define WL1271_RX_DESC_ENCRYPT_AES   0x60
 
#define WL1271_RX_DESC_ENCRYPT_GEM   0x80
 
#define WL1271_RX_DESC_STATUS_MASK   0x03
 
#define WL1271_RX_DESC_SUCCESS   0x00
 
#define WL1271_RX_DESC_DECRYPT_FAIL   0x01
 
#define WL1271_RX_DESC_MIC_FAIL   0x02
 
#define WL1271_RX_DESC_DRIVER_RX_Q_FAIL   0x03
 
#define RX_MEM_BLOCK_MASK   0xFF
 
#define RX_BUF_SIZE_MASK   0xFFF00
 
#define RX_BUF_SIZE_SHIFT_DIV   6
 
#define ALIGNED_RX_BUF_SIZE_MASK   0xFFFF00
 
#define ALIGNED_RX_BUF_SIZE_SHIFT   8
 
#define RX_BUF_UNALIGNED_PAYLOAD   BIT(20)
 
#define RX_BUF_PADDED_PAYLOAD   BIT(30)
 
#define RX_BUF_ALIGN   2
 

Enumerations

enum  wl_rx_buf_align { WLCORE_RX_BUF_ALIGNED, WLCORE_RX_BUF_UNALIGNED, WLCORE_RX_BUF_PADDED }
 
enum  {
  WL12XX_RX_CLASS_UNKNOWN, WL12XX_RX_CLASS_MANAGEMENT, WL12XX_RX_CLASS_DATA, WL12XX_RX_CLASS_QOS_DATA,
  WL12XX_RX_CLASS_BCN_PRBRSP, WL12XX_RX_CLASS_EAPOL, WL12XX_RX_CLASS_BA_EVENT, WL12XX_RX_CLASS_AMSDU,
  WL12XX_RX_CLASS_LOGGER
}
 

Functions

int wlcore_rx (struct wl1271 *wl, struct wl_fw_status_1 *status)
 
u8 wl1271_rate_to_idx (int rate, enum ieee80211_band band)
 
int wl1271_rx_filter_enable (struct wl1271 *wl, int index, bool enable, struct wl12xx_rx_filter *filter)
 
int wl1271_rx_filter_clear_all (struct wl1271 *wl)
 

Variables

struct wl1271_rx_descriptor __packed
 

Macro Definition Documentation

#define ALIGNED_RX_BUF_SIZE_MASK   0xFFFF00

Definition at line 97 of file rx.h.

#define ALIGNED_RX_BUF_SIZE_SHIFT   8

Definition at line 98 of file rx.h.

#define OFDM_RATE_BIT   BIT(6)

Definition at line 34 of file rx.h.

#define PBCC_RATE_BIT   BIT(7)

Definition at line 35 of file rx.h.

#define PLCP_HEADER_LENGTH   8

Definition at line 37 of file rx.h.

#define RX_BUF_ALIGN   2

Definition at line 110 of file rx.h.

#define RX_BUF_PADDED_PAYLOAD   BIT(30)

Definition at line 104 of file rx.h.

#define RX_BUF_SIZE_MASK   0xFFF00

Definition at line 95 of file rx.h.

#define RX_BUF_SIZE_SHIFT_DIV   6

Definition at line 96 of file rx.h.

#define RX_BUF_UNALIGNED_PAYLOAD   BIT(20)

Definition at line 101 of file rx.h.

#define RX_DESC_BCAST   0x0020

Definition at line 46 of file rx.h.

#define RX_DESC_DECRYPT_FAIL   0x4000

Definition at line 53 of file rx.h.

#define RX_DESC_ENCRYPTION_MASK   0x0300

Definition at line 49 of file rx.h.

#define RX_DESC_MATCH_BSSID   0x0080

Definition at line 48 of file rx.h.

#define RX_DESC_MATCH_RXADDR1   0x0002

Definition at line 42 of file rx.h.

#define RX_DESC_MATCH_SSID   0x0040

Definition at line 47 of file rx.h.

#define RX_DESC_MCAST   0x0004

Definition at line 43 of file rx.h.

#define RX_DESC_MEASURMENT   0x0400

Definition at line 50 of file rx.h.

#define RX_DESC_MIC_FAIL   0x2000

Definition at line 52 of file rx.h.

#define RX_DESC_PACKETID_SHIFT   11

Definition at line 38 of file rx.h.

#define RX_DESC_SEQNUM_MASK   0x1800

Definition at line 51 of file rx.h.

#define RX_DESC_STAINTIM   0x0008

Definition at line 44 of file rx.h.

#define RX_DESC_VALID_FCS   0x0001

Definition at line 41 of file rx.h.

#define RX_DESC_VIRTUAL_BM   0x0010

Definition at line 45 of file rx.h.

#define RX_MAX_PACKET_ID   3

Definition at line 39 of file rx.h.

#define RX_MEM_BLOCK_MASK   0xFF

Definition at line 94 of file rx.h.

#define SHORT_PREAMBLE_BIT   BIT(0)

Definition at line 33 of file rx.h.

#define WL1271_RX_DESC_A_MPDU   BIT(3)

Definition at line 72 of file rx.h.

#define WL1271_RX_DESC_BAND_A   0x02

Definition at line 69 of file rx.h.

#define WL1271_RX_DESC_BAND_BG   0x00

Definition at line 67 of file rx.h.

#define WL1271_RX_DESC_BAND_J   0x01

Definition at line 68 of file rx.h.

#define WL1271_RX_DESC_BAND_MASK   0x03

Definition at line 64 of file rx.h.

#define WL1271_RX_DESC_DECRYPT_FAIL   0x01

Definition at line 90 of file rx.h.

#define WL1271_RX_DESC_DRIVER_RX_Q_FAIL   0x03

Definition at line 92 of file rx.h.

#define WL1271_RX_DESC_ENCRYPT_AES   0x60

Definition at line 77 of file rx.h.

#define WL1271_RX_DESC_ENCRYPT_GEM   0x80

Definition at line 78 of file rx.h.

#define WL1271_RX_DESC_ENCRYPT_MASK   0xE0

Definition at line 65 of file rx.h.

#define WL1271_RX_DESC_ENCRYPT_TKIP   0x40

Definition at line 76 of file rx.h.

#define WL1271_RX_DESC_ENCRYPT_WEP   0x20

Definition at line 75 of file rx.h.

#define WL1271_RX_DESC_HT   BIT(4)

Definition at line 73 of file rx.h.

#define WL1271_RX_DESC_MIC_FAIL   0x02

Definition at line 91 of file rx.h.

#define WL1271_RX_DESC_STATUS_MASK   0x03

Definition at line 87 of file rx.h.

#define WL1271_RX_DESC_STBC   BIT(2)

Definition at line 71 of file rx.h.

#define WL1271_RX_DESC_SUCCESS   0x00

Definition at line 89 of file rx.h.

#define WL1271_RX_MAX_RSSI   -30

Definition at line 30 of file rx.h.

#define WL1271_RX_MIN_RSSI   -95

Definition at line 31 of file rx.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
WL12XX_RX_CLASS_UNKNOWN 
WL12XX_RX_CLASS_MANAGEMENT 
WL12XX_RX_CLASS_DATA 
WL12XX_RX_CLASS_QOS_DATA 
WL12XX_RX_CLASS_BCN_PRBRSP 
WL12XX_RX_CLASS_EAPOL 
WL12XX_RX_CLASS_BA_EVENT 
WL12XX_RX_CLASS_AMSDU 
WL12XX_RX_CLASS_LOGGER 

Definition at line 119 of file rx.h.

Enumerator:
WLCORE_RX_BUF_ALIGNED 
WLCORE_RX_BUF_UNALIGNED 
WLCORE_RX_BUF_PADDED 

Definition at line 113 of file rx.h.

Function Documentation

u8 wl1271_rate_to_idx ( int  rate,
enum ieee80211_band  band 
)
int wl1271_rx_filter_clear_all ( struct wl1271 wl)
int wl1271_rx_filter_enable ( struct wl1271 wl,
int  index,
bool  enable,
struct wl12xx_rx_filter filter 
)
int wlcore_rx ( struct wl1271 wl,
struct wl_fw_status_1 status 
)

Definition at line 203 of file rx.c.

Variable Documentation