aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/winbond
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/winbond')
-rw-r--r--drivers/staging/winbond/core.h4
-rw-r--r--drivers/staging/winbond/localpara.h1
-rw-r--r--drivers/staging/winbond/mds.c22
-rw-r--r--drivers/staging/winbond/mds_f.h6
-rw-r--r--drivers/staging/winbond/mds_s.h17
-rw-r--r--drivers/staging/winbond/mlmetxrx.c2
-rw-r--r--drivers/staging/winbond/mlmetxrx_f.h32
-rw-r--r--drivers/staging/winbond/mto.c26
-rw-r--r--drivers/staging/winbond/mto.h116
-rw-r--r--drivers/staging/winbond/wb35rx.c7
-rw-r--r--drivers/staging/winbond/wb35tx.c4
-rw-r--r--drivers/staging/winbond/wbhal_f.h2
-rw-r--r--drivers/staging/winbond/wbhal_s.h4
-rw-r--r--drivers/staging/winbond/wbusb.c5
14 files changed, 37 insertions, 211 deletions
diff --git a/drivers/staging/winbond/core.h b/drivers/staging/winbond/core.h
index eb4c090972c0..7d4bd5e8f69b 100644
--- a/drivers/staging/winbond/core.h
+++ b/drivers/staging/winbond/core.h
@@ -18,9 +18,9 @@ struct wbsoft_priv {
MLME_FRAME sMlmeFrame; // connect to peerSTA parameters
- MTO_PARAMETERS sMtoPara; // MTO_struct ...
+ struct wb35_mto_params sMtoPara; // MTO_struct ...
struct hw_data sHwData; //For HAL
- MDS Mds;
+ struct wb35_mds Mds;
spinlock_t SpinLock;
diff --git a/drivers/staging/winbond/localpara.h b/drivers/staging/winbond/localpara.h
index 607bb0526cf8..5626a76d69a4 100644
--- a/drivers/staging/winbond/localpara.h
+++ b/drivers/staging/winbond/localpara.h
@@ -190,7 +190,6 @@ typedef struct LOCAL_PARA
u8 Reserved0[2];
u8 boMsRadioOff; // Ndis demands to be true when set Disassoc. OID and be false when set SSID OID.
- u8 boAntennaDiversity; //TRUE/ON or FALSE/OFF
u8 bAntennaNo; //which antenna
u8 bConnectFlag; //the connect status flag for roaming task
diff --git a/drivers/staging/winbond/mds.c b/drivers/staging/winbond/mds.c
index 59d6d67a9f7e..37e0c185d113 100644
--- a/drivers/staging/winbond/mds.c
+++ b/drivers/staging/winbond/mds.c
@@ -8,7 +8,7 @@
unsigned char
Mds_initial(struct wbsoft_priv * adapter)
{
- PMDS pMds = &adapter->Mds;
+ struct wb35_mds *pMds = &adapter->Mds;
pMds->TxPause = false;
pMds->TxRTSThreshold = DEFAULT_RTSThreshold;
@@ -22,7 +22,7 @@ Mds_Destroy(struct wbsoft_priv * adapter)
{
}
-static void Mds_DurationSet(struct wbsoft_priv *adapter, PDESCRIPTOR pDes, u8 *buffer)
+static void Mds_DurationSet(struct wbsoft_priv *adapter, struct wb35_descriptor *pDes, u8 *buffer)
{
PT00_DESCRIPTOR pT00;
PT01_DESCRIPTOR pT01;
@@ -217,10 +217,10 @@ static void Mds_DurationSet(struct wbsoft_priv *adapter, PDESCRIPTOR pDes, u8
}
// The function return the 4n size of usb pk
-static u16 Mds_BodyCopy(struct wbsoft_priv *adapter, PDESCRIPTOR pDes, u8 *TargetBuffer)
+static u16 Mds_BodyCopy(struct wbsoft_priv *adapter, struct wb35_descriptor *pDes, u8 *TargetBuffer)
{
PT00_DESCRIPTOR pT00;
- PMDS pMds = &adapter->Mds;
+ struct wb35_mds *pMds = &adapter->Mds;
u8 *buffer;
u8 *src_buffer;
u8 *pctmp;
@@ -318,9 +318,9 @@ static u16 Mds_BodyCopy(struct wbsoft_priv *adapter, PDESCRIPTOR pDes, u8 *Targe
return Size;
}
-static void Mds_HeaderCopy(struct wbsoft_priv * adapter, PDESCRIPTOR pDes, u8 *TargetBuffer)
+static void Mds_HeaderCopy(struct wbsoft_priv * adapter, struct wb35_descriptor *pDes, u8 *TargetBuffer)
{
- PMDS pMds = &adapter->Mds;
+ struct wb35_mds *pMds = &adapter->Mds;
u8 *src_buffer = pDes->buffer_address[0];//931130.5.g
PT00_DESCRIPTOR pT00;
PT01_DESCRIPTOR pT01;
@@ -417,9 +417,9 @@ void
Mds_Tx(struct wbsoft_priv * adapter)
{
struct hw_data * pHwData = &adapter->sHwData;
- PMDS pMds = &adapter->Mds;
- DESCRIPTOR TxDes;
- PDESCRIPTOR pTxDes = &TxDes;
+ struct wb35_mds *pMds = &adapter->Mds;
+ struct wb35_descriptor TxDes;
+ struct wb35_descriptor *pTxDes = &TxDes;
u8 *XmitBufAddress;
u16 XmitBufSize, PacketSize, stmp, CurrentSize, FragmentThreshold;
u8 FillIndex, TxDesIndex, FragmentCount, FillCount;
@@ -470,7 +470,7 @@ Mds_Tx(struct wbsoft_priv * adapter)
BufferFilled = true;
/* Leaves first u8 intact */
- memset((u8 *)pTxDes + 1, 0, sizeof(DESCRIPTOR) - 1);
+ memset((u8 *)pTxDes + 1, 0, sizeof(struct wb35_descriptor) - 1);
TxDesIndex = pMds->TxDesIndex;//Get the current ID
pTxDes->Descriptor_ID = TxDesIndex;
@@ -552,7 +552,7 @@ Mds_Tx(struct wbsoft_priv * adapter)
void
Mds_SendComplete(struct wbsoft_priv * adapter, PT02_DESCRIPTOR pT02)
{
- PMDS pMds = &adapter->Mds;
+ struct wb35_mds *pMds = &adapter->Mds;
struct hw_data * pHwData = &adapter->sHwData;
u8 PacketId = (u8)pT02->T02_Tx_PktID;
unsigned char SendOK = true;
diff --git a/drivers/staging/winbond/mds_f.h b/drivers/staging/winbond/mds_f.h
index ee0f12093dba..ab1ea535f7db 100644
--- a/drivers/staging/winbond/mds_f.h
+++ b/drivers/staging/winbond/mds_f.h
@@ -8,7 +8,7 @@ unsigned char Mds_initial( struct wbsoft_priv *adapter );
void Mds_Destroy( struct wbsoft_priv *adapter );
void Mds_Tx( struct wbsoft_priv *adapter );
void Mds_SendComplete( struct wbsoft_priv *adapter, PT02_DESCRIPTOR pT02 );
-void Mds_MpduProcess( struct wbsoft_priv *adapter, PDESCRIPTOR pRxDes );
+void Mds_MpduProcess( struct wbsoft_priv *adapter, struct wb35_descriptor *pRxDes );
extern void DataDmp(u8 *pdata, u32 len, u32 offset);
// For Asynchronous indicating. The routine collocates with USB.
@@ -16,8 +16,8 @@ void Mds_MsduProcess( struct wbsoft_priv *adapter, PRXLAYER1 pRxLayer1, u8 Sl
// For data frame sending 20060802
u16 MDS_GetPacketSize( struct wbsoft_priv *adapter );
-void MDS_GetNextPacket( struct wbsoft_priv *adapter, PDESCRIPTOR pDes );
-void MDS_GetNextPacketComplete( struct wbsoft_priv *adapter, PDESCRIPTOR pDes );
+void MDS_GetNextPacket( struct wbsoft_priv *adapter, struct wb35_descriptor *pDes );
+void MDS_GetNextPacketComplete( struct wbsoft_priv *adapter, struct wb35_descriptor *pDes );
void MDS_SendResult( struct wbsoft_priv *adapter, u8 PacketId, unsigned char SendOK );
#endif
diff --git a/drivers/staging/winbond/mds_s.h b/drivers/staging/winbond/mds_s.h
index 9ffec1764d6d..e8e13bde4744 100644
--- a/drivers/staging/winbond/mds_s.h
+++ b/drivers/staging/winbond/mds_s.h
@@ -67,7 +67,6 @@ enum {
#define RX_BUF_SIZE 2352 // 600 // For 301 must be multiple of 8
#define MAX_RX_DESCRIPTORS 18 // Rx Layer 2
-#define MAX_BUFFER_QUEUE 8 // The value is always equal 8 due to NDIS_PACKET's MiniportReserved field size
// For brand-new rx system
@@ -79,8 +78,7 @@ enum {
#define PACKET_COME_FROM_MLME 0x80
#define PACKET_SEND_COMPLETE 0xff
-typedef struct _MDS
-{
+struct wb35_mds {
// For Tx usage
u8 TxOwner[ ((MAX_USB_TX_BUFFER_NUMBER + 3) & ~0x03) ];
u8 *pTxBuffer;
@@ -133,16 +131,7 @@ typedef struct _MDS
u32 TxTsc; // 20060214
u32 TxTsc_2; // 20060214
-} MDS, *PMDS;
-
-
-typedef struct _RxBuffer
-{
- u8 * pBufferAddress; // Pointer the received data buffer.
- u16 BufferSize;
- u8 RESERVED;
- u8 BufferIndex;// Only 1 byte
-} RXBUFFER, *PRXBUFFER;
+};
//
// Reveive Layer 1 Format.
@@ -162,8 +151,6 @@ typedef struct _RXLAYER1
u32 FirstFrameArrivedTime;
- RXBUFFER BufferQueue[ MAX_BUFFER_QUEUE ];
-
u8 LastFrameType; // 20061004 for fix intel 3945 's bug
u8 RESERVED[3]; //@@ anson
diff --git a/drivers/staging/winbond/mlmetxrx.c b/drivers/staging/winbond/mlmetxrx.c
index 643ceb060d56..f856b94a7810 100644
--- a/drivers/staging/winbond/mlmetxrx.c
+++ b/drivers/staging/winbond/mlmetxrx.c
@@ -45,7 +45,7 @@ u8 MLMESendFrame(struct wbsoft_priv * adapter, u8 *pMMPDU, u16 len, u8 DataType)
return true;
}
-void MLME_GetNextPacket(struct wbsoft_priv *adapter, PDESCRIPTOR desc)
+void MLME_GetNextPacket(struct wbsoft_priv *adapter, struct wb35_descriptor *desc)
{
desc->InternalUsed = desc->buffer_start_index + desc->buffer_number;
desc->InternalUsed %= MAX_DESCRIPTOR_BUFFER_INDEX;
diff --git a/drivers/staging/winbond/mlmetxrx_f.h b/drivers/staging/winbond/mlmetxrx_f.h
index 5f05a6e1cda0..6c04e3e03e31 100644
--- a/drivers/staging/winbond/mlmetxrx_f.h
+++ b/drivers/staging/winbond/mlmetxrx_f.h
@@ -10,36 +10,16 @@
#include "core.h"
-void
-MLMEProcThread(
- struct wbsoft_priv * adapter
- );
-
-void MLME_GetNextPacket( struct wbsoft_priv * adapter, PDESCRIPTOR pDes );
-u8 MLMESendFrame( struct wbsoft_priv * adapter,
- u8 *pMMPDU,
- u16 len,
- u8 DataType);
-
-void
-MLME_SendComplete( struct wbsoft_priv * adapter, u8 PacketID, unsigned char SendOK );
+void MLME_GetNextPacket(struct wbsoft_priv *adapter, struct wb35_descriptor *pDes);
+u8 MLMESendFrame(struct wbsoft_priv *adapter,
+ u8 * pMMPDU, u16 len, u8 DataType);
void
-MLMERcvFrame(
- struct wbsoft_priv * adapter,
- PRXBUFFER pRxBufferArray,
- u8 NumOfBuffer,
- u8 ReturnSlotIndex
- );
+MLME_SendComplete(struct wbsoft_priv *adapter, u8 PacketID,
+ unsigned char SendOK);
-void
-MLMEReturnPacket(
- struct wbsoft_priv * adapter,
- u8 * pRxBufer
- );
#ifdef _IBSS_BEACON_SEQ_STICK_
-s8 SendBCNullData(struct wbsoft_priv * adapter, u16 wIdx);
+s8 SendBCNullData(struct wbsoft_priv *adapter, u16 wIdx);
#endif
#endif
-
diff --git a/drivers/staging/winbond/mto.c b/drivers/staging/winbond/mto.c
index 7deb5c769763..5e7fa1cd0aea 100644
--- a/drivers/staging/winbond/mto.c
+++ b/drivers/staging/winbond/mto.c
@@ -76,23 +76,6 @@ void hal_get_dto_para(struct wbsoft_priv *adapter, char *buffer);
void MTO_Init(struct wbsoft_priv *adapter)
{
int i;
- //[WKCHEN]pMTOcore_data = pcore_data;
-// 20040510 Turbo add for global variable
- MTO_TMR_CNT() = 0;
- MTO_TOGGLE_STATE() = TOGGLE_STATE_IDLE;
- MTO_TX_RATE_REDUCTION_STATE() = RATE_CHGSTATE_IDLE;
- MTO_BACKOFF_TMR() = 0;
- MTO_LAST_RATE() = 11;
- MTO_CO_EFFICENT() = 0;
-
- //MTO_TH_FIXANT() = MTO_DEFAULT_TH_FIXANT;
- MTO_TH_CNT() = MTO_DEFAULT_TH_CNT;
- MTO_TH_SQ3() = MTO_DEFAULT_TH_SQ3;
- MTO_TH_IDLE_SLOT() = MTO_DEFAULT_TH_IDLE_SLOT;
- MTO_TH_PR_INTERF() = MTO_DEFAULT_TH_PR_INTERF;
-
- MTO_TMR_AGING() = MTO_DEFAULT_TMR_AGING;
- MTO_TMR_PERIODIC() = MTO_DEFAULT_TMR_PERIODIC;
//[WKCHEN]MTO_CCA_MODE_SETUP()= (u8) hal_get_cca_mode(MTO_HAL());
//[WKCHEN]MTO_CCA_MODE() = MTO_CCA_MODE_SETUP();
@@ -100,17 +83,12 @@ void MTO_Init(struct wbsoft_priv *adapter)
//MTO_PREAMBLE_TYPE() = MTO_PREAMBLE_LONG;
MTO_PREAMBLE_TYPE() = MTO_PREAMBLE_SHORT; // for test
- MTO_ANT_SEL() = hal_get_antenna_number(MTO_HAL());
- MTO_ANT_MAC() = MTO_ANT_SEL();
MTO_CNT_ANT(0) = 0;
MTO_CNT_ANT(1) = 0;
MTO_SQ_ANT(0) = 0;
MTO_SQ_ANT(1) = 0;
- MTO_ANT_DIVERSITY() = MTO_ANTENNA_DIVERSITY_ON;
- //CardSet_AntennaDiversity(adapter, MTO_ANT_DIVERSITY());
- //PLMESetAntennaDiversity( adapter, MTO_ANT_DIVERSITY());
- MTO_AGING_TIMEOUT() = 0;//MTO_TMR_AGING() / MTO_TMR_PERIODIC();
+ MTO_AGING_TIMEOUT() = 0;
// The following parameters should be initialized to the values set by user
//
@@ -128,9 +106,7 @@ void MTO_Init(struct wbsoft_priv *adapter)
MTO_FRAG_CHANGE_ENABLE() = 0; // 1.1.29.1000 Turbo add don't support frag
//The default valud of ANTDIV_DEFAULT_ON will be decided by EEPROM
//#ifdef ANTDIV_DEFAULT_ON
- //MTO_ANT_DIVERSITY_ENABLE() = 1;
//#else
- //MTO_ANT_DIVERSITY_ENABLE() = 0;
//#endif
MTO_POWER_CHANGE_ENABLE() = 1;
MTO_PREAMBLE_CHANGE_ENABLE()= 1;
diff --git a/drivers/staging/winbond/mto.h b/drivers/staging/winbond/mto.h
index 56f2465723b3..4fe24b0f2791 100644
--- a/drivers/staging/winbond/mto.h
+++ b/drivers/staging/winbond/mto.h
@@ -15,52 +15,18 @@
struct wbsoft_priv;
-#define MTO_DEFAULT_TH_CNT 5
-#define MTO_DEFAULT_TH_SQ3 112 //OLD IS 13 reference JohnXu
-#define MTO_DEFAULT_TH_IDLE_SLOT 15
-#define MTO_DEFAULT_TH_PR_INTERF 30
-#define MTO_DEFAULT_TMR_AGING 25 // unit: slot time 10 reference JohnXu
-#define MTO_DEFAULT_TMR_PERIODIC 5 // unit: slot time
-
-#define MTO_ANTENNA_DIVERSITY_OFF 0
-#define MTO_ANTENNA_DIVERSITY_ON 1
-
// LA20040210_DTO kevin
//#define MTO_PREAMBLE_LONG 0
//#define MTO_PREAMBLE_SHORT 1
#define MTO_PREAMBLE_LONG WLAN_PREAMBLE_TYPE_LONG
#define MTO_PREAMBLE_SHORT WLAN_PREAMBLE_TYPE_SHORT
-typedef enum {
- TOGGLE_STATE_IDLE = 0,
- TOGGLE_STATE_WAIT0 = 1,
- TOGGLE_STATE_WAIT1 = 2,
- TOGGLE_STATE_MAKEDESISION = 3,
- TOGGLE_STATE_BKOFF = 4
-} TOGGLE_STATE;
-
-typedef enum {
- RATE_CHGSTATE_IDLE = 0,
- RATE_CHGSTATE_CALCULATE = 1,
- RATE_CHGSTATE_BACKOFF = 2
-} TX_RATE_REDUCTION_STATE;
-
//============================================================================
// struct _MTOParameters --
//
// Defines the parameters used in the MAC Throughput Optimization algorithm
//============================================================================
-typedef struct _MTO_PARAMETERS
-{
- u8 Th_Fixant;
- u8 Th_Cnt;
- u8 Th_SQ3;
- u8 Th_IdleSlot;
-
- u16 Tmr_Aging;
- u8 Th_PrInterf;
- u8 Tmr_Periodic;
-
+struct wb35_mto_params {
//--------- wkchen added -------------
u32 TxFlowCount; //to judge what kind the tx flow(sparse or busy) is
//------------------------------------------------
@@ -84,9 +50,6 @@ typedef struct _MTO_PARAMETERS
u8 PowerChangeEnable;
u8 AntDiversityEnable;
- u8 Ant_mac;
- u8 Ant_div;
-
u8 CCA_Mode;
u8 CCA_Mode_Setup;
u8 Preamble_Type;
@@ -113,13 +76,6 @@ typedef struct _MTO_PARAMETERS
u32 SQ_Ant[2];
// 20040510 remove from globe vairable
- u32 TmrCnt;
- u32 BackoffTmr;
- TOGGLE_STATE ToggleState;
- TX_RATE_REDUCTION_STATE TxRateReductionState;
-
- u8 Last_Rate;
- u8 Co_efficent;
u8 FallbackRateLevel;
u8 OfdmRateLevel;
@@ -130,7 +86,7 @@ typedef struct _MTO_PARAMETERS
s32 RSSI_high;
s32 RSSI_low;
-} MTO_PARAMETERS, *PMTO_PARAMETERS;
+};
#define MTO_DATA() (adapter->sMtoPara)
@@ -141,26 +97,8 @@ typedef struct _MTO_PARAMETERS
#define LOCAL_ANTENNA_NO() (adapter->sLocalPara.bAntennaNo)
#define LOCAL_IS_CONNECTED() (adapter->sLocalPara.wConnectedSTAindex != 0)
#define MTO_INITTXRATE_MODE (adapter->sHwData.SoftwareSet&0x2) //bit 1
-// 20040510 Turbo add
-#define MTO_TMR_CNT() MTO_DATA().TmrCnt
-#define MTO_TOGGLE_STATE() MTO_DATA().ToggleState
-#define MTO_TX_RATE_REDUCTION_STATE() MTO_DATA().TxRateReductionState
-#define MTO_BACKOFF_TMR() MTO_DATA().BackoffTmr
-#define MTO_LAST_RATE() MTO_DATA().Last_Rate
-#define MTO_CO_EFFICENT() MTO_DATA().Co_efficent
-
-#define MTO_TH_CNT() MTO_DATA().Th_Cnt
-#define MTO_TH_SQ3() MTO_DATA().Th_SQ3
-#define MTO_TH_IDLE_SLOT() MTO_DATA().Th_IdleSlot
-#define MTO_TH_PR_INTERF() MTO_DATA().Th_PrInterf
-
-#define MTO_TMR_AGING() MTO_DATA().Tmr_Aging
-#define MTO_TMR_PERIODIC() MTO_DATA().Tmr_Periodic
#define MTO_POWER_CHANGE_ENABLE() MTO_DATA().PowerChangeEnable
-#define MTO_ANT_DIVERSITY_ENABLE() adapter->sLocalPara.boAntennaDiversity
-#define MTO_ANT_MAC() MTO_DATA().Ant_mac
-#define MTO_ANT_DIVERSITY() MTO_DATA().Ant_div
#define MTO_CCA_MODE() MTO_DATA().CCA_Mode
#define MTO_CCA_MODE_SETUP() MTO_DATA().CCA_Mode_Setup
#define MTO_PREAMBLE_TYPE() MTO_DATA().Preamble_Type
@@ -179,7 +117,6 @@ typedef struct _MTO_PARAMETERS
#define MTO_PR_INTERF() MTO_DATA().Pr_Interf
#define MTO_AVG_GAP_BTWN_INTERF() MTO_DATA().AvgGapBtwnInterf
-#define MTO_ANT_SEL() MTO_DATA().Ant_sel
#define MTO_CNT_ANT(x) MTO_DATA().Cnt_Ant[(x)]
#define MTO_SQ_ANT(x) MTO_DATA().SQ_Ant[(x)]
#define MTO_AGING_TIMEOUT() MTO_DATA().aging_timeout
@@ -209,55 +146,6 @@ typedef struct {
u8 tx_retry_rate;
} TXRETRY_REC;
-typedef struct _STATISTICS_INFO {
- u32 Rate54M;
- u32 Rate48M;
- u32 Rate36M;
- u32 Rate24M;
- u32 Rate18M;
- u32 Rate12M;
- u32 Rate9M;
- u32 Rate6M;
- u32 Rate11MS;
- u32 Rate11ML;
- u32 Rate55MS;
- u32 Rate55ML;
- u32 Rate2MS;
- u32 Rate2ML;
- u32 Rate1M;
- u32 Rate54MOK;
- u32 Rate48MOK;
- u32 Rate36MOK;
- u32 Rate24MOK;
- u32 Rate18MOK;
- u32 Rate12MOK;
- u32 Rate9MOK;
- u32 Rate6MOK;
- u32 Rate11MSOK;
- u32 Rate11MLOK;
- u32 Rate55MSOK;
- u32 Rate55MLOK;
- u32 Rate2MSOK;
- u32 Rate2MLOK;
- u32 Rate1MOK;
- u32 SQ3;
- s32 RSSIAVG;
- s32 RSSIMAX;
- s32 TXRATE;
- s32 TxRetryRate;
- s32 BSS_PK_CNT;
- s32 NIDLESLOT;
- s32 SLOT_CNT;
- s32 INTERF_CNT;
- s32 GAP_CNT;
- s32 DS_EVM;
- s32 RcvBeaconNum;
- s32 RXRATE;
- s32 RxBytes;
- s32 TxBytes;
- s32 Antenna;
-} STATISTICS_INFO, *PSTATISTICS_INFO;
-
extern void MTO_Init(struct wbsoft_priv *);
extern void MTO_PeriodicTimerExpired(struct wbsoft_priv *);
extern void MTO_SetDTORateRange(struct wbsoft_priv *, u8 *, u8);
diff --git a/drivers/staging/winbond/wb35rx.c b/drivers/staging/winbond/wb35rx.c
index 3e8cf08b87e6..4d41f6c3563c 100644
--- a/drivers/staging/winbond/wb35rx.c
+++ b/drivers/staging/winbond/wb35rx.c
@@ -40,10 +40,11 @@ static void packet_came(struct ieee80211_hw *hw, char *pRxBufferAddress, int Pac
rx_status.phymode = MODE_IEEE80211B;
*/
- ieee80211_rx_irqsafe(hw, skb, &rx_status);
+ memcpy(IEEE80211_SKB_RXCB(skb), &rx_status, sizeof(rx_status));
+ ieee80211_rx_irqsafe(hw, skb);
}
-static void Wb35Rx_adjust(PDESCRIPTOR pRxDes)
+static void Wb35Rx_adjust(struct wb35_descriptor *pRxDes)
{
u32 * pRxBufferAddress;
u32 DecryptionMethod;
@@ -83,7 +84,7 @@ static u16 Wb35Rx_indicate(struct ieee80211_hw *hw)
{
struct wbsoft_priv *priv = hw->priv;
struct hw_data * pHwData = &priv->sHwData;
- DESCRIPTOR RxDes;
+ struct wb35_descriptor RxDes;
struct wb35_rx *pWb35Rx = &pHwData->Wb35Rx;
u8 * pRxBufferAddress;
u16 PacketSize;
diff --git a/drivers/staging/winbond/wb35tx.c b/drivers/staging/winbond/wb35tx.c
index 1e4169d9a119..5869ef473fcd 100644
--- a/drivers/staging/winbond/wb35tx.c
+++ b/drivers/staging/winbond/wb35tx.c
@@ -30,7 +30,7 @@ static void Wb35Tx_complete(struct urb * pUrb)
struct wbsoft_priv *adapter = pUrb->context;
struct hw_data * pHwData = &adapter->sHwData;
struct wb35_tx *pWb35Tx = &pHwData->Wb35Tx;
- PMDS pMds = &adapter->Mds;
+ struct wb35_mds *pMds = &adapter->Mds;
printk("wb35: tx complete\n");
// Variable setting
@@ -67,7 +67,7 @@ static void Wb35Tx(struct wbsoft_priv *adapter)
struct hw_data * pHwData = &adapter->sHwData;
struct wb35_tx *pWb35Tx = &pHwData->Wb35Tx;
u8 *pTxBufferAddress;
- PMDS pMds = &adapter->Mds;
+ struct wb35_mds *pMds = &adapter->Mds;
struct urb * pUrb = (struct urb *)pWb35Tx->Tx4Urb;
int retv;
u32 SendIndex;
diff --git a/drivers/staging/winbond/wbhal_f.h b/drivers/staging/winbond/wbhal_f.h
index bfdf05d489f0..64a008db30f4 100644
--- a/drivers/staging/winbond/wbhal_f.h
+++ b/drivers/staging/winbond/wbhal_f.h
@@ -39,7 +39,7 @@ void hal_set_cwmax( struct hw_data * pHwData, u16 cwin_max );
void hal_set_rsn_wpa( struct hw_data * pHwData, u32 * RSN_IE_Bitmap , u32 * RSN_OUI_type , unsigned char bDesiredAuthMode);
void hal_set_connect_info( struct hw_data * pHwData, unsigned char boConnect );
u8 hal_get_est_sq3( struct hw_data * pHwData, u8 Count );
-void hal_descriptor_indicate( struct hw_data * pHwData, PDESCRIPTOR pDes );
+void hal_descriptor_indicate( struct hw_data * pHwData, struct wb35_descriptor *pDes );
u8 hal_get_antenna_number( struct hw_data * pHwData );
u32 hal_get_bss_pk_cnt( struct hw_data * pHwData );
#define hal_get_region_from_EEPROM( _A ) ( (_A)->reg.EEPROMRegion )
diff --git a/drivers/staging/winbond/wbhal_s.h b/drivers/staging/winbond/wbhal_s.h
index 16d0e6f83113..372a05e3021a 100644
--- a/drivers/staging/winbond/wbhal_s.h
+++ b/drivers/staging/winbond/wbhal_s.h
@@ -314,7 +314,7 @@ typedef struct _T02_DESCRIPTOR
};
} T02_DESCRIPTOR, *PT02_DESCRIPTOR;
-typedef struct _DESCRIPTOR { // Skip length = 8 DWORD
+struct wb35_descriptor { // Skip length = 8 DWORD
// ID for descriptor ---, The field doesn't be cleard in the operation of Descriptor definition
u8 Descriptor_ID;
//----------------------The above region doesn't be cleared by DESCRIPTOR_RESET------
@@ -368,7 +368,7 @@ typedef struct _DESCRIPTOR { // Skip length = 8 DWORD
u16 buffer_size[ MAX_DESCRIPTOR_BUFFER_INDEX ];
void* buffer_address[ MAX_DESCRIPTOR_BUFFER_INDEX ];//931130.4.q
-} DESCRIPTOR, *PDESCRIPTOR;
+};
#define DEFAULT_NULL_PACKET_COUNT 180000 //20060828.1 Add. 180 seconds
diff --git a/drivers/staging/winbond/wbusb.c b/drivers/staging/winbond/wbusb.c
index 745279c528a2..8950724f168e 100644
--- a/drivers/staging/winbond/wbusb.c
+++ b/drivers/staging/winbond/wbusb.c
@@ -716,11 +716,6 @@ static int wb35_hw_init(struct ieee80211_hw *hw)
priv->sLocalPara.region = REGION_USA; /* default setting */
}
- // Get Software setting flag from hal
- priv->sLocalPara.boAntennaDiversity = false;
- if (hal_software_set(pHwData) & 0x00000001)
- priv->sLocalPara.boAntennaDiversity = true;
-
Mds_initial(priv);
/*