staging: rtl8192e: Fix sparse (non-endian) messages - Part I

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
This commit is contained in:
Larry Finger 2011-08-12 07:31:47 -05:00
parent 438812c3ec
commit 966aeb321c
7 changed files with 104 additions and 275 deletions

View File

@ -20,21 +20,21 @@
#include "rtl819x_BA.h" #include "rtl819x_BA.h"
#include "rtl_core.h" #include "rtl_core.h"
void ActivateBAEntry(struct rtllib_device *ieee, struct ba_record *pBA, static void ActivateBAEntry(struct rtllib_device *ieee, struct ba_record *pBA,
u16 Time) u16 Time)
{ {
pBA->bValid = true; pBA->bValid = true;
if (Time != 0) if (Time != 0)
mod_timer(&pBA->Timer, jiffies + MSECS(Time)); mod_timer(&pBA->Timer, jiffies + MSECS(Time));
} }
void DeActivateBAEntry(struct rtllib_device *ieee, struct ba_record *pBA) static void DeActivateBAEntry(struct rtllib_device *ieee, struct ba_record *pBA)
{ {
pBA->bValid = false; pBA->bValid = false;
del_timer_sync(&pBA->Timer); del_timer_sync(&pBA->Timer);
} }
u8 TxTsDeleteBA(struct rtllib_device *ieee, struct tx_ts_record *pTxTs) static u8 TxTsDeleteBA(struct rtllib_device *ieee, struct tx_ts_record *pTxTs)
{ {
struct ba_record *pAdmittedBa = &pTxTs->TxAdmittedBARecord; struct ba_record *pAdmittedBa = &pTxTs->TxAdmittedBARecord;
struct ba_record *pPendingBa = &pTxTs->TxPendingBARecord; struct ba_record *pPendingBa = &pTxTs->TxPendingBARecord;
@ -52,7 +52,7 @@ u8 TxTsDeleteBA(struct rtllib_device *ieee, struct tx_ts_record *pTxTs)
return bSendDELBA; return bSendDELBA;
} }
u8 RxTsDeleteBA(struct rtllib_device *ieee, struct rx_ts_record *pRxTs) static u8 RxTsDeleteBA(struct rtllib_device *ieee, struct rx_ts_record *pRxTs)
{ {
struct ba_record *pBa = &pRxTs->RxAdmittedBARecord; struct ba_record *pBa = &pRxTs->RxAdmittedBARecord;
u8 bSendDELBA = false; u8 bSendDELBA = false;
@ -193,8 +193,8 @@ static struct sk_buff *rtllib_DELBA(struct rtllib_device *ieee, u8 *dst,
return skb; return skb;
} }
void rtllib_send_ADDBAReq(struct rtllib_device *ieee, u8 *dst, static void rtllib_send_ADDBAReq(struct rtllib_device *ieee, u8 *dst,
struct ba_record *pBA) struct ba_record *pBA)
{ {
struct sk_buff *skb = NULL; struct sk_buff *skb = NULL;
skb = rtllib_ADDBA(ieee, dst, pBA, 0, ACT_ADDBAREQ); skb = rtllib_ADDBA(ieee, dst, pBA, 0, ACT_ADDBAREQ);
@ -209,8 +209,8 @@ void rtllib_send_ADDBAReq(struct rtllib_device *ieee, u8 *dst,
return; return;
} }
void rtllib_send_ADDBARsp(struct rtllib_device *ieee, u8 *dst, static void rtllib_send_ADDBARsp(struct rtllib_device *ieee, u8 *dst,
struct ba_record *pBA, u16 StatusCode) struct ba_record *pBA, u16 StatusCode)
{ {
struct sk_buff *skb = NULL; struct sk_buff *skb = NULL;
skb = rtllib_ADDBA(ieee, dst, pBA, StatusCode, ACT_ADDBARSP); skb = rtllib_ADDBA(ieee, dst, pBA, StatusCode, ACT_ADDBARSP);
@ -222,9 +222,9 @@ void rtllib_send_ADDBARsp(struct rtllib_device *ieee, u8 *dst,
return; return;
} }
void rtllib_send_DELBA(struct rtllib_device *ieee, u8 *dst, static void rtllib_send_DELBA(struct rtllib_device *ieee, u8 *dst,
struct ba_record *pBA, enum tr_select TxRxSelect, struct ba_record *pBA, enum tr_select TxRxSelect,
u16 ReasonCode) u16 ReasonCode)
{ {
struct sk_buff *skb = NULL; struct sk_buff *skb = NULL;
skb = rtllib_DELBA(ieee, dst, pBA, TxRxSelect, ReasonCode); skb = rtllib_DELBA(ieee, dst, pBA, TxRxSelect, ReasonCode);

View File

@ -214,7 +214,7 @@ void HTDebugHTInfo(u8 *InfoIE, u8 *TitleString)
return; return;
} }
bool IsHTHalfNmode40Bandwidth(struct rtllib_device *ieee) static bool IsHTHalfNmode40Bandwidth(struct rtllib_device *ieee)
{ {
bool retValue = false; bool retValue = false;
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
@ -233,7 +233,7 @@ bool IsHTHalfNmode40Bandwidth(struct rtllib_device *ieee)
return retValue; return retValue;
} }
bool IsHTHalfNmodeSGI(struct rtllib_device *ieee, bool is40MHz) static bool IsHTHalfNmodeSGI(struct rtllib_device *ieee, bool is40MHz)
{ {
bool retValue = false; bool retValue = false;
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
@ -336,7 +336,7 @@ bool IsHTHalfNmodeAPs(struct rtllib_device *ieee)
return retValue; return retValue;
} }
void HTIOTPeerDetermine(struct rtllib_device *ieee) static void HTIOTPeerDetermine(struct rtllib_device *ieee)
{ {
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
struct rtllib_network *net = &ieee->current_network; struct rtllib_network *net = &ieee->current_network;
@ -378,40 +378,31 @@ void HTIOTPeerDetermine(struct rtllib_device *ieee)
pHTInfo->IOTPeer); pHTInfo->IOTPeer);
} }
u8 HTIOTActIsDisableMCS14(struct rtllib_device *ieee, u8 *PeerMacAddr) static u8 HTIOTActIsDisableMCS14(struct rtllib_device *ieee, u8 *PeerMacAddr)
{ {
return 0; return 0;
} }
bool HTIOTActIsDisableMCS15(struct rtllib_device *ieee) static bool HTIOTActIsDisableMCS15(struct rtllib_device *ieee)
{ {
bool retValue = false; bool retValue = false;
return retValue; return retValue;
} }
bool HTIOTActIsDisableMCSTwoSpatialStream(struct rtllib_device *ieee) static bool HTIOTActIsDisableMCSTwoSpatialStream(struct rtllib_device *ieee)
{ {
return false; return false;
} }
u8 HTIOTActIsDisableEDCATurbo(struct rtllib_device *ieee, u8 *PeerMacAddr) static u8 HTIOTActIsDisableEDCATurbo(struct rtllib_device *ieee, u8 *PeerMacAddr)
{ {
return false; return false;
} }
static u8 HTIOTActIsMgntUseCCK6M(struct rtllib_device *ieee,
bool HTIOTActIsEnableBETxOPLimit(struct rtllib_device *ieee) struct rtllib_network *network)
{
bool retValue = false;
return retValue;
}
u8 HTIOTActIsMgntUseCCK6M(struct rtllib_device *ieee,
struct rtllib_network *network)
{ {
u8 retValue = 0; u8 retValue = 0;
@ -422,60 +413,7 @@ u8 HTIOTActIsMgntUseCCK6M(struct rtllib_device *ieee,
return retValue; return retValue;
} }
u8 HTIOTActWAIOTBroadcom(struct rtllib_device *ieee) static u8 HTIOTActIsCCDFsync(struct rtllib_device *ieee)
{
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
u8 retValue = false;
u8 boundary = 59;
pHTInfo->bWAIotBroadcom = false;
if (ieee->pHTInfo->IOTPeer == HT_IOT_PEER_BROADCOM) {
if (ieee->current_network.bssht.bdBandWidth ==
HT_CHANNEL_WIDTH_20_40) {
if (!(pHTInfo->bRegBW40MHz)) {
if (ieee->current_network.mode !=
WIRELESS_MODE_B) {
pHTInfo->bWAIotBroadcom = true;
if (ieee->b_customer_lenovo_id)
boundary = 30;
if (ieee->current_network.RSSI >=
boundary)
retValue = true;
}
}
}
}
return retValue;
}
u8 HTIOTActIsForcedCTS2Self(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
if (ieee->pHTInfo->IOTPeer == HT_IOT_PEER_MARVELL)
retValue = 1;
return retValue;
}
u8 HTIOTActIsForcedRTSCTS(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
return retValue;
}
u8 HTIOTActIsForcedAMSDU8K(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
return retValue;
}
u8 HTIOTActIsCCDFsync(struct rtllib_device *ieee)
{ {
u8 retValue = 0; u8 retValue = 0;
@ -484,42 +422,7 @@ u8 HTIOTActIsCCDFsync(struct rtllib_device *ieee)
return retValue; return retValue;
} }
u8 HTIOCActRejcectADDBARequest(struct rtllib_network *network) static void HTIOTActDetermineRaFunc(struct rtllib_device *ieee, bool bPeerRx2ss)
{
u8 retValue = 0;
return retValue;
}
u8 HTIOTActIsEDCABiasRx(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
return retValue;
}
u8 HTIOTActDisableShortGI(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
if (pHTInfo->IOTPeer == HT_IOT_PEER_RALINK)
retValue = 1;
return retValue;
}
u8 HTIOTActDisableHighPower(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
return retValue;
}
void HTIOTActDetermineRaFunc(struct rtllib_device *ieee, bool bPeerRx2ss)
{ {
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
pHTInfo->IOTRaFunc &= HT_IOT_RAFUNC_DISABLE_ALL; pHTInfo->IOTRaFunc &= HT_IOT_RAFUNC_DISABLE_ALL;
@ -532,52 +435,6 @@ void HTIOTActDetermineRaFunc(struct rtllib_device *ieee, bool bPeerRx2ss)
} }
u8 HTIOTActIsDisableTx40MHz(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
return retValue;
}
u8 HTIOTActIsTxNoAggregation(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
return retValue;
}
u8 HTIOTActIsDisableTx2SS(struct rtllib_device *ieee,
struct rtllib_network *network)
{
u8 retValue = 0;
return retValue;
}
bool HTIOCActIsDisableCckRate(struct rtllib_device *ieee,
struct rtllib_network *network)
{
bool retValue = false;
return retValue;
}
bool HTIOCActAllowPeerAggOnePacket(struct rtllib_device *ieee,
struct rtllib_network *network)
{
bool retValue = false;
return retValue;
}
bool HTIOTActIsNullDataPowerSaving(struct rtllib_device *ieee,
struct rtllib_network *network)
{
bool retValue = false;
return retValue;
}
void HTResetIOTSetting(struct rt_hi_throughput *pHTInfo) void HTResetIOTSetting(struct rt_hi_throughput *pHTInfo)
{ {
pHTInfo->IOTAction = 0; pHTInfo->IOTAction = 0;
@ -735,7 +592,7 @@ void HTConstructRT2RTAggElement(struct rtllib_device *ieee, u8 *posRT2RTAgg,
return; return;
} }
u8 HT_PickMCSRate(struct rtllib_device *ieee, u8 *pOperateMCS) static u8 HT_PickMCSRate(struct rtllib_device *ieee, u8 *pOperateMCS)
{ {
u8 i; u8 i;
if (pOperateMCS == NULL) { if (pOperateMCS == NULL) {
@ -1148,7 +1005,7 @@ u8 HTCCheck(struct rtllib_device *ieee, u8 *pFrame)
return false; return false;
} }
void HTSetConnectBwModeCallback(struct rtllib_device *ieee) static void HTSetConnectBwModeCallback(struct rtllib_device *ieee)
{ {
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;

View File

@ -20,15 +20,15 @@
#include <linux/etherdevice.h> #include <linux/etherdevice.h>
#include "rtl819x_TS.h" #include "rtl819x_TS.h"
void TsSetupTimeOut(unsigned long data) static void TsSetupTimeOut(unsigned long data)
{ {
} }
void TsInactTimeout(unsigned long data) static void TsInactTimeout(unsigned long data)
{ {
} }
void RxPktPendingTimeout(unsigned long data) static void RxPktPendingTimeout(unsigned long data)
{ {
struct rx_ts_record *pRxTs = (struct rx_ts_record *)data; struct rx_ts_record *pRxTs = (struct rx_ts_record *)data;
struct rtllib_device *ieee = container_of(pRxTs, struct rtllib_device, struct rtllib_device *ieee = container_of(pRxTs, struct rtllib_device,
@ -97,7 +97,7 @@ void RxPktPendingTimeout(unsigned long data)
spin_unlock_irqrestore(&(ieee->reorder_spinlock), flags); spin_unlock_irqrestore(&(ieee->reorder_spinlock), flags);
} }
void TsAddBaProcess(unsigned long data) static void TsAddBaProcess(unsigned long data)
{ {
struct tx_ts_record *pTxTs = (struct tx_ts_record *)data; struct tx_ts_record *pTxTs = (struct tx_ts_record *)data;
u8 num = pTxTs->num; u8 num = pTxTs->num;
@ -109,7 +109,7 @@ void TsAddBaProcess(unsigned long data)
"started!!\n"); "started!!\n");
} }
void ResetTsCommonInfo(struct ts_common_info *pTsCommonInfo) static void ResetTsCommonInfo(struct ts_common_info *pTsCommonInfo)
{ {
memset(pTsCommonInfo->Addr, 0, 6); memset(pTsCommonInfo->Addr, 0, 6);
memset(&pTsCommonInfo->TSpec, 0, sizeof(union tspec_body)); memset(&pTsCommonInfo->TSpec, 0, sizeof(union tspec_body));
@ -118,7 +118,7 @@ void ResetTsCommonInfo(struct ts_common_info *pTsCommonInfo)
pTsCommonInfo->TClasNum = 0; pTsCommonInfo->TClasNum = 0;
} }
void ResetTxTsEntry(struct tx_ts_record *pTS) static void ResetTxTsEntry(struct tx_ts_record *pTS)
{ {
ResetTsCommonInfo(&pTS->TsCommonInfo); ResetTsCommonInfo(&pTS->TsCommonInfo);
pTS->TxCurSeq = 0; pTS->TxCurSeq = 0;
@ -130,7 +130,7 @@ void ResetTxTsEntry(struct tx_ts_record *pTS)
ResetBaEntry(&pTS->TxPendingBARecord); ResetBaEntry(&pTS->TxPendingBARecord);
} }
void ResetRxTsEntry(struct rx_ts_record *pTS) static void ResetRxTsEntry(struct rx_ts_record *pTS)
{ {
ResetTsCommonInfo(&pTS->TsCommonInfo); ResetTsCommonInfo(&pTS->TsCommonInfo);
pTS->RxIndicateSeq = 0xffff; pTS->RxIndicateSeq = 0xffff;
@ -215,8 +215,8 @@ void TSInitialize(struct rtllib_device *ieee)
} }
void AdmitTS(struct rtllib_device *ieee, struct ts_common_info *pTsCommonInfo, static void AdmitTS(struct rtllib_device *ieee,
u32 InactTime) struct ts_common_info *pTsCommonInfo, u32 InactTime)
{ {
del_timer_sync(&pTsCommonInfo->SetupTimer); del_timer_sync(&pTsCommonInfo->SetupTimer);
del_timer_sync(&pTsCommonInfo->InactTimer); del_timer_sync(&pTsCommonInfo->InactTimer);
@ -226,11 +226,12 @@ void AdmitTS(struct rtllib_device *ieee, struct ts_common_info *pTsCommonInfo,
MSECS(InactTime)); MSECS(InactTime));
} }
struct ts_common_info *SearchAdmitTRStream(struct rtllib_device *ieee, u8 *Addr, static struct ts_common_info *SearchAdmitTRStream(struct rtllib_device *ieee,
u8 TID, enum tr_select TxRxSelect) u8 *Addr, u8 TID,
enum tr_select TxRxSelect)
{ {
u8 dir; u8 dir;
bool search_dir[4] = {0, 0, 0, 0}; bool search_dir[4] = {0};
struct list_head *psearch_list; struct list_head *psearch_list;
struct ts_common_info *pRet = NULL; struct ts_common_info *pRet = NULL;
if (ieee->iw_mode == IW_MODE_MASTER) { if (ieee->iw_mode == IW_MODE_MASTER) {
@ -283,9 +284,9 @@ struct ts_common_info *SearchAdmitTRStream(struct rtllib_device *ieee, u8 *Addr,
return NULL; return NULL;
} }
void MakeTSEntry(struct ts_common_info *pTsCommonInfo, u8 *Addr, static void MakeTSEntry(struct ts_common_info *pTsCommonInfo, u8 *Addr,
union tspec_body *pTSPEC, union qos_tclas *pTCLAS, union tspec_body *pTSPEC, union qos_tclas *pTCLAS,
u8 TCLAS_Num, u8 TCLAS_Proc) u8 TCLAS_Num, u8 TCLAS_Proc)
{ {
u8 count; u8 count;
@ -418,8 +419,8 @@ bool GetTs(struct rtllib_device *ieee, struct ts_common_info **ppTS,
} }
} }
void RemoveTsEntry(struct rtllib_device *ieee, struct ts_common_info *pTs, static void RemoveTsEntry(struct rtllib_device *ieee, struct ts_common_info *pTs,
enum tr_select TxRxSelect) enum tr_select TxRxSelect)
{ {
del_timer_sync(&pTs->SetupTimer); del_timer_sync(&pTs->SetupTimer);
del_timer_sync(&pTs->InactTimer); del_timer_sync(&pTs->InactTimer);

View File

@ -53,7 +53,7 @@ struct rtllib_ccmp_data {
u8 rx_b0[AES_BLOCK_LEN], rx_b[AES_BLOCK_LEN], rx_a[AES_BLOCK_LEN]; u8 rx_b0[AES_BLOCK_LEN], rx_b[AES_BLOCK_LEN], rx_a[AES_BLOCK_LEN];
}; };
void rtllib_ccmp_aes_encrypt(struct crypto_tfm *tfm, static void rtllib_ccmp_aes_encrypt(struct crypto_tfm *tfm,
const u8 pt[16], u8 ct[16]) const u8 pt[16], u8 ct[16])
{ {
crypto_cipher_encrypt_one((void *)tfm, ct, pt); crypto_cipher_encrypt_one((void *)tfm, ct, pt);

View File

@ -68,7 +68,7 @@ static inline int rtllib_networks_allocate(struct rtllib_device *ieee)
if (ieee->networks) if (ieee->networks)
return 0; return 0;
ieee->networks = kmalloc( ieee->networks = kzalloc(
MAX_NETWORK_COUNT * sizeof(struct rtllib_network), MAX_NETWORK_COUNT * sizeof(struct rtllib_network),
GFP_KERNEL); GFP_KERNEL);
if (!ieee->networks) { if (!ieee->networks) {
@ -77,9 +77,6 @@ static inline int rtllib_networks_allocate(struct rtllib_device *ieee)
return -ENOMEM; return -ENOMEM;
} }
memset(ieee->networks, 0,
MAX_NETWORK_COUNT * sizeof(struct rtllib_network));
return 0; return 0;
} }
@ -223,7 +220,7 @@ u32 rtllib_debug_level;
static int debug = \ static int debug = \
RTLLIB_DL_ERR RTLLIB_DL_ERR
; ;
struct proc_dir_entry *rtllib_proc; static struct proc_dir_entry *rtllib_proc;
static int show_debug_level(char *page, char **start, off_t offset, static int show_debug_level(char *page, char **start, off_t offset,
int count, int *eof, void *data) int count, int *eof, void *data)
@ -231,7 +228,7 @@ static int show_debug_level(char *page, char **start, off_t offset,
return snprintf(page, count, "0x%08X\n", rtllib_debug_level); return snprintf(page, count, "0x%08X\n", rtllib_debug_level);
} }
static int store_debug_level(struct file *file, const char *buffer, static int store_debug_level(struct file *file, const char __user *buffer,
unsigned long count, void *data) unsigned long count, void *data)
{ {
char buf[] = "0x00000000"; char buf[] = "0x00000000";

View File

@ -23,15 +23,6 @@
#include <linux/uaccess.h> #include <linux/uaccess.h>
#include "dot11d.h" #include "dot11d.h"
u8 rsn_authen_cipher_suite[16][4] = {
{0x00, 0x0F, 0xAC, 0x00},
{0x00, 0x0F, 0xAC, 0x01},
{0x00, 0x0F, 0xAC, 0x02},
{0x00, 0x0F, 0xAC, 0x03},
{0x00, 0x0F, 0xAC, 0x04},
{0x00, 0x0F, 0xAC, 0x05},
};
short rtllib_is_54g(struct rtllib_network *net) short rtllib_is_54g(struct rtllib_network *net)
{ {
return (net->rates_ex_len > 0) || (net->rates_len > 4); return (net->rates_ex_len > 0) || (net->rates_len > 4);
@ -46,7 +37,7 @@ short rtllib_is_shortslot(struct rtllib_network net)
* tag and the EXTENDED RATE MFIE tag if needed. * tag and the EXTENDED RATE MFIE tag if needed.
* It encludes two bytes per tag for the tag itself and its len * It encludes two bytes per tag for the tag itself and its len
*/ */
unsigned int rtllib_MFIE_rate_len(struct rtllib_device *ieee) static unsigned int rtllib_MFIE_rate_len(struct rtllib_device *ieee)
{ {
unsigned int rate_len = 0; unsigned int rate_len = 0;
@ -64,7 +55,7 @@ unsigned int rtllib_MFIE_rate_len(struct rtllib_device *ieee)
* Then it updates the pointer so that * Then it updates the pointer so that
* it points after the new MFIE tag added. * it points after the new MFIE tag added.
*/ */
void rtllib_MFIE_Brate(struct rtllib_device *ieee, u8 **tag_p) static void rtllib_MFIE_Brate(struct rtllib_device *ieee, u8 **tag_p)
{ {
u8 *tag = *tag_p; u8 *tag = *tag_p;
@ -82,7 +73,7 @@ void rtllib_MFIE_Brate(struct rtllib_device *ieee, u8 **tag_p)
*tag_p = tag; *tag_p = tag;
} }
void rtllib_MFIE_Grate(struct rtllib_device *ieee, u8 **tag_p) static void rtllib_MFIE_Grate(struct rtllib_device *ieee, u8 **tag_p)
{ {
u8 *tag = *tag_p; u8 *tag = *tag_p;
@ -103,7 +94,7 @@ void rtllib_MFIE_Grate(struct rtllib_device *ieee, u8 **tag_p)
*tag_p = tag; *tag_p = tag;
} }
void rtllib_WMM_Info(struct rtllib_device *ieee, u8 **tag_p) static void rtllib_WMM_Info(struct rtllib_device *ieee, u8 **tag_p)
{ {
u8 *tag = *tag_p; u8 *tag = *tag_p;
@ -137,7 +128,7 @@ void rtllib_TURBO_Info(struct rtllib_device *ieee, u8 **tag_p)
printk(KERN_ALERT "This is enable turbo mode IE process\n"); printk(KERN_ALERT "This is enable turbo mode IE process\n");
} }
void enqueue_mgmt(struct rtllib_device *ieee, struct sk_buff *skb) static void enqueue_mgmt(struct rtllib_device *ieee, struct sk_buff *skb)
{ {
int nh; int nh;
nh = (ieee->mgmt_queue_head + 1) % MGMT_QUEUE_NUM; nh = (ieee->mgmt_queue_head + 1) % MGMT_QUEUE_NUM;
@ -154,7 +145,7 @@ void enqueue_mgmt(struct rtllib_device *ieee, struct sk_buff *skb)
} }
struct sk_buff *dequeue_mgmt(struct rtllib_device *ieee) static struct sk_buff *dequeue_mgmt(struct rtllib_device *ieee)
{ {
struct sk_buff *ret; struct sk_buff *ret;
@ -169,7 +160,7 @@ struct sk_buff *dequeue_mgmt(struct rtllib_device *ieee)
return ret; return ret;
} }
void init_mgmt_queue(struct rtllib_device *ieee) static void init_mgmt_queue(struct rtllib_device *ieee)
{ {
ieee->mgmt_queue_tail = ieee->mgmt_queue_head = 0; ieee->mgmt_queue_tail = ieee->mgmt_queue_head = 0;
} }
@ -394,7 +385,7 @@ inline struct sk_buff *rtllib_probe_req(struct rtllib_device *ieee)
struct sk_buff *rtllib_get_beacon_(struct rtllib_device *ieee); struct sk_buff *rtllib_get_beacon_(struct rtllib_device *ieee);
void rtllib_send_beacon(struct rtllib_device *ieee) static void rtllib_send_beacon(struct rtllib_device *ieee)
{ {
struct sk_buff *skb; struct sk_buff *skb;
if (!ieee->ieee_up) if (!ieee->ieee_up)
@ -412,7 +403,7 @@ void rtllib_send_beacon(struct rtllib_device *ieee)
} }
void rtllib_send_beacon_cb(unsigned long _ieee) static void rtllib_send_beacon_cb(unsigned long _ieee)
{ {
struct rtllib_device *ieee = struct rtllib_device *ieee =
(struct rtllib_device *) _ieee; (struct rtllib_device *) _ieee;
@ -500,7 +491,7 @@ void rtllib_DisableIntelPromiscuousMode(struct net_device *dev,
ieee->bNetPromiscuousMode = false; ieee->bNetPromiscuousMode = false;
} }
void rtllib_send_probe(struct rtllib_device *ieee, u8 is_mesh) static void rtllib_send_probe(struct rtllib_device *ieee, u8 is_mesh)
{ {
struct sk_buff *skb; struct sk_buff *skb;
skb = rtllib_probe_req(ieee); skb = rtllib_probe_req(ieee);
@ -520,7 +511,7 @@ void rtllib_send_probe_requests(struct rtllib_device *ieee, u8 is_mesh)
} }
} }
void rtllib_softmac_hint11d_wq(void *data) static void rtllib_softmac_hint11d_wq(void *data)
{ {
} }
@ -602,7 +593,7 @@ out:
wireless_send_event(ieee->dev, SIOCGIWSCAN, &wrqu, NULL); wireless_send_event(ieee->dev, SIOCGIWSCAN, &wrqu, NULL);
} }
void rtllib_softmac_scan_wq(void *data) static void rtllib_softmac_scan_wq(void *data)
{ {
struct rtllib_device *ieee = container_of_dwork_rsl(data, struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, softmac_scan_wq); struct rtllib_device, softmac_scan_wq);
@ -662,7 +653,7 @@ out1:
void rtllib_beacons_start(struct rtllib_device *ieee) static void rtllib_beacons_start(struct rtllib_device *ieee)
{ {
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&ieee->beacon_lock, flags); spin_lock_irqsave(&ieee->beacon_lock, flags);
@ -673,7 +664,7 @@ void rtllib_beacons_start(struct rtllib_device *ieee)
spin_unlock_irqrestore(&ieee->beacon_lock, flags); spin_unlock_irqrestore(&ieee->beacon_lock, flags);
} }
void rtllib_beacons_stop(struct rtllib_device *ieee) static void rtllib_beacons_stop(struct rtllib_device *ieee)
{ {
unsigned long flags; unsigned long flags;
@ -705,7 +696,7 @@ void rtllib_start_send_beacons(struct rtllib_device *ieee)
} }
void rtllib_softmac_stop_scan(struct rtllib_device *ieee) static void rtllib_softmac_stop_scan(struct rtllib_device *ieee)
{ {
down(&ieee->scan_sem); down(&ieee->scan_sem);
ieee->scan_watch_dog = 0; ieee->scan_watch_dog = 0;
@ -752,7 +743,7 @@ bool rtllib_act_scanning(struct rtllib_device *ieee, bool sync_scan)
} }
/* called with ieee->lock held */ /* called with ieee->lock held */
void rtllib_start_scan(struct rtllib_device *ieee) static void rtllib_start_scan(struct rtllib_device *ieee)
{ {
RT_TRACE(COMP_DBG, "===>%s()\n", __func__); RT_TRACE(COMP_DBG, "===>%s()\n", __func__);
if (ieee->rtllib_ips_leave_wq != NULL) if (ieee->rtllib_ips_leave_wq != NULL)
@ -831,24 +822,6 @@ inline struct sk_buff *rtllib_authentication_req(struct rtllib_network *beacon,
return skb; return skb;
} }
void constructWMMIE(u8 *wmmie, u8 *wmm_len, u8 oui_subtype)
{
u8 szQoSOUI[] = {221, 0, 0x00, 0x50, 0xf2, 0x02, 0, 1};
if (oui_subtype == OUI_SUBTYPE_QOS_CAPABI) {
szQoSOUI[0] = 46;
szQoSOUI[1] = *wmm_len;
memcpy(wmmie, szQoSOUI, 3);
*wmm_len = 3;
} else {
szQoSOUI[1] = *wmm_len + 6;
szQoSOUI[6] = oui_subtype;
memcpy(wmmie, szQoSOUI, 8);
*(wmmie+8) = 0;
*wmm_len = 9;
}
}
static struct sk_buff *rtllib_probe_resp(struct rtllib_device *ieee, u8 *dest) static struct sk_buff *rtllib_probe_resp(struct rtllib_device *ieee, u8 *dest)
{ {
u8 *tag; u8 *tag;
@ -998,7 +971,7 @@ static struct sk_buff *rtllib_probe_resp(struct rtllib_device *ieee, u8 *dest)
return skb; return skb;
} }
struct sk_buff *rtllib_assoc_resp(struct rtllib_device *ieee, u8 *dest) static struct sk_buff *rtllib_assoc_resp(struct rtllib_device *ieee, u8 *dest)
{ {
struct sk_buff *skb; struct sk_buff *skb;
u8 *tag; u8 *tag;
@ -1057,7 +1030,7 @@ struct sk_buff *rtllib_assoc_resp(struct rtllib_device *ieee, u8 *dest)
return skb; return skb;
} }
struct sk_buff *rtllib_auth_resp(struct rtllib_device *ieee, int status, static struct sk_buff *rtllib_auth_resp(struct rtllib_device *ieee, int status,
u8 *dest) u8 *dest)
{ {
struct sk_buff *skb = NULL; struct sk_buff *skb = NULL;
@ -1087,7 +1060,7 @@ struct sk_buff *rtllib_auth_resp(struct rtllib_device *ieee, int status,
} }
struct sk_buff *rtllib_null_func(struct rtllib_device *ieee, short pwr) static struct sk_buff *rtllib_null_func(struct rtllib_device *ieee, short pwr)
{ {
struct sk_buff *skb; struct sk_buff *skb;
struct rtllib_hdr_3addr *hdr; struct rtllib_hdr_3addr *hdr;
@ -1114,7 +1087,7 @@ struct sk_buff *rtllib_null_func(struct rtllib_device *ieee, short pwr)
} }
struct sk_buff *rtllib_pspoll_func(struct rtllib_device *ieee) static struct sk_buff *rtllib_pspoll_func(struct rtllib_device *ieee)
{ {
struct sk_buff *skb; struct sk_buff *skb;
struct rtllib_pspoll_hdr *hdr; struct rtllib_pspoll_hdr *hdr;
@ -1139,7 +1112,7 @@ struct sk_buff *rtllib_pspoll_func(struct rtllib_device *ieee)
} }
void rtllib_resp_to_assoc_rq(struct rtllib_device *ieee, u8 *dest) static void rtllib_resp_to_assoc_rq(struct rtllib_device *ieee, u8 *dest)
{ {
struct sk_buff *buf = rtllib_assoc_resp(ieee, dest); struct sk_buff *buf = rtllib_assoc_resp(ieee, dest);
@ -1148,7 +1121,7 @@ void rtllib_resp_to_assoc_rq(struct rtllib_device *ieee, u8 *dest)
} }
void rtllib_resp_to_auth(struct rtllib_device *ieee, int s, u8 *dest) static void rtllib_resp_to_auth(struct rtllib_device *ieee, int s, u8 *dest)
{ {
struct sk_buff *buf = rtllib_auth_resp(ieee, s, dest); struct sk_buff *buf = rtllib_auth_resp(ieee, s, dest);
@ -1157,7 +1130,7 @@ void rtllib_resp_to_auth(struct rtllib_device *ieee, int s, u8 *dest)
} }
void rtllib_resp_to_probe(struct rtllib_device *ieee, u8 *dest) static void rtllib_resp_to_probe(struct rtllib_device *ieee, u8 *dest)
{ {
struct sk_buff *buf = rtllib_probe_resp(ieee, dest); struct sk_buff *buf = rtllib_probe_resp(ieee, dest);
@ -1466,12 +1439,12 @@ void rtllib_associate_abort(struct rtllib_device *ieee)
spin_unlock_irqrestore(&ieee->lock, flags); spin_unlock_irqrestore(&ieee->lock, flags);
} }
void rtllib_associate_abort_cb(unsigned long dev) static void rtllib_associate_abort_cb(unsigned long dev)
{ {
rtllib_associate_abort((struct rtllib_device *) dev); rtllib_associate_abort((struct rtllib_device *) dev);
} }
void rtllib_associate_step1(struct rtllib_device *ieee, u8 * daddr) static void rtllib_associate_step1(struct rtllib_device *ieee, u8 * daddr)
{ {
struct rtllib_network *beacon = &ieee->current_network; struct rtllib_network *beacon = &ieee->current_network;
struct sk_buff *skb; struct sk_buff *skb;
@ -1495,7 +1468,7 @@ void rtllib_associate_step1(struct rtllib_device *ieee, u8 * daddr)
} }
} }
void rtllib_auth_challenge(struct rtllib_device *ieee, u8 *challenge, int chlen) static void rtllib_auth_challenge(struct rtllib_device *ieee, u8 *challenge, int chlen)
{ {
u8 *c; u8 *c;
struct sk_buff *skb; struct sk_buff *skb;
@ -1526,7 +1499,7 @@ void rtllib_auth_challenge(struct rtllib_device *ieee, u8 *challenge, int chlen)
kfree(challenge); kfree(challenge);
} }
void rtllib_associate_step2(struct rtllib_device *ieee) static void rtllib_associate_step2(struct rtllib_device *ieee)
{ {
struct sk_buff *skb; struct sk_buff *skb;
struct rtllib_network *beacon = &ieee->current_network; struct rtllib_network *beacon = &ieee->current_network;
@ -1546,7 +1519,7 @@ void rtllib_associate_step2(struct rtllib_device *ieee)
} }
#define CANCELLED 2 #define CANCELLED 2
void rtllib_associate_complete_wq(void *data) static void rtllib_associate_complete_wq(void *data)
{ {
struct rtllib_device *ieee = (struct rtllib_device *) struct rtllib_device *ieee = (struct rtllib_device *)
container_of_work_rsl(data, container_of_work_rsl(data,
@ -1606,7 +1579,7 @@ static void rtllib_sta_send_associnfo(struct rtllib_device *ieee)
{ {
} }
void rtllib_associate_complete(struct rtllib_device *ieee) static void rtllib_associate_complete(struct rtllib_device *ieee)
{ {
del_timer_sync(&ieee->associate_timer); del_timer_sync(&ieee->associate_timer);
@ -1616,7 +1589,7 @@ void rtllib_associate_complete(struct rtllib_device *ieee)
queue_work_rsl(ieee->wq, &ieee->associate_complete_wq); queue_work_rsl(ieee->wq, &ieee->associate_complete_wq);
} }
void rtllib_associate_procedure_wq(void *data) static void rtllib_associate_procedure_wq(void *data)
{ {
struct rtllib_device *ieee = container_of_dwork_rsl(data, struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, struct rtllib_device,
@ -1828,7 +1801,7 @@ static inline u16 auth_parse(struct sk_buff *skb, u8** challenge, int *chlen)
return cpu_to_le16(a->status); return cpu_to_le16(a->status);
} }
int auth_rq_parse(struct sk_buff *skb, u8 *dest) static int auth_rq_parse(struct sk_buff *skb, u8 *dest)
{ {
struct rtllib_authentication *a; struct rtllib_authentication *a;
@ -1894,7 +1867,7 @@ static short probe_rq_parse(struct rtllib_device *ieee, struct sk_buff *skb,
return !strncmp(ssid, ieee->current_network.ssid, ssidlen); return !strncmp(ssid, ieee->current_network.ssid, ssidlen);
} }
int assoc_rq_parse(struct sk_buff *skb, u8 *dest) static int assoc_rq_parse(struct sk_buff *skb, u8 *dest)
{ {
struct rtllib_assoc_request_frame *a; struct rtllib_assoc_request_frame *a;
@ -2075,7 +2048,7 @@ static short rtllib_sta_ps_sleep(struct rtllib_device *ieee, u64 *time)
} }
inline void rtllib_sta_ps(struct rtllib_device *ieee) static inline void rtllib_sta_ps(struct rtllib_device *ieee)
{ {
u64 time; u64 time;
short sleep; short sleep;
@ -2196,7 +2169,7 @@ void rtllib_ps_tx_ack(struct rtllib_device *ieee, short success)
spin_unlock_irqrestore(&ieee->lock, flags); spin_unlock_irqrestore(&ieee->lock, flags);
} }
void rtllib_process_action(struct rtllib_device *ieee, struct sk_buff *skb) static void rtllib_process_action(struct rtllib_device *ieee, struct sk_buff *skb)
{ {
struct rtllib_hdr_3addr *header = (struct rtllib_hdr_3addr *) skb->data; struct rtllib_hdr_3addr *header = (struct rtllib_hdr_3addr *) skb->data;
u8 *act = rtllib_get_payload((struct rtllib_hdr *)header); u8 *act = rtllib_get_payload((struct rtllib_hdr *)header);
@ -2530,7 +2503,7 @@ void rtllib_softmac_xmit(struct rtllib_txb *txb, struct rtllib_device *ieee)
} }
/* called with ieee->lock acquired */ /* called with ieee->lock acquired */
void rtllib_resume_tx(struct rtllib_device *ieee) static void rtllib_resume_tx(struct rtllib_device *ieee)
{ {
int i; int i;
for (i = ieee->tx_pending.frag; i < ieee->tx_pending.txb->nr_frags; for (i = ieee->tx_pending.frag; i < ieee->tx_pending.txb->nr_frags;
@ -2675,7 +2648,7 @@ void rtllib_start_master_bss(struct rtllib_device *ieee)
netif_carrier_on(ieee->dev); netif_carrier_on(ieee->dev);
} }
void rtllib_start_monitor_mode(struct rtllib_device *ieee) static void rtllib_start_monitor_mode(struct rtllib_device *ieee)
{ {
/* reset hardware status */ /* reset hardware status */
if (ieee->raw_tx) { if (ieee->raw_tx) {
@ -2686,7 +2659,7 @@ void rtllib_start_monitor_mode(struct rtllib_device *ieee)
} }
} }
void rtllib_start_ibss_wq(void *data) static void rtllib_start_ibss_wq(void *data)
{ {
struct rtllib_device *ieee = container_of_dwork_rsl(data, struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, start_ibss_wq); struct rtllib_device, start_ibss_wq);
@ -2850,7 +2823,7 @@ void rtllib_start_bss(struct rtllib_device *ieee)
spin_unlock_irqrestore(&ieee->lock, flags); spin_unlock_irqrestore(&ieee->lock, flags);
} }
void rtllib_link_change_wq(void *data) static void rtllib_link_change_wq(void *data)
{ {
struct rtllib_device *ieee = container_of_dwork_rsl(data, struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, link_change_wq); struct rtllib_device, link_change_wq);
@ -2876,7 +2849,7 @@ void rtllib_disassociate(struct rtllib_device *ieee)
notify_wx_assoc_event(ieee); notify_wx_assoc_event(ieee);
} }
void rtllib_associate_retry_wq(void *data) static void rtllib_associate_retry_wq(void *data)
{ {
struct rtllib_device *ieee = container_of_dwork_rsl(data, struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, associate_retry_wq); struct rtllib_device, associate_retry_wq);
@ -3194,8 +3167,8 @@ static int rtllib_wpa_enable(struct rtllib_device *ieee, int value)
} }
void rtllib_wpa_assoc_frame(struct rtllib_device *ieee, char *wpa_ie, static void rtllib_wpa_assoc_frame(struct rtllib_device *ieee, char *wpa_ie,
int wpa_ie_len) int wpa_ie_len)
{ {
/* make sure WPA is enabled */ /* make sure WPA is enabled */
rtllib_wpa_enable(ieee, 1); rtllib_wpa_enable(ieee, 1);
@ -3698,7 +3671,7 @@ void rtllib_MlmeDisassociateRequest(struct rtllib_device *rtllib, u8 *asSta,
RemovePeerTS(rtllib, asSta); RemovePeerTS(rtllib, asSta);
if (memcpy(rtllib->current_network.bssid, asSta, 6) == 0) { if (memcpy(rtllib->current_network.bssid, asSta, 6) == NULL) {
rtllib->state = RTLLIB_NOLINK; rtllib->state = RTLLIB_NOLINK;
for (i = 0; i < 6; i++) for (i = 0; i < 6; i++)

View File

@ -220,8 +220,8 @@ void rtllib_txb_free(struct rtllib_txb *txb)
kfree(txb); kfree(txb);
} }
struct rtllib_txb *rtllib_alloc_txb(int nr_frags, int txb_size, static struct rtllib_txb *rtllib_alloc_txb(int nr_frags, int txb_size,
int gfp_mask) gfp_t gfp_mask)
{ {
struct rtllib_txb *txb; struct rtllib_txb *txb;
int i; int i;
@ -251,8 +251,7 @@ struct rtllib_txb *rtllib_alloc_txb(int nr_frags, int txb_size,
return txb; return txb;
} }
int static int rtllib_classify(struct sk_buff *skb, u8 bIsAmsdu)
rtllib_classify(struct sk_buff *skb, u8 bIsAmsdu)
{ {
struct ethhdr *eth; struct ethhdr *eth;
struct iphdr *ip; struct iphdr *ip;
@ -283,8 +282,9 @@ rtllib_classify(struct sk_buff *skb, u8 bIsAmsdu)
} }
} }
void rtllib_tx_query_agg_cap(struct rtllib_device *ieee, struct sk_buff *skb, static void rtllib_tx_query_agg_cap(struct rtllib_device *ieee,
struct cb_desc *tcb_desc) struct sk_buff *skb,
struct cb_desc *tcb_desc)
{ {
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
struct tx_ts_record *pTxTs = NULL; struct tx_ts_record *pTxTs = NULL;
@ -358,7 +358,7 @@ FORCED_AGG_SETTING:
return; return;
} }
extern void rtllib_qurey_ShortPreambleMode(struct rtllib_device *ieee, static void rtllib_qurey_ShortPreambleMode(struct rtllib_device *ieee,
struct cb_desc *tcb_desc) struct cb_desc *tcb_desc)
{ {
tcb_desc->bUseShortPreamble = false; tcb_desc->bUseShortPreamble = false;
@ -370,7 +370,7 @@ extern void rtllib_qurey_ShortPreambleMode(struct rtllib_device *ieee,
return; return;
} }
extern void rtllib_query_HTCapShortGI(struct rtllib_device *ieee, static void rtllib_query_HTCapShortGI(struct rtllib_device *ieee,
struct cb_desc *tcb_desc) struct cb_desc *tcb_desc)
{ {
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
@ -391,8 +391,8 @@ extern void rtllib_query_HTCapShortGI(struct rtllib_device *ieee,
tcb_desc->bUseShortGI = true; tcb_desc->bUseShortGI = true;
} }
void rtllib_query_BandwidthMode(struct rtllib_device *ieee, static void rtllib_query_BandwidthMode(struct rtllib_device *ieee,
struct cb_desc *tcb_desc) struct cb_desc *tcb_desc)
{ {
struct rt_hi_throughput *pHTInfo = ieee->pHTInfo; struct rt_hi_throughput *pHTInfo = ieee->pHTInfo;
@ -412,8 +412,9 @@ void rtllib_query_BandwidthMode(struct rtllib_device *ieee,
return; return;
} }
void rtllib_query_protectionmode(struct rtllib_device *ieee, static void rtllib_query_protectionmode(struct rtllib_device *ieee,
struct cb_desc *tcb_desc, struct sk_buff *skb) struct cb_desc *tcb_desc,
struct sk_buff *skb)
{ {
tcb_desc->bRTSSTBC = false; tcb_desc->bRTSSTBC = false;
tcb_desc->bRTSUseShortGI = false; tcb_desc->bRTSUseShortGI = false;
@ -494,8 +495,8 @@ NO_PROTECTION:
} }
void rtllib_txrate_selectmode(struct rtllib_device *ieee, static void rtllib_txrate_selectmode(struct rtllib_device *ieee,
struct cb_desc *tcb_desc) struct cb_desc *tcb_desc)
{ {
if (ieee->bTxDisableRateFallBack) if (ieee->bTxDisableRateFallBack)
tcb_desc->bTxDisableRateFallBack = true; tcb_desc->bTxDisableRateFallBack = true;