📄 wlan_defs.h
字号:
#endif /* MULTI_BANDS */
#ifdef WPA
#define KEY_INFO_ENABLED 0x01
#endif /* WPA */
/* For Wireless Extensions */
#define RF_GET 0
#define RF_SET 1
#define OID_MRVL_MFG_COMMAND 1
#define SNR_BEACON 0
#define SNR_RXPD 1
#define NF_BEACON 2
#define NF_RXPD 3
/*
* MACRO DEFINITIONS
*/
#define CAL_NF(NF) ((s32)(-(s32)(NF)))
#define CAL_RSSI(SNR, NF) ((s32)((s32)(SNR) + CAL_NF(NF)))
#define SCAN_RSSI(RSSI) (0x100 - ((u8)(RSSI)))
#define DEFAULT_BCN_AVG_FACTOR 8
#define DEFAULT_DATA_AVG_FACTOR 8
#define AVG_SCALE 100
#define CAL_AVG_SNR_NF(AVG, SNRNF, N) \
(((AVG) == 0) ? ((u16)(SNRNF) * AVG_SCALE) : \
((((int)(AVG) * (N -1)) + ((u16)(SNRNF) * \
AVG_SCALE)) / N))
#define WLAN_STATUS_SUCCESS (0)
#define WLAN_STATUS_FAILURE (-1)
#define WLAN_STATUS_NOT_ACCEPTED (-2)
#define B_SUPPORTED_RATES 8
#define G_SUPPORTED_RATES 14
#define WLAN_SUPPORTED_RATES 14
#define WLAN_MAX_SSID_LENGTH 32
#ifdef LED_GPIO_CTRL
#define MAX_LEDS 16
#endif
/*
* S_SWAP : To swap 2 unsigned char
*/
#define S_SWAP(a,b) do { \
unsigned char t = SArr[a]; \
SArr[a] = SArr[b]; SArr[b] = t; \
} while(0)
/* SWAP: swap u8 */
#define SWAP_U8(a,b) {u8 t; t=a; a=b; b=t;}
/* SWAP: swap u8 */
#define SWAP_U16(a,b) {u16 t; t=a; a=b; b=t;}
#ifdef BIG_ENDIAN
#define wlan_le16_to_cpu(x) le16_to_cpu(x)
#define wlan_le32_to_cpu(x) le32_to_cpu(x)
#define wlan_cpu_to_le16(x) cpu_to_le16(x)
#define wlan_cpu_to_le32(x) cpu_to_le32(x)
#define endian_convert_pLocalTxPD(x); { \
pLocalTxPD->TxStatus = wlan_cpu_to_le32(pLocalTxPD->TxStatus); \
pLocalTxPD->TxPacketLength = wlan_cpu_to_le16(pLocalTxPD->TxPacketLength); \
pLocalTxPD->TxPacketLocation = wlan_cpu_to_le32(pLocalTxPD->TxPacketLocation); \
pLocalTxPD->TxControl = wlan_cpu_to_le32(pLocalTxPD->TxControl); \
}
#define endian_convert_RxPD(x); { \
pRxPD->Status = wlan_le16_to_cpu(pRxPD->Status); \
pRxPD->PktLen = wlan_le16_to_cpu(pRxPD->PktLen); \
pRxPD->PktPtr = wlan_le32_to_cpu(pRxPD->PktPtr); \
pRxPD->NextRxPDPtr = wlan_le32_to_cpu(pRxPD->NextRxPDPtr); \
}
#define endian_convert_GET_LOG(x); { \
Adapter->LogMsg.mcastrxframe = wlan_le32_to_cpu(Adapter->LogMsg.mcastrxframe); \
Adapter->LogMsg.failed = wlan_le32_to_cpu(Adapter->LogMsg.failed); \
Adapter->LogMsg.retry = wlan_le32_to_cpu(Adapter->LogMsg.retry); \
Adapter->LogMsg.multiretry = wlan_le32_to_cpu(Adapter->LogMsg.multiretry); \
Adapter->LogMsg.framedup = wlan_le32_to_cpu(Adapter->LogMsg.framedup); \
Adapter->LogMsg.rtssuccess = wlan_le32_to_cpu(Adapter->LogMsg.rtssuccess); \
Adapter->LogMsg.rtsfailure = wlan_le32_to_cpu(Adapter->LogMsg.rtsfailure); \
Adapter->LogMsg.ackfailure = wlan_le32_to_cpu(Adapter->LogMsg.ackfailure); \
Adapter->LogMsg.rxfrag = wlan_le32_to_cpu(Adapter->LogMsg.rxfrag); \
Adapter->LogMsg.mcastrxframe = wlan_le32_to_cpu(Adapter->LogMsg.mcastrxframe); \
Adapter->LogMsg.fcserror = wlan_le32_to_cpu(Adapter->LogMsg.fcserror); \
Adapter->LogMsg.wepundecryptable = wlan_le32_to_cpu(Adapter->LogMsg.wepundecryptable); \
}
#else /* BIG_ENDIAN */
#define wlan_le16_to_cpu(x) x
#define wlan_le32_to_cpu(x) x
#define wlan_cpu_to_le16(x) x
#define wlan_cpu_to_le32(x) x
#endif /* BIG_ENDIAN */
typedef struct _wlan_private wlan_private;
typedef struct _wlan_adapter wlan_adapter;
typedef struct _HostCmd_DS_COMMAND HostCmd_DS_COMMAND;
extern u32 DSFreqList[15];
extern const char driver_version[];
extern u32 DSFreqList[];
extern u16 RegionCodeToIndex[MRVDRV_MAX_REGION_CODE];
extern u8 WlanDataRates[WLAN_SUPPORTED_RATES];
#ifdef MULTI_BANDS
extern u8 SupportedRates[A_SUPPORTED_RATES];
extern u8 SupportedRates_B[B_SUPPORTED_RATES];
extern u8 SupportedRates_G[G_SUPPORTED_RATES];
extern u8 SupportedRates_A[A_SUPPORTED_RATES];
extern u8 AdhocRates_A[A_SUPPORTED_RATES];
#else
#ifdef G_RATE
extern u8 SupportedRates[G_SUPPORTED_RATES];
#else
extern u8 SupportedRates[B_SUPPORTED_RATES];
#endif
#endif
#ifdef ADHOC_GRATE
extern u8 AdhocRates_G[G_SUPPORTED_RATES];
#else ///ADHOC_GRATE
extern u8 AdhocRates_G[4];
#endif ///ADHOC_GRATE
extern u8 AdhocRates_B[4];
extern wlan_private *wlanpriv;
#ifdef FW_WAKEUP_TIME
extern unsigned long wt_pwrup_sending, wt_pwrup_sent, wt_int, wt_wakeup_event, wt_awake_confirmrsp;
#endif
#ifdef PS_REQUIRED
#ifdef BULVERDE_SDIO
extern int ps_sleep_confirmed;
#endif
#endif
#ifdef GSPI83xx
extern int g_bus_mode_reg;
extern int g_dummy_clk_ioport;
extern int g_dummy_clk_reg;
#endif /* GSPI83xx */
#ifdef OMAP1510_TIMER_DEBUG
extern unsigned long times[20][10];
extern int tm_ind[10];
#endif /* OMAP1510_TIMER_DEBUG */
#ifdef MANF_CMD_SUPPORT
typedef struct PkHeader //For the mfg command
{
u16 cmd;
u16 len;
u16 seq;
u16 result;
u32 MfgCmd;
} PkHeader;
#define SIOCCFMFG SIOCDEVPRIVATE //For the manfacturing tool
#endif /* MANF_CMD_SUPPORT */
/* Definitions for SNR and NF */
typedef enum _SNRNF_TYPE {
TYPE_BEACON = 0,
TYPE_RXPD,
MAX_TYPE_B
} SNRNF_TYPE;
typedef enum _SNRNF_DATA {
TYPE_NOAVG = 0,
TYPE_AVG,
MAX_TYPE_AVG
} SNRNF_DATA;
typedef enum _WLAN_802_11_AUTH_ALG
{
AUTH_ALG_OPEN_SYSTEM = 1,
AUTH_ALG_SHARED_KEY = 2,
AUTH_ALG_NETWORK_EAP = 8,
} WLAN_802_11_AUTH_ALG;
typedef enum _WLAN_802_1X_AUTH_ALG
{
WLAN_1X_AUTH_ALG_NONE = 1,
WLAN_1X_AUTH_ALG_LEAP = 2,
WLAN_1X_AUTH_ALG_TLS = 4,
WLAN_1X_AUTH_ALG_TTLS = 8,
WLAN_1X_AUTH_ALG_MD5 = 16,
} WLAN_802_1X_AUTH_ALG;
typedef enum _WLAN_802_11_ENCRYPTION_MODE
{
CIPHER_NONE,
CIPHER_WEP40,
CIPHER_TKIP,
CIPHER_CCMP,
CIPHER_WEP104,
} WLAN_802_11_ENCRYPTION_MODE;
#ifdef PS_REQUIRED
typedef enum _WLAN_802_11_POWER_MODE
{
Wlan802_11PowerModeCAM,
Wlan802_11PowerModeMAX_PSP,
Wlan802_11PowerModeFast_PSP,
Wlan802_11PowerModeMax // not a real mode, defined as
//an upper bound
} WLAN_802_11_POWER_MODE, *PWLAN_802_11_POWER_MODE;
typedef enum {
PS_STATE_FULL_POWER,
PS_STATE_AWAKE,
#ifdef PS_PRESLEEP
PS_STATE_PRE_SLEEP,
#endif
PS_STATE_SLEEP
} PS_STATE;
#endif /* PS_REQUIRED */
/* Command or Data download status */
typedef enum {
DNLD_RES_RECEIVED,
DNLD_DATA_SENT,
DNLD_CMD_SENT
} DNLD_STATE;
/*
* Defines the state of the LAN media
*/
typedef enum _WLAN_MEDIA_STATE {
WlanMediaStateConnected,
WlanMediaStateDisconnected
} WLAN_MEDIA_STATE, *PWLAN_MEDIA_STATE;
typedef enum _WLAN_802_11_PRIVACY_FILTER {
Wlan802_11PrivFilterAcceptAll,
Wlan802_11PrivFilter8021xWEP
} WLAN_802_11_PRIVACY_FILTER, *PWLAN_802_11_PRIVACY_FILTER;
typedef enum {
MVMS_DAT = 0,
MVMS_CMD = 1,
MVMS_TXDONE = 2,
MVMS_EVENT
} mv_ms_type;
typedef u8 WLAN_802_11_RATES[WLAN_SUPPORTED_RATES] __ATTRIB_PACK__; // Set of 8 data rates
typedef u8 WLAN_802_11_MAC_ADDRESS[ETH_ALEN] __ATTRIB_PACK__;
/*
* Hardware status codes (OID_GEN_HARDWARE_STATUS).
*/
typedef enum _WLAN_HARDWARE_STATUS {
WlanHardwareStatusReady,
WlanHardwareStatusInitializing,
WlanHardwareStatusReset,
WlanHardwareStatusClosing,
WlanHardwareStatusNotReady
} WLAN_HARDWARE_STATUS, *PWLAN_HARDWARE_STATUS;
typedef enum _WLAN_802_11_NETWORK_TYPE {
Wlan802_11FH,
Wlan802_11DS,
Wlan802_11NetworkTypeMax // not a real type,
//defined as an upper bound
} WLAN_802_11_NETWORK_TYPE, *PWLAN_802_11_NETWORK_TYPE
__ATTRIB_PACK__;
typedef enum _WLAN_802_11_NETWORK_INFRASTRUCTURE {
Wlan802_11IBSS,
Wlan802_11Infrastructure,
Wlan802_11AutoUnknown,
Wlan802_11InfrastructureMax // Not a real value,
// defined as upper bound
} WLAN_802_11_NETWORK_INFRASTRUCTURE, *PWLAN_802_11_NETWORK_INFRASTRUCTURE;
typedef enum _WLAN_802_11_AUTHENTICATION_MODE {
Wlan802_11AuthModeOpen = 0x00,
Wlan802_11AuthModeShared = 0x01,
Wlan802_11AuthModeNetworkEAP = 0x80,
} WLAN_802_11_AUTHENTICATION_MODE, *PWLAN_802_11_AUTHENTICATION_MODE;
typedef enum _WLAN_802_11_WEP_STATUS
{
Wlan802_11WEPEnabled,
Wlan802_11WEPDisabled,
Wlan802_11WEPKeyAbsent,
Wlan802_11WEPNotSupported
#ifdef WPA
,Wlan802_11Encryption2Enabled,
Wlan802_11Encryption2KeyAbsent,
Wlan802_11Encryption3Enabled,
Wlan802_11Encryption3KeyAbsent
#endif
} WLAN_802_11_WEP_STATUS, *PWLAN_802_11_WEP_STATUS
#ifdef WPA
,WLAN_802_11_ENCRYPTION_STATUS, *PWLAN_802_11_ENCRYPTION_STATUS;
#else
;
#endif
typedef enum {
DesiredBssType_i = 0,
OpRateSet_i,
BcnPeriod_i,
DtimPeriod_i,
AssocRspTimeOut_i,
RtsThresh_i,
ShortRetryLim_i,
LongRetryLim_i,
FragThresh_i,
Dot11D_i,
Dot11HTPC_i,
ManufId_i,
ProdId_i,
ManufOui_i,
ManufName_i,
ManufProdName_i,
ManufProdVer_i
} SNMP_MIB_INDEX_e;
#ifdef WPA
typedef enum {
KEY_TYPE_ID_WEP = 0,
KEY_TYPE_ID_TKIP,
KEY_TYPE_ID_AES
} KEY_TYPE_ID;
typedef enum {
KEY_INFO_WEP_DEFAULT_KEY = 0x01
} KEY_INFO_WEP;
typedef enum {
KEY_INFO_TKIP_MCAST = 0x01,
KEY_INFO_TKIP_UNICAST = 0x02,
KEY_INFO_TKIP_ENABLED = 0x04
} KEY_INFO_TKIP;
typedef enum {
KEY_INFO_AES_MCAST = 0x01,
KEY_INFO_AES_UNICAST = 0x02,
KEY_INFO_AES_ENABLED = 0x04
} KEY_INFO_AES;
#endif /* WPA */
typedef enum {
SNMP_MIB_VALUE_INFRA = 1,
SNMP_MIB_VALUE_ADHOC
} SNMP_MIB_VALUE_e;
/* Linux Dynamic Power Management,
* If the user has enabled the deep sleep, user has the highest privilege.
* The Kernel PM takes the next priority
*/
enum {
DEEP_SLEEP_DISABLED,
DEEP_SLEEP_ENABLED,
DEEP_SLEEP_OS_ENABLED,
DEEP_SLEEP_USER_ENABLED
};
enum {
PM_DISABLED,
PM_ENABLED
};
#endif /* _WLAN_DEFS_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -