1 #ifndef __WINBOND_CORE_H 2 #define __WINBOND_CORE_H 3 4 #include <linux/wireless.h> 5 #include <linux/types.h> 6 #include <linux/delay.h> 7 8 #include "wbhal.h" 9 #include "mto.h" 10 11 #include "mac_structures.h" 12 #include "mds_s.h" 13 14 #define MAX_NUM_TX_MMPDU 2 15 #define MAX_MMPDU_SIZE 1512 16 #define MAX_NUM_RX_MMPDU 6 17 18 struct mlme_frame { 19 s8 *pMMPDU; 20 u16 len; 21 u8 DataType; 22 u8 IsInUsed; 23 24 u8 TxMMPDU[MAX_NUM_TX_MMPDU][MAX_MMPDU_SIZE]; 25 u8 TxMMPDUInUse[(MAX_NUM_TX_MMPDU + 3) & ~0x03]; 26 27 u16 wNumTxMMPDU; 28 u16 wNumTxMMPDUDiscarded; 29 30 u8 RxMMPDU[MAX_NUM_RX_MMPDU][MAX_MMPDU_SIZE]; 31 u8 SaveRxBufSlotInUse[(MAX_NUM_RX_MMPDU + 3) & ~0x03]; 32 33 u16 wNumRxMMPDU; 34 u16 wNumRxMMPDUDiscarded; 35 36 u16 wNumRxMMPDUInMLME; /* Number of the Rx MMPDU */ 37 u16 reserved_1; /* in MLME. */ 38 /* excluding the discarded */ 39 }; 40 41 #define WBLINUX_PACKET_ARRAY_SIZE (ETHERNET_TX_DESCRIPTORS*4) 42 43 #define WB_MAX_LINK_NAME_LEN 40 44 45 struct wbsoft_priv { 46 struct wb_local_para sLocalPara; /* Myself connected 47 parameters */ 48 49 struct mlme_frame sMlmeFrame; /* connect to peerSTA parameters */ 50 51 struct wb35_mto_params sMtoPara; /* MTO_struct ... */ 52 struct hw_data sHwData; /*For HAL */ 53 struct wb35_mds Mds; 54 55 atomic_t ThreadCount; 56 57 u32 RxByteCount; 58 u32 TxByteCount; 59 60 u8 LinkName[WB_MAX_LINK_NAME_LEN]; 61 62 bool enabled; 63 }; 64 65 #endif /* __WINBOND_CORE_H */ 66