staging: wilc1000: remove spi_max_speed of wilc_wlan_io_func_t
[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 14#include "wilc_wlan_if.h"
36cca3ba 15
c5c77ba1 16#define NUM_BASIC_SWITCHES 45
13994d1e 17#define NUM_FHSS_SWITCHES 0
c5c77ba1 18
13994d1e 19#define NUM_RSSI 5
c5c77ba1
JK
20
21#ifdef MAC_802_11N
22#define NUM_11N_BASIC_SWITCHES 25
23#define NUM_11N_HUT_SWITCHES 47
36cca3ba 24#else
c5c77ba1
JK
25#define NUM_11N_BASIC_SWITCHES 0
26#define NUM_11N_HUT_SWITCHES 0
36cca3ba 27#endif
c5c77ba1 28
36cca3ba 29#define MAC_HDR_LEN 24
c5c77ba1
JK
30#define MAX_SSID_LEN 33
31#define FCS_LEN 4
32#define TIME_STAMP_LEN 8
33#define BEACON_INTERVAL_LEN 2
34#define CAP_INFO_LEN 2
35#define STATUS_CODE_LEN 2
36#define AID_LEN 2
37#define IE_HDR_LEN 2
38
c5c77ba1 39#define SET_CFG 0
c5c77ba1
JK
40#define GET_CFG 1
41
13994d1e
SK
42#define MAX_STRING_LEN 256
43#define MAX_SURVEY_RESULT_FRAG_SIZE MAX_STRING_LEN
44#define SURVEY_RESULT_LENGTH 44
45#define MAX_ASSOC_RESP_FRAME_SIZE MAX_STRING_LEN
c5c77ba1 46
13994d1e
SK
47#define MAC_CONNECTED 1
48#define MAC_DISCONNECTED 0
c5c77ba1 49
d85f5326 50#define MAKE_WORD16(lsb, msb) ((((u16)(msb) << 8) & 0xFF00) | (lsb))
4e4467fd 51#define MAKE_WORD32(lsw, msw) ((((u32)(msw) << 16) & 0xFFFF0000) | (lsw))
c5c77ba1 52
c5c77ba1 53typedef enum {
13994d1e
SK
54 SUCCESSFUL_STATUSCODE = 0,
55 UNSPEC_FAIL = 1,
56 UNSUP_CAP = 10,
57 REASOC_NO_ASOC = 11,
58 FAIL_OTHER = 12,
59 UNSUPT_ALG = 13,
60 AUTH_SEQ_FAIL = 14,
61 CHLNG_FAIL = 15,
62 AUTH_TIMEOUT = 16,
63 AP_FULL = 17,
64 UNSUP_RATE = 18,
65 SHORT_PREAMBLE_UNSUP = 19,
66 PBCC_UNSUP = 20,
67 CHANNEL_AGIL_UNSUP = 21,
68 SHORT_SLOT_UNSUP = 25,
69 OFDM_DSSS_UNSUP = 26,
c5c77ba1
JK
70 CONNECT_STS_FORCE_16_BIT = 0xFFFF
71} tenuConnectSts;
72
e9e0c260 73struct wid {
daaf16ba 74 u16 id;
50327db7 75 enum wid_type type;
2fd3e443 76 s32 size;
900bb4a6 77 s8 *val;
e9e0c260 78};
c5c77ba1
JK
79
80typedef struct {
63d03e47
GKH
81 u8 u8Full;
82 u8 u8Index;
ca356ada 83 s8 as8RSSI[NUM_RSSI];
c5c77ba1 84} tstrRSSI;
36cca3ba 85
c5c77ba1 86typedef struct {
ca356ada 87 s8 s8rssi;
d85f5326 88 u16 u16CapInfo;
63d03e47
GKH
89 u8 au8ssid[MAX_SSID_LEN];
90 u8 u8SsidLen;
91 u8 au8bssid[6];
d85f5326 92 u16 u16BeaconPeriod;
63d03e47
GKH
93 u8 u8DtimPeriod;
94 u8 u8channel;
36cca3ba 95 unsigned long u32TimeRcvdInScanCached;
c5c77ba1 96 unsigned long u32TimeRcvdInScan;
72ed4dc7 97 bool bNewNetwork;
63d03e47 98 u8 u8Found;
36cca3ba 99 u32 u32Tsf;
63d03e47 100 u8 *pu8IEs;
d85f5326 101 u16 u16IEsLen;
c5c77ba1
JK
102 void *pJoinParams;
103 tstrRSSI strRssi;
36cca3ba 104 u64 u64Tsf;
c5c77ba1
JK
105} tstrNetworkInfo;
106
c5c77ba1 107typedef struct {
d85f5326
CL
108 u16 u16capability;
109 u16 u16ConnectStatus;
110 u16 u16AssocID;
63d03e47 111 u8 *pu8RespIEs;
d85f5326 112 u16 u16RespIEsLen;
c5c77ba1
JK
113} tstrConnectRespInfo;
114
c5c77ba1 115typedef struct {
63d03e47
GKH
116 u8 au8bssid[6];
117 u8 *pu8ReqIEs;
c5c77ba1 118 size_t ReqIEsLen;
63d03e47 119 u8 *pu8RespIEs;
d85f5326
CL
120 u16 u16RespIEsLen;
121 u16 u16ConnectStatus;
c5c77ba1
JK
122} tstrConnectInfo;
123
c5c77ba1 124typedef struct {
d85f5326 125 u16 u16reason;
63d03e47 126 u8 *ie;
c5c77ba1
JK
127 size_t ie_len;
128} tstrDisconnectNotifInfo;
129
e9e0c260 130s32 send_config_pkt(u8 mode, struct wid *wids, u32 count, u32 drv);
a1f7f642 131s32 parse_network_info(u8 *pu8MsgBuffer, tstrNetworkInfo **ppstrNetworkInfo);
b3ff2910 132s32 DeallocateNetworkInfo(tstrNetworkInfo *pstrNetworkInfo);
c5c77ba1 133
b3ff2910
JP
134s32 ParseAssocRespInfo(u8 *pu8Buffer, u32 u32BufferLen,
135 tstrConnectRespInfo **ppstrConnectRespInfo);
136s32 DeallocateAssocRespInfo(tstrConnectRespInfo *pstrConnectRespInfo);
c5c77ba1 137
b3ff2910 138void NetworkInfoReceived(u8 *pu8Buffer, u32 u32Length);
4e4467fd
CL
139void GnrlAsyncInfoReceived(u8 *pu8Buffer, u32 u32Length);
140void host_int_ScanCompleteReceived(u8 *pu8Buffer, u32 u32Length);
c5c77ba1
JK
141
142#endif
This page took 0.207664 seconds and 5 git commands to generate.