aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorPekka Enberg <penberg@cs.helsinki.fi>2008-10-30 10:14:38 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2009-01-06 16:51:49 -0500
commit1e8a2b60339a050f4fd383e332a5dd66b75f4f02 (patch)
tree4caedc94ac170b32d18336833c9387a10b532078 /drivers
parentac418b8faaaad7a17474c8fba5c2e5917c91cf31 (diff)
Staging: w35und: merge struct wb35_adapter to struct wbsoft_priv
This patch merges struct wb35_adapter to struct wbsoft_priv. Now we can finally start passing a pointer to struct ieee80211_hw around where necessary. Acked-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/winbond/adapter.h44
-rw-r--r--drivers/staging/winbond/bss_f.h70
-rw-r--r--drivers/staging/winbond/core.h38
-rw-r--r--drivers/staging/winbond/mds.c16
-rw-r--r--drivers/staging/winbond/mds_f.h36
-rw-r--r--drivers/staging/winbond/mlmetxrx.c12
-rw-r--r--drivers/staging/winbond/mlmetxrx_f.h22
-rw-r--r--drivers/staging/winbond/mto.h2
-rw-r--r--drivers/staging/winbond/mto_f.h8
-rw-r--r--drivers/staging/winbond/rxisr.c8
-rw-r--r--drivers/staging/winbond/scan_s.h6
-rw-r--r--drivers/staging/winbond/wb35tx.c14
-rw-r--r--drivers/staging/winbond/wb35tx_f.h12
-rw-r--r--drivers/staging/winbond/wbhal.c10
-rw-r--r--drivers/staging/winbond/wbhal_f.h10
-rw-r--r--drivers/staging/winbond/wblinux.c10
-rw-r--r--drivers/staging/winbond/wblinux_f.h14
-rw-r--r--drivers/staging/winbond/wbusb.c55
18 files changed, 183 insertions, 204 deletions
diff --git a/drivers/staging/winbond/adapter.h b/drivers/staging/winbond/adapter.h
deleted file mode 100644
index 239cc3a5fa2..00000000000
--- a/drivers/staging/winbond/adapter.h
+++ /dev/null
@@ -1,44 +0,0 @@
1#ifndef __WINBOND_ADAPTER_H
2#define __WINBOND_ADAPTER_H
3
4#include <linux/wireless.h>
5
6#include "bssdscpt.h"
7#include "mto.h"
8#include "wbhal_s.h"
9
10#define WBLINUX_PACKET_ARRAY_SIZE (ETHERNET_TX_DESCRIPTORS*4)
11
12#define WB_MAX_LINK_NAME_LEN 40
13
14struct wb35_adapter {
15 u32 adapterIndex; // 20060703.4 Add for using padapterContext global adapter point
16
17 WB_LOCALDESCRIPT sLocalPara; // Myself connected parameters
18 PWB_BSSDESCRIPTION asBSSDescriptElement;
19
20 MLME_FRAME sMlmeFrame; // connect to peerSTA parameters
21
22 MTO_PARAMETERS sMtoPara; // MTO_struct ...
23 hw_data_t sHwData; //For HAL
24 MDS Mds;
25
26 spinlock_t SpinLock;
27 u32 shutdown;
28
29 atomic_t ThreadCount;
30
31 u32 RxByteCount;
32 u32 TxByteCount;
33
34 struct sk_buff *skb_array[WBLINUX_PACKET_ARRAY_SIZE];
35 struct sk_buff *packet_return;
36 s32 skb_SetIndex;
37 s32 skb_GetIndex;
38 s32 netif_state_stop; // 1: stop 0: normal
39 struct iw_statistics iw_stats;
40
41 u8 LinkName[WB_MAX_LINK_NAME_LEN];
42};
43
44#endif
diff --git a/drivers/staging/winbond/bss_f.h b/drivers/staging/winbond/bss_f.h
index feffe5f25f0..a433b5a8592 100644
--- a/drivers/staging/winbond/bss_f.h
+++ b/drivers/staging/winbond/bss_f.h
@@ -1,7 +1,7 @@
1#ifndef __WINBOND_BSS_F_H 1#ifndef __WINBOND_BSS_F_H
2#define __WINBOND_BSS_F_H 2#define __WINBOND_BSS_F_H
3 3
4#include "adapter.h" 4#include "core.h"
5 5
6struct PMKID_Information_Element; 6struct PMKID_Information_Element;
7 7
@@ -9,54 +9,54 @@ struct PMKID_Information_Element;
9// BSS descriptor DataBase management global function 9// BSS descriptor DataBase management global function
10// 10//
11 11
12void vBSSdescriptionInit(struct wb35_adapter * adapter); 12void vBSSdescriptionInit(struct wbsoft_priv * adapter);
13void vBSSfoundList(struct wb35_adapter * adapter); 13void vBSSfoundList(struct wbsoft_priv * adapter);
14u8 boChanFilter(struct wb35_adapter * adapter, u8 ChanNo); 14u8 boChanFilter(struct wbsoft_priv * adapter, u8 ChanNo);
15u16 wBSSallocateEntry(struct wb35_adapter * adapter); 15u16 wBSSallocateEntry(struct wbsoft_priv * adapter);
16u16 wBSSGetEntry(struct wb35_adapter * adapter); 16u16 wBSSGetEntry(struct wbsoft_priv * adapter);
17void vSimpleHouseKeeping(struct wb35_adapter * adapter); 17void vSimpleHouseKeeping(struct wbsoft_priv * adapter);
18u16 wBSShouseKeeping(struct wb35_adapter * adapter); 18u16 wBSShouseKeeping(struct wbsoft_priv * adapter);
19void ClearBSSdescpt(struct wb35_adapter * adapter, u16 i); 19void ClearBSSdescpt(struct wbsoft_priv * adapter, u16 i);
20u16 wBSSfindBssID(struct wb35_adapter * adapter, u8 *pbBssid); 20u16 wBSSfindBssID(struct wbsoft_priv * adapter, u8 *pbBssid);
21u16 wBSSfindDedicateCandidate(struct wb35_adapter * adapter, struct SSID_Element *psSsid, u8 *pbBssid); 21u16 wBSSfindDedicateCandidate(struct wbsoft_priv * adapter, struct SSID_Element *psSsid, u8 *pbBssid);
22u16 wBSSfindMACaddr(struct wb35_adapter * adapter, u8 *pbMacAddr); 22u16 wBSSfindMACaddr(struct wbsoft_priv * adapter, u8 *pbMacAddr);
23u16 wBSSsearchMACaddr(struct wb35_adapter * adapter, u8 *pbMacAddr, u8 band); 23u16 wBSSsearchMACaddr(struct wbsoft_priv * adapter, u8 *pbMacAddr, u8 band);
24u16 wBSSaddScanData(struct wb35_adapter *, u16, psRXDATA); 24u16 wBSSaddScanData(struct wbsoft_priv *, u16, psRXDATA);
25u16 wBSSUpdateScanData(struct wb35_adapter * adapter, u16 wBssIdx, psRXDATA psRcvData); 25u16 wBSSUpdateScanData(struct wbsoft_priv * adapter, u16 wBssIdx, psRXDATA psRcvData);
26u16 wBSScreateIBSSdata(struct wb35_adapter * adapter, PWB_BSSDESCRIPTION psDesData); 26u16 wBSScreateIBSSdata(struct wbsoft_priv * adapter, PWB_BSSDESCRIPTION psDesData);
27void DesiredRate2BSSdescriptor(struct wb35_adapter * adapter, PWB_BSSDESCRIPTION psDesData, 27void DesiredRate2BSSdescriptor(struct wbsoft_priv * adapter, PWB_BSSDESCRIPTION psDesData,
28 u8 *pBasicRateSet, u8 BasicRateCount, 28 u8 *pBasicRateSet, u8 BasicRateCount,
29 u8 *pOperationRateSet, u8 OperationRateCount); 29 u8 *pOperationRateSet, u8 OperationRateCount);
30void DesiredRate2InfoElement(struct wb35_adapter * adapter, u8 *addr, u16 *iFildOffset, 30void DesiredRate2InfoElement(struct wbsoft_priv * adapter, u8 *addr, u16 *iFildOffset,
31 u8 *pBasicRateSet, u8 BasicRateCount, 31 u8 *pBasicRateSet, u8 BasicRateCount,
32 u8 *pOperationRateSet, u8 OperationRateCount); 32 u8 *pOperationRateSet, u8 OperationRateCount);
33void BSSAddIBSSdata(struct wb35_adapter * adapter, PWB_BSSDESCRIPTION psDesData); 33void BSSAddIBSSdata(struct wbsoft_priv * adapter, PWB_BSSDESCRIPTION psDesData);
34unsigned char boCmpMacAddr( u8 *, u8 *); 34unsigned char boCmpMacAddr( u8 *, u8 *);
35unsigned char boCmpSSID(struct SSID_Element *psSSID1, struct SSID_Element *psSSID2); 35unsigned char boCmpSSID(struct SSID_Element *psSSID1, struct SSID_Element *psSSID2);
36u16 wBSSfindSSID(struct wb35_adapter * adapter, struct SSID_Element *psSsid); 36u16 wBSSfindSSID(struct wbsoft_priv * adapter, struct SSID_Element *psSsid);
37u16 wRoamingQuery(struct wb35_adapter * adapter); 37u16 wRoamingQuery(struct wbsoft_priv * adapter);
38void vRateToBitmap(struct wb35_adapter * adapter, u16 index); 38void vRateToBitmap(struct wbsoft_priv * adapter, u16 index);
39u8 bRateToBitmapIndex(struct wb35_adapter * adapter, u8 bRate); 39u8 bRateToBitmapIndex(struct wbsoft_priv * adapter, u8 bRate);
40u8 bBitmapToRate(u8 i); 40u8 bBitmapToRate(u8 i);
41unsigned char boIsERPsta(struct wb35_adapter * adapter, u16 i); 41unsigned char boIsERPsta(struct wbsoft_priv * adapter, u16 i);
42unsigned char boCheckConnect(struct wb35_adapter * adapter); 42unsigned char boCheckConnect(struct wbsoft_priv * adapter);
43unsigned char boCheckSignal(struct wb35_adapter * adapter); 43unsigned char boCheckSignal(struct wbsoft_priv * adapter);
44void AddIBSSIe(struct wb35_adapter * adapter,PWB_BSSDESCRIPTION psDesData );//added by ws for WPA_None06/01/04 44void AddIBSSIe(struct wbsoft_priv * adapter,PWB_BSSDESCRIPTION psDesData );//added by ws for WPA_None06/01/04
45void BssScanUpToDate(struct wb35_adapter * adapter); 45void BssScanUpToDate(struct wbsoft_priv * adapter);
46void BssUpToDate(struct wb35_adapter * adapter); 46void BssUpToDate(struct wbsoft_priv * adapter);
47void RateSort(u8 *RateArray, u8 num, u8 mode); 47void RateSort(u8 *RateArray, u8 num, u8 mode);
48void RateReSortForSRate(struct wb35_adapter * adapter, u8 *RateArray, u8 num); 48void RateReSortForSRate(struct wbsoft_priv * adapter, u8 *RateArray, u8 num);
49void Assemble_IE(struct wb35_adapter * adapter, u16 wBssIdx); 49void Assemble_IE(struct wbsoft_priv * adapter, u16 wBssIdx);
50void SetMaxTxRate(struct wb35_adapter * adapter); 50void SetMaxTxRate(struct wbsoft_priv * adapter);
51 51
52void CreateWpaIE(struct wb35_adapter * adapter, u16* iFildOffset, u8 *msg, struct Management_Frame* msgHeader, 52void CreateWpaIE(struct wbsoft_priv * adapter, u16* iFildOffset, u8 *msg, struct Management_Frame* msgHeader,
53 struct Association_Request_Frame_Body* msgBody, u16 iMSindex); //added by WS 05/14/05 53 struct Association_Request_Frame_Body* msgBody, u16 iMSindex); //added by WS 05/14/05
54 54
55#ifdef _WPA2_ 55#ifdef _WPA2_
56void CreateRsnIE(struct wb35_adapter * adapter, u16* iFildOffset, u8 *msg, struct Management_Frame* msgHeader, 56void CreateRsnIE(struct wbsoft_priv * adapter, u16* iFildOffset, u8 *msg, struct Management_Frame* msgHeader,
57 struct Association_Request_Frame_Body* msgBody, u16 iMSindex);//added by WS 05/14/05 57 struct Association_Request_Frame_Body* msgBody, u16 iMSindex);//added by WS 05/14/05
58 58
59u16 SearchPmkid(struct wb35_adapter * adapter, struct Management_Frame* msgHeader, 59u16 SearchPmkid(struct wbsoft_priv * adapter, struct Management_Frame* msgHeader,
60 struct PMKID_Information_Element * AssoReq_PMKID ); 60 struct PMKID_Information_Element * AssoReq_PMKID );
61#endif 61#endif
62 62
diff --git a/drivers/staging/winbond/core.h b/drivers/staging/winbond/core.h
index 62ad9545548..64b73bbf747 100644
--- a/drivers/staging/winbond/core.h
+++ b/drivers/staging/winbond/core.h
@@ -1,10 +1,44 @@
1#ifndef __WINBOND_CORE_H 1#ifndef __WINBOND_CORE_H
2#define __WINBOND_CORE_H 2#define __WINBOND_CORE_H
3 3
4#include "adapter.h" 4#include <linux/wireless.h>
5
6#include "bssdscpt.h"
7#include "mto.h"
8#include "wbhal_s.h"
9
10#define WBLINUX_PACKET_ARRAY_SIZE (ETHERNET_TX_DESCRIPTORS*4)
11
12#define WB_MAX_LINK_NAME_LEN 40
5 13
6struct wbsoft_priv { 14struct wbsoft_priv {
7 struct wb35_adapter *adapter; 15 u32 adapterIndex; // 20060703.4 Add for using padapterContext global adapter point
16
17 WB_LOCALDESCRIPT sLocalPara; // Myself connected parameters
18 PWB_BSSDESCRIPTION asBSSDescriptElement;
19
20 MLME_FRAME sMlmeFrame; // connect to peerSTA parameters
21
22 MTO_PARAMETERS sMtoPara; // MTO_struct ...
23 hw_data_t sHwData; //For HAL
24 MDS Mds;
25
26 spinlock_t SpinLock;
27 u32 shutdown;
28
29 atomic_t ThreadCount;
30
31 u32 RxByteCount;
32 u32 TxByteCount;
33
34 struct sk_buff *skb_array[WBLINUX_PACKET_ARRAY_SIZE];
35 struct sk_buff *packet_return;
36 s32 skb_SetIndex;
37 s32 skb_GetIndex;
38 s32 netif_state_stop; // 1: stop 0: normal
39 struct iw_statistics iw_stats;
40
41 u8 LinkName[WB_MAX_LINK_NAME_LEN];
8}; 42};
9 43
10#endif /* __WINBOND_CORE_H */ 44#endif /* __WINBOND_CORE_H */
diff --git a/drivers/staging/winbond/mds.c b/drivers/staging/winbond/mds.c
index 35ea100a665..df59b04da74 100644
--- a/drivers/staging/winbond/mds.c
+++ b/drivers/staging/winbond/mds.c
@@ -8,7 +8,7 @@
8#include "wblinux_f.h" 8#include "wblinux_f.h"
9 9
10void 10void
11Mds_reset_descriptor(struct wb35_adapter * adapter) 11Mds_reset_descriptor(struct wbsoft_priv * adapter)
12{ 12{
13 PMDS pMds = &adapter->Mds; 13 PMDS pMds = &adapter->Mds;
14 14
@@ -21,7 +21,7 @@ Mds_reset_descriptor(struct wb35_adapter * adapter)
21} 21}
22 22
23unsigned char 23unsigned char
24Mds_initial(struct wb35_adapter * adapter) 24Mds_initial(struct wbsoft_priv * adapter)
25{ 25{
26 PMDS pMds = &adapter->Mds; 26 PMDS pMds = &adapter->Mds;
27 27
@@ -35,13 +35,13 @@ Mds_initial(struct wb35_adapter * adapter)
35} 35}
36 36
37void 37void
38Mds_Destroy(struct wb35_adapter * adapter) 38Mds_Destroy(struct wbsoft_priv * adapter)
39{ 39{
40 vRxTimerStop(adapter); 40 vRxTimerStop(adapter);
41} 41}
42 42
43void 43void
44Mds_Tx(struct wb35_adapter * adapter) 44Mds_Tx(struct wbsoft_priv * adapter)
45{ 45{
46 phw_data_t pHwData = &adapter->sHwData; 46 phw_data_t pHwData = &adapter->sHwData;
47 PMDS pMds = &adapter->Mds; 47 PMDS pMds = &adapter->Mds;
@@ -183,7 +183,7 @@ Mds_Tx(struct wb35_adapter * adapter)
183} 183}
184 184
185void 185void
186Mds_SendComplete(struct wb35_adapter * adapter, PT02_DESCRIPTOR pT02) 186Mds_SendComplete(struct wbsoft_priv * adapter, PT02_DESCRIPTOR pT02)
187{ 187{
188 PMDS pMds = &adapter->Mds; 188 PMDS pMds = &adapter->Mds;
189 phw_data_t pHwData = &adapter->sHwData; 189 phw_data_t pHwData = &adapter->sHwData;
@@ -236,7 +236,7 @@ Mds_SendComplete(struct wb35_adapter * adapter, PT02_DESCRIPTOR pT02)
236} 236}
237 237
238void 238void
239Mds_HeaderCopy(struct wb35_adapter * adapter, PDESCRIPTOR pDes, u8 *TargetBuffer) 239Mds_HeaderCopy(struct wbsoft_priv * adapter, PDESCRIPTOR pDes, u8 *TargetBuffer)
240{ 240{
241 PMDS pMds = &adapter->Mds; 241 PMDS pMds = &adapter->Mds;
242 u8 *src_buffer = pDes->buffer_address[0];//931130.5.g 242 u8 *src_buffer = pDes->buffer_address[0];//931130.5.g
@@ -333,7 +333,7 @@ Mds_HeaderCopy(struct wb35_adapter * adapter, PDESCRIPTOR pDes, u8 *TargetBuffer
333 333
334// The function return the 4n size of usb pk 334// The function return the 4n size of usb pk
335u16 335u16
336Mds_BodyCopy(struct wb35_adapter * adapter, PDESCRIPTOR pDes, u8 *TargetBuffer) 336Mds_BodyCopy(struct wbsoft_priv * adapter, PDESCRIPTOR pDes, u8 *TargetBuffer)
337{ 337{
338 PT00_DESCRIPTOR pT00; 338 PT00_DESCRIPTOR pT00;
339 PMDS pMds = &adapter->Mds; 339 PMDS pMds = &adapter->Mds;
@@ -436,7 +436,7 @@ Mds_BodyCopy(struct wb35_adapter * adapter, PDESCRIPTOR pDes, u8 *TargetBuffer)
436 436
437 437
438void 438void
439Mds_DurationSet( struct wb35_adapter * adapter, PDESCRIPTOR pDes, u8 *buffer ) 439Mds_DurationSet( struct wbsoft_priv * adapter, PDESCRIPTOR pDes, u8 *buffer )
440{ 440{
441 PT00_DESCRIPTOR pT00; 441 PT00_DESCRIPTOR pT00;
442 PT01_DESCRIPTOR pT01; 442 PT01_DESCRIPTOR pT01;
diff --git a/drivers/staging/winbond/mds_f.h b/drivers/staging/winbond/mds_f.h
index 2e0f7a84a48..a3724ac6798 100644
--- a/drivers/staging/winbond/mds_f.h
+++ b/drivers/staging/winbond/mds_f.h
@@ -2,31 +2,31 @@
2#define __WINBOND_MDS_F_H 2#define __WINBOND_MDS_F_H
3 3
4#include "wbhal_s.h" 4#include "wbhal_s.h"
5#include "adapter.h" 5#include "core.h"
6 6
7unsigned char Mds_initial( struct wb35_adapter *adapter ); 7unsigned char Mds_initial( struct wbsoft_priv *adapter );
8void Mds_Destroy( struct wb35_adapter *adapter ); 8void Mds_Destroy( struct wbsoft_priv *adapter );
9void Mds_Tx( struct wb35_adapter *adapter ); 9void Mds_Tx( struct wbsoft_priv *adapter );
10void Mds_HeaderCopy( struct wb35_adapter *adapter, PDESCRIPTOR pDes, u8 *TargetBuffer ); 10void Mds_HeaderCopy( struct wbsoft_priv *adapter, PDESCRIPTOR pDes, u8 *TargetBuffer );
11u16 Mds_BodyCopy( struct wb35_adapter *adapter, PDESCRIPTOR pDes, u8 *TargetBuffer ); 11u16 Mds_BodyCopy( struct wbsoft_priv *adapter, PDESCRIPTOR pDes, u8 *TargetBuffer );
12void Mds_DurationSet( struct wb35_adapter *adapter, PDESCRIPTOR pDes, u8 *TargetBuffer ); 12void Mds_DurationSet( struct wbsoft_priv *adapter, PDESCRIPTOR pDes, u8 *TargetBuffer );
13void Mds_SendComplete( struct wb35_adapter *adapter, PT02_DESCRIPTOR pT02 ); 13void Mds_SendComplete( struct wbsoft_priv *adapter, PT02_DESCRIPTOR pT02 );
14void Mds_MpduProcess( struct wb35_adapter *adapter, PDESCRIPTOR pRxDes ); 14void Mds_MpduProcess( struct wbsoft_priv *adapter, PDESCRIPTOR pRxDes );
15void Mds_reset_descriptor( struct wb35_adapter *adapter ); 15void Mds_reset_descriptor( struct wbsoft_priv *adapter );
16extern void DataDmp(u8 *pdata, u32 len, u32 offset); 16extern void DataDmp(u8 *pdata, u32 len, u32 offset);
17 17
18 18
19void vRxTimerInit(struct wb35_adapter *adapter); 19void vRxTimerInit(struct wbsoft_priv *adapter);
20void vRxTimerStart(struct wb35_adapter *adapter, int timeout_value); 20void vRxTimerStart(struct wbsoft_priv *adapter, int timeout_value);
21void vRxTimerStop(struct wb35_adapter *adapter); 21void vRxTimerStop(struct wbsoft_priv *adapter);
22 22
23// For Asynchronous indicating. The routine collocates with USB. 23// For Asynchronous indicating. The routine collocates with USB.
24void Mds_MsduProcess( struct wb35_adapter *adapter, PRXLAYER1 pRxLayer1, u8 SlotIndex); 24void Mds_MsduProcess( struct wbsoft_priv *adapter, PRXLAYER1 pRxLayer1, u8 SlotIndex);
25 25
26// For data frame sending 20060802 26// For data frame sending 20060802
27u16 MDS_GetPacketSize( struct wb35_adapter *adapter ); 27u16 MDS_GetPacketSize( struct wbsoft_priv *adapter );
28void MDS_GetNextPacket( struct wb35_adapter *adapter, PDESCRIPTOR pDes ); 28void MDS_GetNextPacket( struct wbsoft_priv *adapter, PDESCRIPTOR pDes );
29void MDS_GetNextPacketComplete( struct wb35_adapter *adapter, PDESCRIPTOR pDes ); 29void MDS_GetNextPacketComplete( struct wbsoft_priv *adapter, PDESCRIPTOR pDes );
30void MDS_SendResult( struct wb35_adapter *adapter, u8 PacketId, unsigned char SendOK ); 30void MDS_SendResult( struct wbsoft_priv *adapter, u8 PacketId, unsigned char SendOK );
31 31
32#endif 32#endif
diff --git a/drivers/staging/winbond/mlmetxrx.c b/drivers/staging/winbond/mlmetxrx.c
index ee80aed7f0b..f3da9a6a85c 100644
--- a/drivers/staging/winbond/mlmetxrx.c
+++ b/drivers/staging/winbond/mlmetxrx.c
@@ -19,7 +19,7 @@
19 19
20#include "mds_f.h" 20#include "mds_f.h"
21 21
22void MLMEResetTxRx(struct wb35_adapter * adapter) 22void MLMEResetTxRx(struct wbsoft_priv * adapter)
23{ 23{
24 s32 i; 24 s32 i;
25 25
@@ -55,7 +55,7 @@ void MLMEResetTxRx(struct wb35_adapter * adapter)
55//============================================================================= 55//=============================================================================
56 56
57/* FIXME: Should this just be replaced with kmalloc() and kfree()? */ 57/* FIXME: Should this just be replaced with kmalloc() and kfree()? */
58u8 *MLMEGetMMPDUBuffer(struct wb35_adapter * adapter) 58u8 *MLMEGetMMPDUBuffer(struct wbsoft_priv * adapter)
59{ 59{
60 s32 i; 60 s32 i;
61 u8 *returnVal; 61 u8 *returnVal;
@@ -73,7 +73,7 @@ u8 *MLMEGetMMPDUBuffer(struct wb35_adapter * adapter)
73} 73}
74 74
75//============================================================================= 75//=============================================================================
76u8 MLMESendFrame(struct wb35_adapter * adapter, u8 *pMMPDU, u16 len, u8 DataType) 76u8 MLMESendFrame(struct wbsoft_priv * adapter, u8 *pMMPDU, u16 len, u8 DataType)
77/* DataType : FRAME_TYPE_802_11_MANAGEMENT, FRAME_TYPE_802_11_MANAGEMENT_CHALLENGE, 77/* DataType : FRAME_TYPE_802_11_MANAGEMENT, FRAME_TYPE_802_11_MANAGEMENT_CHALLENGE,
78 FRAME_TYPE_802_11_DATA */ 78 FRAME_TYPE_802_11_DATA */
79{ 79{
@@ -98,7 +98,7 @@ u8 MLMESendFrame(struct wb35_adapter * adapter, u8 *pMMPDU, u16 len, u8 DataType
98 return true; 98 return true;
99} 99}
100 100
101void MLME_GetNextPacket(struct wb35_adapter *adapter, PDESCRIPTOR desc) 101void MLME_GetNextPacket(struct wbsoft_priv *adapter, PDESCRIPTOR desc)
102{ 102{
103 desc->InternalUsed = desc->buffer_start_index + desc->buffer_number; 103 desc->InternalUsed = desc->buffer_start_index + desc->buffer_number;
104 desc->InternalUsed %= MAX_DESCRIPTOR_BUFFER_INDEX; 104 desc->InternalUsed %= MAX_DESCRIPTOR_BUFFER_INDEX;
@@ -109,7 +109,7 @@ void MLME_GetNextPacket(struct wb35_adapter *adapter, PDESCRIPTOR desc)
109 desc->Type = adapter->sMlmeFrame.DataType; 109 desc->Type = adapter->sMlmeFrame.DataType;
110} 110}
111 111
112void MLMEfreeMMPDUBuffer(struct wb35_adapter * adapter, s8 *pData) 112void MLMEfreeMMPDUBuffer(struct wbsoft_priv * adapter, s8 *pData)
113{ 113{
114 int i; 114 int i;
115 115
@@ -127,7 +127,7 @@ void MLMEfreeMMPDUBuffer(struct wb35_adapter * adapter, s8 *pData)
127} 127}
128 128
129void 129void
130MLME_SendComplete(struct wb35_adapter * adapter, u8 PacketID, unsigned char SendOK) 130MLME_SendComplete(struct wbsoft_priv * adapter, u8 PacketID, unsigned char SendOK)
131{ 131{
132 MLME_TXCALLBACK TxCallback; 132 MLME_TXCALLBACK TxCallback;
133 133
diff --git a/drivers/staging/winbond/mlmetxrx_f.h b/drivers/staging/winbond/mlmetxrx_f.h
index 0f264ed64ea..905c301028a 100644
--- a/drivers/staging/winbond/mlmetxrx_f.h
+++ b/drivers/staging/winbond/mlmetxrx_f.h
@@ -8,34 +8,34 @@
8#ifndef _MLMETXRX_H 8#ifndef _MLMETXRX_H
9#define _MLMETXRX_H 9#define _MLMETXRX_H
10 10
11#include "adapter.h" 11#include "core.h"
12 12
13void 13void
14MLMEProcThread( 14MLMEProcThread(
15 struct wb35_adapter * adapter 15 struct wbsoft_priv * adapter
16 ); 16 );
17 17
18void MLMEResetTxRx( struct wb35_adapter * adapter); 18void MLMEResetTxRx( struct wbsoft_priv * adapter);
19 19
20u8 * 20u8 *
21MLMEGetMMPDUBuffer( 21MLMEGetMMPDUBuffer(
22 struct wb35_adapter * adapter 22 struct wbsoft_priv * adapter
23 ); 23 );
24 24
25void MLMEfreeMMPDUBuffer( struct wb35_adapter * adapter, s8 * pData); 25void MLMEfreeMMPDUBuffer( struct wbsoft_priv * adapter, s8 * pData);
26 26
27void MLME_GetNextPacket( struct wb35_adapter * adapter, PDESCRIPTOR pDes ); 27void MLME_GetNextPacket( struct wbsoft_priv * adapter, PDESCRIPTOR pDes );
28u8 MLMESendFrame( struct wb35_adapter * adapter, 28u8 MLMESendFrame( struct wbsoft_priv * adapter,
29 u8 *pMMPDU, 29 u8 *pMMPDU,
30 u16 len, 30 u16 len,
31 u8 DataType); 31 u8 DataType);
32 32
33void 33void
34MLME_SendComplete( struct wb35_adapter * adapter, u8 PacketID, unsigned char SendOK ); 34MLME_SendComplete( struct wbsoft_priv * adapter, u8 PacketID, unsigned char SendOK );
35 35
36void 36void
37MLMERcvFrame( 37MLMERcvFrame(
38 struct wb35_adapter * adapter, 38 struct wbsoft_priv * adapter,
39 PRXBUFFER pRxBufferArray, 39 PRXBUFFER pRxBufferArray,
40 u8 NumOfBuffer, 40 u8 NumOfBuffer,
41 u8 ReturnSlotIndex 41 u8 ReturnSlotIndex
@@ -43,11 +43,11 @@ MLMERcvFrame(
43 43
44void 44void
45MLMEReturnPacket( 45MLMEReturnPacket(
46 struct wb35_adapter * adapter, 46 struct wbsoft_priv * adapter,
47 u8 * pRxBufer 47 u8 * pRxBufer
48 ); 48 );
49#ifdef _IBSS_BEACON_SEQ_STICK_ 49#ifdef _IBSS_BEACON_SEQ_STICK_
50s8 SendBCNullData(struct wb35_adapter * adapter, u16 wIdx); 50s8 SendBCNullData(struct wbsoft_priv * adapter, u16 wIdx);
51#endif 51#endif
52 52
53#endif 53#endif
diff --git a/drivers/staging/winbond/mto.h b/drivers/staging/winbond/mto.h
index 9a175449ce5..536c4f15c41 100644
--- a/drivers/staging/winbond/mto.h
+++ b/drivers/staging/winbond/mto.h
@@ -131,7 +131,7 @@ typedef struct _MTO_PARAMETERS
131} MTO_PARAMETERS, *PMTO_PARAMETERS; 131} MTO_PARAMETERS, *PMTO_PARAMETERS;
132 132
133 133
134#define MTO_FUNC_INPUT struct wb35_adapter * adapter 134#define MTO_FUNC_INPUT struct wbsoft_priv * adapter
135#define MTO_FUNC_INPUT_DATA adapter 135#define MTO_FUNC_INPUT_DATA adapter
136#define MTO_DATA() (adapter->sMtoPara) 136#define MTO_DATA() (adapter->sMtoPara)
137#define MTO_HAL() (&adapter->sHwData) 137#define MTO_HAL() (&adapter->sHwData)
diff --git a/drivers/staging/winbond/mto_f.h b/drivers/staging/winbond/mto_f.h
index ce4319da1f3..81f59137c6d 100644
--- a/drivers/staging/winbond/mto_f.h
+++ b/drivers/staging/winbond/mto_f.h
@@ -1,11 +1,11 @@
1#ifndef __WINBOND_MTO_F_H 1#ifndef __WINBOND_MTO_F_H
2#define __WINBOND_MTO_F_H 2#define __WINBOND_MTO_F_H
3 3
4#include "adapter.h" 4#include "core.h"
5 5
6extern void MTO_Init(struct wb35_adapter *); 6extern void MTO_Init(struct wbsoft_priv *);
7extern void MTO_PeriodicTimerExpired(struct wb35_adapter *); 7extern void MTO_PeriodicTimerExpired(struct wbsoft_priv *);
8extern void MTO_SetDTORateRange(struct wb35_adapter *, u8 *, u8); 8extern void MTO_SetDTORateRange(struct wbsoft_priv *, u8 *, u8);
9extern u8 MTO_GetTxRate(MTO_FUNC_INPUT, u32 fpdu_len); 9extern u8 MTO_GetTxRate(MTO_FUNC_INPUT, u32 fpdu_len);
10extern u8 MTO_GetTxFallbackRate(MTO_FUNC_INPUT); 10extern u8 MTO_GetTxFallbackRate(MTO_FUNC_INPUT);
11extern void MTO_SetTxCount(MTO_FUNC_INPUT, u8 t0, u8 index); 11extern void MTO_SetTxCount(MTO_FUNC_INPUT, u8 t0, u8 index);
diff --git a/drivers/staging/winbond/rxisr.c b/drivers/staging/winbond/rxisr.c
index f5c98d915c7..d591003a38e 100644
--- a/drivers/staging/winbond/rxisr.c
+++ b/drivers/staging/winbond/rxisr.c
@@ -1,19 +1,19 @@
1#include "os_common.h" 1#include "os_common.h"
2#include "adapter.h" 2#include "core.h"
3 3
4static void RxTimerHandler(unsigned long data) 4static void RxTimerHandler(unsigned long data)
5{ 5{
6 WARN_ON(1); 6 WARN_ON(1);
7} 7}
8 8
9void vRxTimerInit(struct wb35_adapter *adapter) 9void vRxTimerInit(struct wbsoft_priv *adapter)
10{ 10{
11 init_timer(&adapter->Mds.timer); 11 init_timer(&adapter->Mds.timer);
12 adapter->Mds.timer.function = RxTimerHandler; 12 adapter->Mds.timer.function = RxTimerHandler;
13 adapter->Mds.timer.data = (unsigned long) adapter; 13 adapter->Mds.timer.data = (unsigned long) adapter;
14} 14}
15 15
16void vRxTimerStart(struct wb35_adapter *adapter, int timeout_value) 16void vRxTimerStart(struct wbsoft_priv *adapter, int timeout_value)
17{ 17{
18 if (timeout_value < MIN_TIMEOUT_VAL) 18 if (timeout_value < MIN_TIMEOUT_VAL)
19 timeout_value = MIN_TIMEOUT_VAL; 19 timeout_value = MIN_TIMEOUT_VAL;
@@ -22,7 +22,7 @@ void vRxTimerStart(struct wb35_adapter *adapter, int timeout_value)
22 add_timer(&adapter->Mds.timer); 22 add_timer(&adapter->Mds.timer);
23} 23}
24 24
25void vRxTimerStop(struct wb35_adapter *adapter) 25void vRxTimerStop(struct wbsoft_priv *adapter)
26{ 26{
27 del_timer_sync(&adapter->Mds.timer); 27 del_timer_sync(&adapter->Mds.timer);
28} 28}
diff --git a/drivers/staging/winbond/scan_s.h b/drivers/staging/winbond/scan_s.h
index 726954684ce..775bb81f23c 100644
--- a/drivers/staging/winbond/scan_s.h
+++ b/drivers/staging/winbond/scan_s.h
@@ -114,8 +114,8 @@ typedef struct _SCAN_PARAMETERS
114 114
115// static functions 115// static functions
116 116
117//static void ScanTimerHandler(struct wb35_adapter * adapter); 117//static void ScanTimerHandler(struct wbsoft_priv * adapter);
118//static void vScanTimerStart(struct wb35_adapter * adapter, int timeout_value); 118//static void vScanTimerStart(struct wbsoft_priv * adapter, int timeout_value);
119//static void vScanTimerStop(struct wb35_adapter * adapter); 119//static void vScanTimerStop(struct wbsoft_priv * adapter);
120 120
121#endif 121#endif
diff --git a/drivers/staging/winbond/wb35tx.c b/drivers/staging/winbond/wb35tx.c
index ce7e9812739..32ee391eac8 100644
--- a/drivers/staging/winbond/wb35tx.c
+++ b/drivers/staging/winbond/wb35tx.c
@@ -23,7 +23,7 @@ Wb35Tx_get_tx_buffer(phw_data_t pHwData, u8 **pBuffer)
23 return true; 23 return true;
24} 24}
25 25
26void Wb35Tx_start(struct wb35_adapter *adapter) 26void Wb35Tx_start(struct wbsoft_priv *adapter)
27{ 27{
28 phw_data_t pHwData = &adapter->sHwData; 28 phw_data_t pHwData = &adapter->sHwData;
29 PWB35TX pWb35Tx = &pHwData->Wb35Tx; 29 PWB35TX pWb35Tx = &pHwData->Wb35Tx;
@@ -37,7 +37,7 @@ void Wb35Tx_start(struct wb35_adapter *adapter)
37} 37}
38 38
39 39
40void Wb35Tx(struct wb35_adapter *adapter) 40void Wb35Tx(struct wbsoft_priv *adapter)
41{ 41{
42 phw_data_t pHwData = &adapter->sHwData; 42 phw_data_t pHwData = &adapter->sHwData;
43 PWB35TX pWb35Tx = &pHwData->Wb35Tx; 43 PWB35TX pWb35Tx = &pHwData->Wb35Tx;
@@ -91,7 +91,7 @@ void Wb35Tx(struct wb35_adapter *adapter)
91 91
92void Wb35Tx_complete(struct urb * pUrb) 92void Wb35Tx_complete(struct urb * pUrb)
93{ 93{
94 struct wb35_adapter *adapter = pUrb->context; 94 struct wbsoft_priv *adapter = pUrb->context;
95 phw_data_t pHwData = &adapter->sHwData; 95 phw_data_t pHwData = &adapter->sHwData;
96 PWB35TX pWb35Tx = &pHwData->Wb35Tx; 96 PWB35TX pWb35Tx = &pHwData->Wb35Tx;
97 PMDS pMds = &adapter->Mds; 97 PMDS pMds = &adapter->Mds;
@@ -194,7 +194,7 @@ void Wb35Tx_destroy(phw_data_t pHwData)
194 #endif 194 #endif
195} 195}
196 196
197void Wb35Tx_CurrentTime(struct wb35_adapter *adapter, u32 TimeCount) 197void Wb35Tx_CurrentTime(struct wbsoft_priv *adapter, u32 TimeCount)
198{ 198{
199 phw_data_t pHwData = &adapter->sHwData; 199 phw_data_t pHwData = &adapter->sHwData;
200 PWB35TX pWb35Tx = &pHwData->Wb35Tx; 200 PWB35TX pWb35Tx = &pHwData->Wb35Tx;
@@ -211,7 +211,7 @@ void Wb35Tx_CurrentTime(struct wb35_adapter *adapter, u32 TimeCount)
211 } 211 }
212} 212}
213 213
214void Wb35Tx_EP2VM_start(struct wb35_adapter *adapter) 214void Wb35Tx_EP2VM_start(struct wbsoft_priv *adapter)
215{ 215{
216 phw_data_t pHwData = &adapter->sHwData; 216 phw_data_t pHwData = &adapter->sHwData;
217 PWB35TX pWb35Tx = &pHwData->Wb35Tx; 217 PWB35TX pWb35Tx = &pHwData->Wb35Tx;
@@ -226,7 +226,7 @@ void Wb35Tx_EP2VM_start(struct wb35_adapter *adapter)
226} 226}
227 227
228 228
229void Wb35Tx_EP2VM(struct wb35_adapter *adapter) 229void Wb35Tx_EP2VM(struct wbsoft_priv *adapter)
230{ 230{
231 phw_data_t pHwData = &adapter->sHwData; 231 phw_data_t pHwData = &adapter->sHwData;
232 PWB35TX pWb35Tx = &pHwData->Wb35Tx; 232 PWB35TX pWb35Tx = &pHwData->Wb35Tx;
@@ -265,7 +265,7 @@ error:
265 265
266void Wb35Tx_EP2VM_complete(struct urb * pUrb) 266void Wb35Tx_EP2VM_complete(struct urb * pUrb)
267{ 267{
268 struct wb35_adapter *adapter = pUrb->context; 268 struct wbsoft_priv *adapter = pUrb->context;
269 phw_data_t pHwData = &adapter->sHwData; 269 phw_data_t pHwData = &adapter->sHwData;
270 T02_DESCRIPTOR T02, TSTATUS; 270 T02_DESCRIPTOR T02, TSTATUS;
271 PWB35TX pWb35Tx = &pHwData->Wb35Tx; 271 PWB35TX pWb35Tx = &pHwData->Wb35Tx;
diff --git a/drivers/staging/winbond/wb35tx_f.h b/drivers/staging/winbond/wb35tx_f.h
index 466eb6f26c6..277faa7aaed 100644
--- a/drivers/staging/winbond/wb35tx_f.h
+++ b/drivers/staging/winbond/wb35tx_f.h
@@ -1,7 +1,7 @@
1#ifndef __WINBOND_WB35TX_F_H 1#ifndef __WINBOND_WB35TX_F_H
2#define __WINBOND_WB35TX_F_H 2#define __WINBOND_WB35TX_F_H
3 3
4#include "adapter.h" 4#include "core.h"
5#include "wbhal_f.h" 5#include "wbhal_f.h"
6 6
7//==================================== 7//====================================
@@ -11,16 +11,16 @@ unsigned char Wb35Tx_initial( phw_data_t pHwData );
11void Wb35Tx_destroy( phw_data_t pHwData ); 11void Wb35Tx_destroy( phw_data_t pHwData );
12unsigned char Wb35Tx_get_tx_buffer( phw_data_t pHwData, u8 **pBuffer ); 12unsigned char Wb35Tx_get_tx_buffer( phw_data_t pHwData, u8 **pBuffer );
13 13
14void Wb35Tx_EP2VM(struct wb35_adapter *adapter); 14void Wb35Tx_EP2VM(struct wbsoft_priv *adapter);
15void Wb35Tx_EP2VM_start(struct wb35_adapter *adapter); 15void Wb35Tx_EP2VM_start(struct wbsoft_priv *adapter);
16void Wb35Tx_EP2VM_complete(struct urb *urb); 16void Wb35Tx_EP2VM_complete(struct urb *urb);
17 17
18void Wb35Tx_start(struct wb35_adapter *adapter); 18void Wb35Tx_start(struct wbsoft_priv *adapter);
19void Wb35Tx_stop( phw_data_t pHwData ); 19void Wb35Tx_stop( phw_data_t pHwData );
20void Wb35Tx(struct wb35_adapter *adapter); 20void Wb35Tx(struct wbsoft_priv *adapter);
21void Wb35Tx_complete(struct urb *urb); 21void Wb35Tx_complete(struct urb *urb);
22void Wb35Tx_reset_descriptor( phw_data_t pHwData ); 22void Wb35Tx_reset_descriptor( phw_data_t pHwData );
23 23
24void Wb35Tx_CurrentTime(struct wb35_adapter *adapter, u32 TimeCount); 24void Wb35Tx_CurrentTime(struct wbsoft_priv *adapter, u32 TimeCount);
25 25
26#endif 26#endif
diff --git a/drivers/staging/winbond/wbhal.c b/drivers/staging/winbond/wbhal.c
index 1fb8c3d7846..163ca3c4f11 100644
--- a/drivers/staging/winbond/wbhal.c
+++ b/drivers/staging/winbond/wbhal.c
@@ -32,7 +32,7 @@ void hal_get_permanent_address( phw_data_t pHwData, u8 *pethernet_address )
32 32
33static void hal_led_control(unsigned long data) 33static void hal_led_control(unsigned long data)
34{ 34{
35 struct wb35_adapter *adapter = (struct wb35_adapter *) data; 35 struct wbsoft_priv *adapter = (struct wbsoft_priv *) data;
36 phw_data_t pHwData = &adapter->sHwData; 36 phw_data_t pHwData = &adapter->sHwData;
37 struct wb35_reg *reg = &pHwData->reg; 37 struct wb35_reg *reg = &pHwData->reg;
38 u32 LEDSet = (pHwData->SoftwareSet & HAL_LED_SET_MASK) >> HAL_LED_SET_SHIFT; 38 u32 LEDSet = (pHwData->SoftwareSet & HAL_LED_SET_MASK) >> HAL_LED_SET_SHIFT;
@@ -316,7 +316,7 @@ static void hal_led_control(unsigned long data)
316} 316}
317 317
318 318
319u8 hal_init_hardware(phw_data_t pHwData, struct wb35_adapter * adapter) 319u8 hal_init_hardware(phw_data_t pHwData, struct wbsoft_priv * adapter)
320{ 320{
321 u16 SoftwareSet; 321 u16 SoftwareSet;
322 322
@@ -671,7 +671,7 @@ s32 hal_get_rssi( phw_data_t pHwData, u32 *HalRssiArry, u8 Count )
671 return ltmp; 671 return ltmp;
672} 672}
673//---------------------------------------------------------------------------------------------------- 673//----------------------------------------------------------------------------------------------------
674s32 hal_get_rssi_bss(struct wb35_adapter *adapter, u16 idx, u8 Count) 674s32 hal_get_rssi_bss(struct wbsoft_priv *adapter, u16 idx, u8 Count)
675{ 675{
676 phw_data_t pHwData = &adapter->sHwData; 676 phw_data_t pHwData = &adapter->sHwData;
677 struct wb35_reg *reg = &pHwData->reg; 677 struct wb35_reg *reg = &pHwData->reg;
@@ -841,7 +841,7 @@ void hal_system_power_change(phw_data_t pHwData, u32 PowerState)
841 } 841 }
842} 842}
843 843
844void hal_surprise_remove(struct wb35_adapter *adapter) 844void hal_surprise_remove(struct wbsoft_priv *adapter)
845{ 845{
846 phw_data_t pHwData = &adapter->sHwData; 846 phw_data_t pHwData = &adapter->sHwData;
847 847
@@ -853,7 +853,7 @@ void hal_surprise_remove(struct wb35_adapter *adapter)
853 } 853 }
854} 854}
855 855
856void hal_rate_change(struct wb35_adapter *adapter) // Notify the HAL rate is changing 20060613.1 856void hal_rate_change(struct wbsoft_priv *adapter) // Notify the HAL rate is changing 20060613.1
857{ 857{
858 phw_data_t pHwData = &adapter->sHwData; 858 phw_data_t pHwData = &adapter->sHwData;
859 u8 rate = CURRENT_TX_RATE; 859 u8 rate = CURRENT_TX_RATE;
diff --git a/drivers/staging/winbond/wbhal_f.h b/drivers/staging/winbond/wbhal_f.h
index 4cb4da05540..e7a1d611bde 100644
--- a/drivers/staging/winbond/wbhal_f.h
+++ b/drivers/staging/winbond/wbhal_f.h
@@ -5,7 +5,7 @@
5#include "wb35tx_f.h" 5#include "wb35tx_f.h"
6#include "wb35rx_f.h" 6#include "wb35rx_f.h"
7 7
8#include "adapter.h" 8#include "core.h"
9 9
10//==================================================================================== 10//====================================================================================
11// Function declaration 11// Function declaration
@@ -21,7 +21,7 @@ void hal_clear_all_key( phw_data_t pHwData );
21void hal_get_ethernet_address( phw_data_t pHwData, u8 *current_address ); 21void hal_get_ethernet_address( phw_data_t pHwData, u8 *current_address );
22void hal_set_ethernet_address( phw_data_t pHwData, u8 *current_address ); 22void hal_set_ethernet_address( phw_data_t pHwData, u8 *current_address );
23void hal_get_permanent_address( phw_data_t pHwData, u8 *pethernet_address ); 23void hal_get_permanent_address( phw_data_t pHwData, u8 *pethernet_address );
24unsigned char hal_init_hardware( phw_data_t pHwData, struct wb35_adapter * adapter ); 24unsigned char hal_init_hardware( phw_data_t pHwData, struct wbsoft_priv * adapter );
25void hal_set_power_save_mode( phw_data_t pHwData, unsigned char power_save, unsigned char wakeup, unsigned char dtim ); 25void hal_set_power_save_mode( phw_data_t pHwData, unsigned char power_save, unsigned char wakeup, unsigned char dtim );
26void hal_get_power_save_mode( phw_data_t pHwData, u8 *pin_pwr_save ); 26void hal_get_power_save_mode( phw_data_t pHwData, u8 *pin_pwr_save );
27void hal_set_slot_time( phw_data_t pHwData, u8 type ); 27void hal_set_slot_time( phw_data_t pHwData, u8 type );
@@ -61,7 +61,7 @@ void hal_set_cwmax( phw_data_t pHwData, u16 cwin_max );
61void hal_set_rsn_wpa( phw_data_t pHwData, u32 * RSN_IE_Bitmap , u32 * RSN_OUI_type , unsigned char bDesiredAuthMode); 61void hal_set_rsn_wpa( phw_data_t pHwData, u32 * RSN_IE_Bitmap , u32 * RSN_OUI_type , unsigned char bDesiredAuthMode);
62//s32 hal_get_rssi( phw_data_t pHwData, u32 HalRssi ); 62//s32 hal_get_rssi( phw_data_t pHwData, u32 HalRssi );
63s32 hal_get_rssi( phw_data_t pHwData, u32 *HalRssiArry, u8 Count ); 63s32 hal_get_rssi( phw_data_t pHwData, u32 *HalRssiArry, u8 Count );
64s32 hal_get_rssi_bss(struct wb35_adapter *adapter, u16 idx, u8 Count); 64s32 hal_get_rssi_bss(struct wbsoft_priv *adapter, u16 idx, u8 Count);
65void hal_set_connect_info( phw_data_t pHwData, unsigned char boConnect ); 65void hal_set_connect_info( phw_data_t pHwData, unsigned char boConnect );
66u8 hal_get_est_sq3( phw_data_t pHwData, u8 Count ); 66u8 hal_get_est_sq3( phw_data_t pHwData, u8 Count );
67void hal_set_rf_power( phw_data_t pHwData, u8 PowerIndex ); // 20060621 Modify 67void hal_set_rf_power( phw_data_t pHwData, u8 PowerIndex ); // 20060621 Modify
@@ -82,13 +82,13 @@ u8 hal_get_hw_radio_off ( phw_data_t pHwData );
82#define hal_scan_interval( _A ) (_A->Scan_Interval) 82#define hal_scan_interval( _A ) (_A->Scan_Interval)
83void hal_scan_status_indicate( phw_data_t pHwData, u8 status); // 0: complete, 1: in progress 83void hal_scan_status_indicate( phw_data_t pHwData, u8 status); // 0: complete, 1: in progress
84void hal_system_power_change( phw_data_t pHwData, u32 PowerState ); // 20051230 -=D0 1=D1 .. 84void hal_system_power_change( phw_data_t pHwData, u32 PowerState ); // 20051230 -=D0 1=D1 ..
85void hal_surprise_remove(struct wb35_adapter *adapter); 85void hal_surprise_remove(struct wbsoft_priv *adapter);
86 86
87#define PHY_DEBUG( msg, args... ) 87#define PHY_DEBUG( msg, args... )
88 88
89 89
90 90
91void hal_rate_change(struct wb35_adapter *adapter); // Notify the HAL rate is changing 20060613.1 91void hal_rate_change(struct wbsoft_priv *adapter); // Notify the HAL rate is changing 20060613.1
92unsigned char hal_get_dxx_reg( phw_data_t pHwData, u16 number, u32 * pValue ); 92unsigned char hal_get_dxx_reg( phw_data_t pHwData, u16 number, u32 * pValue );
93unsigned char hal_set_dxx_reg( phw_data_t pHwData, u16 number, u32 value ); 93unsigned char hal_set_dxx_reg( phw_data_t pHwData, u16 number, u32 value );
94#define hal_get_time_count( _P ) (_P->time_count/10) // return 100ms count 94#define hal_get_time_count( _P ) (_P->time_count/10) // return 100ms count
diff --git a/drivers/staging/winbond/wblinux.c b/drivers/staging/winbond/wblinux.c
index d6894f9da83..594c0692a93 100644
--- a/drivers/staging/winbond/wblinux.c
+++ b/drivers/staging/winbond/wblinux.c
@@ -17,14 +17,14 @@
17#include "wblinux_f.h" 17#include "wblinux_f.h"
18 18
19unsigned char 19unsigned char
20WBLINUX_Initial(struct wb35_adapter * adapter) 20WBLINUX_Initial(struct wbsoft_priv * adapter)
21{ 21{
22 spin_lock_init( &adapter->SpinLock ); 22 spin_lock_init( &adapter->SpinLock );
23 return true; 23 return true;
24} 24}
25 25
26void 26void
27WBLINUX_Destroy(struct wb35_adapter * adapter) 27WBLINUX_Destroy(struct wbsoft_priv * adapter)
28{ 28{
29 WBLINUX_stop( adapter ); 29 WBLINUX_stop( adapter );
30#ifdef _PE_USB_INI_DUMP_ 30#ifdef _PE_USB_INI_DUMP_
@@ -33,7 +33,7 @@ WBLINUX_Destroy(struct wb35_adapter * adapter)
33} 33}
34 34
35void 35void
36WBLINUX_stop( struct wb35_adapter * adapter ) 36WBLINUX_stop( struct wbsoft_priv * adapter )
37{ 37{
38 struct sk_buff *pSkb; 38 struct sk_buff *pSkb;
39 39
@@ -63,7 +63,7 @@ WBLINUX_stop( struct wb35_adapter * adapter )
63} 63}
64 64
65void 65void
66WbWlanHalt(struct wb35_adapter *adapter) 66WbWlanHalt( struct wbsoft_priv * adapter )
67{ 67{
68 //--------------------- 68 //---------------------
69 adapter->sLocalPara.ShutDowned = true; 69 adapter->sLocalPara.ShutDowned = true;
@@ -85,7 +85,7 @@ WbWlanHalt(struct wb35_adapter *adapter)
85} 85}
86 86
87unsigned char 87unsigned char
88WbWLanInitialize(struct wb35_adapter *adapter) 88WbWLanInitialize(struct wbsoft_priv * adapter)
89{ 89{
90 phw_data_t pHwData; 90 phw_data_t pHwData;
91 u8 *pMacAddr; 91 u8 *pMacAddr;
diff --git a/drivers/staging/winbond/wblinux_f.h b/drivers/staging/winbond/wblinux_f.h
index ed2676b22f6..4b786fcf34e 100644
--- a/drivers/staging/winbond/wblinux_f.h
+++ b/drivers/staging/winbond/wblinux_f.h
@@ -1,7 +1,7 @@
1#ifndef __WBLINUX_F_H 1#ifndef __WBLINUX_F_H
2#define __WBLINUX_F_H 2#define __WBLINUX_F_H
3 3
4#include "adapter.h" 4#include "core.h"
5#include "mds_s.h" 5#include "mds_s.h"
6 6
7//========================================================================= 7//=========================================================================
@@ -9,14 +9,14 @@
9// 9//
10// wblinux_f.h 10// wblinux_f.h
11// 11//
12unsigned char WBLINUX_Initial( struct wb35_adapter *adapter ); 12unsigned char WBLINUX_Initial( struct wbsoft_priv *adapter );
13int wb35_start_xmit(struct sk_buff *skb, struct net_device *netdev ); 13int wb35_start_xmit(struct sk_buff *skb, struct net_device *netdev );
14void WBLINUX_stop( struct wb35_adapter *adapter ); 14void WBLINUX_stop( struct wbsoft_priv *adapter );
15void WBLINUX_Destroy( struct wb35_adapter *adapter ); 15void WBLINUX_Destroy( struct wbsoft_priv *adapter );
16void wb35_set_multicast( struct net_device *netdev ); 16void wb35_set_multicast( struct net_device *netdev );
17struct net_device_stats * wb35_netdev_stats( struct net_device *netdev ); 17struct net_device_stats * wb35_netdev_stats( struct net_device *netdev );
18void WBLINUX_stop( struct wb35_adapter *adapter ); 18void WBLINUX_stop( struct wbsoft_priv *adapter );
19void WbWlanHalt( struct wb35_adapter *adapter ); 19void WbWlanHalt( struct wbsoft_priv *adapter );
20unsigned char WbWLanInitialize(struct wb35_adapter *adapter); 20unsigned char WbWLanInitialize(struct wbsoft_priv *adapter);
21 21
22#endif 22#endif
diff --git a/drivers/staging/winbond/wbusb.c b/drivers/staging/winbond/wbusb.c
index d8fa9e56318..a6bc78e4609 100644
--- a/drivers/staging/winbond/wbusb.c
+++ b/drivers/staging/winbond/wbusb.c
@@ -120,7 +120,7 @@ static int wbsoft_tx(struct ieee80211_hw *dev, struct sk_buff *skb)
120{ 120{
121 struct wbsoft_priv *priv = dev->priv; 121 struct wbsoft_priv *priv = dev->priv;
122 122
123 MLMESendFrame(priv->adapter, skb->data, skb->len, FRAME_TYPE_802_11_MANAGEMENT); 123 MLMESendFrame(priv, skb->data, skb->len, FRAME_TYPE_802_11_MANAGEMENT);
124 124
125 return NETDEV_TX_OK; 125 return NETDEV_TX_OK;
126} 126}
@@ -144,20 +144,20 @@ static int wbsoft_config(struct ieee80211_hw *dev, struct ieee80211_conf *conf)
144 ch.ChanNo = 1; /* Should use channel_num, or something, as that is already pre-translated */ 144 ch.ChanNo = 1; /* Should use channel_num, or something, as that is already pre-translated */
145 145
146 146
147 hal_set_current_channel(&priv->adapter->sHwData, ch); 147 hal_set_current_channel(&priv->sHwData, ch);
148 hal_set_beacon_period(&priv->adapter->sHwData, conf->beacon_int); 148 hal_set_beacon_period(&priv->sHwData, conf->beacon_int);
149// hal_set_cap_info(&priv->adapter->sHwData, ?? ); 149// hal_set_cap_info(&priv->sHwData, ?? );
150// hal_set_ssid(phw_data_t pHwData, u8 * pssid, u8 ssid_len); ?? 150// hal_set_ssid(phw_data_t pHwData, u8 * pssid, u8 ssid_len); ??
151 hal_set_accept_broadcast(&priv->adapter->sHwData, 1); 151 hal_set_accept_broadcast(&priv->sHwData, 1);
152 hal_set_accept_promiscuous(&priv->adapter->sHwData, 1); 152 hal_set_accept_promiscuous(&priv->sHwData, 1);
153 hal_set_accept_multicast(&priv->adapter->sHwData, 1); 153 hal_set_accept_multicast(&priv->sHwData, 1);
154 hal_set_accept_beacon(&priv->adapter->sHwData, 1); 154 hal_set_accept_beacon(&priv->sHwData, 1);
155 hal_set_radio_mode(&priv->adapter->sHwData, 0); 155 hal_set_radio_mode(&priv->sHwData, 0);
156 //hal_set_antenna_number( phw_data_t pHwData, u8 number ) 156 //hal_set_antenna_number( phw_data_t pHwData, u8 number )
157 //hal_set_rf_power(phw_data_t pHwData, u8 PowerIndex) 157 //hal_set_rf_power(phw_data_t pHwData, u8 PowerIndex)
158 158
159 159
160// hal_start_bss(&priv->adapter->sHwData, WLAN_BSSTYPE_INFRASTRUCTURE); ?? 160// hal_start_bss(&priv->sHwData, WLAN_BSSTYPE_INFRASTRUCTURE); ??
161 161
162//void hal_set_rates(phw_data_t pHwData, u8 * pbss_rates, 162//void hal_set_rates(phw_data_t pHwData, u8 * pbss_rates,
163// u8 length, unsigned char basic_rate_set) 163// u8 length, unsigned char basic_rate_set)
@@ -196,7 +196,6 @@ static const struct ieee80211_ops wbsoft_ops = {
196 196
197static int wb35_probe(struct usb_interface *intf, const struct usb_device_id *id_table) 197static int wb35_probe(struct usb_interface *intf, const struct usb_device_id *id_table)
198{ 198{
199 struct wb35_adapter *adapter;
200 PWBUSB pWbUsb; 199 PWBUSB pWbUsb;
201 struct usb_host_interface *interface; 200 struct usb_host_interface *interface;
202 struct usb_endpoint_descriptor *endpoint; 201 struct usb_endpoint_descriptor *endpoint;
@@ -221,13 +220,14 @@ static int wb35_probe(struct usb_interface *intf, const struct usb_device_id *id
221 goto error; 220 goto error;
222 } 221 }
223 222
224 adapter = kzalloc(sizeof(*adapter), GFP_KERNEL); 223 dev = ieee80211_alloc_hw(sizeof(*priv), &wbsoft_ops);
225 if (!adapter) { 224 if (!dev)
226 err = -ENOMEM;
227 goto error; 225 goto error;
228 }
229 226
230 pWbUsb = &adapter->sHwData.WbUsb; 227 priv = dev->priv;
228 my_dev = dev;
229
230 pWbUsb = &priv->sHwData.WbUsb;
231 pWbUsb->udev = udev; 231 pWbUsb->udev = udev;
232 232
233 interface = intf->cur_altsetting; 233 interface = intf->cur_altsetting;
@@ -238,23 +238,14 @@ static int wb35_probe(struct usb_interface *intf, const struct usb_device_id *id
238 pWbUsb->IsUsb20 = 1; 238 pWbUsb->IsUsb20 = 1;
239 } 239 }
240 240
241 if (!WbWLanInitialize(adapter)) { 241 if (!WbWLanInitialize(priv)) {
242 err = -EINVAL; 242 err = -EINVAL;
243 goto error_free_adapter; 243 goto error_free_hw;
244 } 244 }
245 245
246 dev = ieee80211_alloc_hw(sizeof(*priv), &wbsoft_ops);
247 if (!dev)
248 goto error_free_adapter;
249
250 priv = dev->priv;
251 priv->adapter = adapter;
252
253 my_dev = dev;
254
255 SET_IEEE80211_DEV(dev, &udev->dev); 246 SET_IEEE80211_DEV(dev, &udev->dev);
256 { 247 {
257 phw_data_t pHwData = &adapter->sHwData; 248 phw_data_t pHwData = &priv->sHwData;
258 unsigned char dev_addr[MAX_ADDR_LEN]; 249 unsigned char dev_addr[MAX_ADDR_LEN];
259 hal_get_permanent_address(pHwData, dev_addr); 250 hal_get_permanent_address(pHwData, dev_addr);
260 SET_IEEE80211_PERM_ADDR(dev, dev_addr); 251 SET_IEEE80211_PERM_ADDR(dev, dev_addr);
@@ -272,14 +263,12 @@ static int wb35_probe(struct usb_interface *intf, const struct usb_device_id *id
272 if (err) 263 if (err)
273 goto error_free_hw; 264 goto error_free_hw;
274 265
275 usb_set_intfdata(intf, adapter); 266 usb_set_intfdata(intf, priv);
276 267
277 return 0; 268 return 0;
278 269
279error_free_hw: 270error_free_hw:
280 ieee80211_free_hw(dev); 271 ieee80211_free_hw(dev);
281error_free_adapter:
282 kfree(adapter);
283error: 272error:
284 usb_put_dev(udev); 273 usb_put_dev(udev);
285 return err; 274 return err;
@@ -315,9 +304,9 @@ void packet_came(char *pRxBufferAddress, int PacketSize)
315 304
316static void wb35_disconnect(struct usb_interface *intf) 305static void wb35_disconnect(struct usb_interface *intf)
317{ 306{
318 struct wb35_adapter *adapter = usb_get_intfdata(intf); 307 struct wbsoft_priv *priv = usb_get_intfdata(intf);
319 308
320 WbWlanHalt(adapter); 309 WbWlanHalt(priv);
321 310
322 usb_set_intfdata(intf, NULL); 311 usb_set_intfdata(intf, NULL);
323 usb_put_dev(interface_to_usbdev(intf)); 312 usb_put_dev(interface_to_usbdev(intf));