staging: rtl8192e: Remove unnecessary externs
[deliverable/linux.git] / drivers / staging / wilc1000 / coreconfigurator.h
CommitLineData
c5c77ba1
JK
1
2/*!
3 * @file coreconfigurator.h
4 * @brief
5 * @author
6 * @sa coreconfigurator.c
7 * @date 1 Mar 2012
8 * @version 1.0
9 */
10
c5c77ba1
JK
11#ifndef CORECONFIGURATOR_H
12#define CORECONFIGURATOR_H
13
c5c77ba1
JK
14#include "wilc_wlan_if.h"
15/*****************************************************************************/
16/* Constants */
17/*****************************************************************************/
18/* Number of WID Options Supported */
19#define NUM_BASIC_SWITCHES 45
13994d1e 20#define NUM_FHSS_SWITCHES 0
c5c77ba1 21
13994d1e 22#define NUM_RSSI 5
c5c77ba1
JK
23
24#ifdef MAC_802_11N
25#define NUM_11N_BASIC_SWITCHES 25
26#define NUM_11N_HUT_SWITCHES 47
27#else /* MAC_802_11N */
28#define NUM_11N_BASIC_SWITCHES 0
29#define NUM_11N_HUT_SWITCHES 0
30#endif /* MAC_802_11N */
31
d85f5326 32extern u16 g_num_total_switches;
c5c77ba1
JK
33
34#define MAC_HDR_LEN 24 /* No Address4 - non-ESS */
35#define MAX_SSID_LEN 33
36#define FCS_LEN 4
37#define TIME_STAMP_LEN 8
38#define BEACON_INTERVAL_LEN 2
39#define CAP_INFO_LEN 2
40#define STATUS_CODE_LEN 2
41#define AID_LEN 2
42#define IE_HDR_LEN 2
43
c5c77ba1
JK
44/* Operating Mode: SET */
45#define SET_CFG 0
46/* Operating Mode: GET */
47#define GET_CFG 1
48
49#define MAX_PACKET_BUFF_SIZE 1596
50
13994d1e
SK
51#define MAX_STRING_LEN 256
52#define MAX_SURVEY_RESULT_FRAG_SIZE MAX_STRING_LEN
53#define SURVEY_RESULT_LENGTH 44
54#define MAX_ASSOC_RESP_FRAME_SIZE MAX_STRING_LEN
c5c77ba1 55
13994d1e
SK
56#define STATUS_MSG_LEN 12
57#define MAC_CONNECTED 1
58#define MAC_DISCONNECTED 0
c5c77ba1 59
c5c77ba1
JK
60/*****************************************************************************/
61/* Function Macros */
62/*****************************************************************************/
d85f5326 63#define MAKE_WORD16(lsb, msb) ((((u16)(msb) << 8) & 0xFF00) | (lsb))
4e4467fd 64#define MAKE_WORD32(lsw, msw) ((((u32)(msw) << 16) & 0xFFFF0000) | (lsw))
c5c77ba1 65
c5c77ba1
JK
66/*****************************************************************************/
67/* Type Definitions */
68/*****************************************************************************/
c5c77ba1
JK
69/* Status Codes for Authentication and Association Frames */
70typedef enum {
13994d1e
SK
71 SUCCESSFUL_STATUSCODE = 0,
72 UNSPEC_FAIL = 1,
73 UNSUP_CAP = 10,
74 REASOC_NO_ASOC = 11,
75 FAIL_OTHER = 12,
76 UNSUPT_ALG = 13,
77 AUTH_SEQ_FAIL = 14,
78 CHLNG_FAIL = 15,
79 AUTH_TIMEOUT = 16,
80 AP_FULL = 17,
81 UNSUP_RATE = 18,
82 SHORT_PREAMBLE_UNSUP = 19,
83 PBCC_UNSUP = 20,
84 CHANNEL_AGIL_UNSUP = 21,
85 SHORT_SLOT_UNSUP = 25,
86 OFDM_DSSS_UNSUP = 26,
c5c77ba1
JK
87 CONNECT_STS_FORCE_16_BIT = 0xFFFF
88} tenuConnectSts;
89
90typedef struct {
d85f5326 91 u16 u16WIDid;
c5c77ba1 92 tenuWIDtype enuWIDtype;
fb4ec9ca 93 s32 s32ValueSize;
ca356ada 94 s8 *ps8WidVal;
c5c77ba1
JK
95
96} tstrWID;
97
98typedef struct {
63d03e47
GKH
99 u8 u8Full;
100 u8 u8Index;
ca356ada 101 s8 as8RSSI[NUM_RSSI];
c5c77ba1
JK
102} tstrRSSI;
103/* This structure is used to support parsing of the received 'N' message */
104typedef struct {
ca356ada 105 s8 s8rssi;
d85f5326 106 u16 u16CapInfo;
63d03e47
GKH
107 u8 au8ssid[MAX_SSID_LEN];
108 u8 u8SsidLen;
109 u8 au8bssid[6];
d85f5326 110 u16 u16BeaconPeriod;
63d03e47
GKH
111 u8 u8DtimPeriod;
112 u8 u8channel;
c5c77ba1
JK
113 unsigned long u32TimeRcvdInScanCached; /* of type unsigned long to be accepted by the linux kernel macro time_after() */
114 unsigned long u32TimeRcvdInScan;
72ed4dc7 115 bool bNewNetwork;
c5c77ba1 116#ifdef AGING_ALG
63d03e47 117 u8 u8Found;
c5c77ba1
JK
118#endif
119#ifdef WILC_P2P
4e4467fd 120 u32 u32Tsf; /* time-stamp [Low only 32 bit] */
c5c77ba1 121#endif
63d03e47 122 u8 *pu8IEs;
d85f5326 123 u16 u16IEsLen;
c5c77ba1
JK
124 void *pJoinParams;
125 tstrRSSI strRssi;
57b298f5 126 u64 u64Tsf; /* time-stamp [Low and High 64 bit] */
c5c77ba1
JK
127} tstrNetworkInfo;
128
129/* This structure is used to support parsing of the received Association Response frame */
130typedef struct {
d85f5326
CL
131 u16 u16capability;
132 u16 u16ConnectStatus;
133 u16 u16AssocID;
63d03e47 134 u8 *pu8RespIEs;
d85f5326 135 u16 u16RespIEsLen;
c5c77ba1
JK
136} tstrConnectRespInfo;
137
c5c77ba1 138typedef struct {
63d03e47
GKH
139 u8 au8bssid[6];
140 u8 *pu8ReqIEs;
c5c77ba1 141 size_t ReqIEsLen;
63d03e47 142 u8 *pu8RespIEs;
d85f5326
CL
143 u16 u16RespIEsLen;
144 u16 u16ConnectStatus;
c5c77ba1
JK
145} tstrConnectInfo;
146
c5c77ba1 147typedef struct {
d85f5326 148 u16 u16reason;
63d03e47 149 u8 *ie;
c5c77ba1
JK
150 size_t ie_len;
151} tstrDisconnectNotifInfo;
152
153#ifndef CONNECT_DIRECT
154typedef struct wid_site_survey_reslts {
576917ad 155 char SSID[MAX_SSID_LEN];
63d03e47
GKH
156 u8 BssType;
157 u8 Channel;
158 u8 SecurityStatus;
159 u8 BSSID[6];
576917ad 160 char RxPower;
63d03e47 161 u8 Reserved;
c5c77ba1
JK
162
163} wid_site_survey_reslts_s;
164#endif
165
fb4ec9ca
CL
166extern s32 CoreConfiguratorInit(void);
167extern s32 CoreConfiguratorDeInit(void);
c5c77ba1 168
fb4ec9ca 169extern s32 SendConfigPkt(u8 u8Mode, tstrWID *pstrWIDs,
1e553d54 170 u32 u32WIDsCount, bool bRespRequired, u32 drvHandler);
fb4ec9ca
CL
171extern s32 ParseNetworkInfo(u8 *pu8MsgBuffer, tstrNetworkInfo **ppstrNetworkInfo);
172extern s32 DeallocateNetworkInfo(tstrNetworkInfo *pstrNetworkInfo);
c5c77ba1 173
fb4ec9ca 174extern s32 ParseAssocRespInfo(u8 *pu8Buffer, u32 u32BufferLen,
1e553d54 175 tstrConnectRespInfo **ppstrConnectRespInfo);
fb4ec9ca 176extern s32 DeallocateAssocRespInfo(tstrConnectRespInfo *pstrConnectRespInfo);
c5c77ba1
JK
177
178#ifndef CONNECT_DIRECT
fb4ec9ca 179extern s32 ParseSurveyResults(u8 ppu8RcvdSiteSurveyResults[][MAX_SURVEY_RESULT_FRAG_SIZE],
1e553d54
JL
180 wid_site_survey_reslts_s **ppstrSurveyResults,
181 u32 *pu32SurveyResultsCount);
fb4ec9ca 182extern s32 DeallocateSurveyResults(wid_site_survey_reslts_s *pstrSurveyResults);
c5c77ba1
JK
183#endif
184
fb4ec9ca 185extern s32 SendRawPacket(s8 *pspacket, s32 s32PacketLen);
4e4467fd
CL
186extern void NetworkInfoReceived(u8 *pu8Buffer, u32 u32Length);
187void GnrlAsyncInfoReceived(u8 *pu8Buffer, u32 u32Length);
188void host_int_ScanCompleteReceived(u8 *pu8Buffer, u32 u32Length);
c5c77ba1
JK
189
190#endif
This page took 0.068039 seconds and 5 git commands to generate.