add rk3288 pinctrl dts code
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / mt5931 / include / p2p_typedef.h
1 /*
2 ** $Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_3/include/p2p_typedef.h#1 $
3 */
4
5 /*! \file   p2p_typedef.h
6     \brief  Declaration of data type and return values of internal protocol stack.
7
8     In this file we declare the data type and return values which will be exported
9     to all MGMT Protocol Stack.
10 */
11
12
13
14
15 #ifndef _P2P_TYPEDEF_H
16 #define _P2P_TYPEDEF_H
17
18 #if CFG_ENABLE_WIFI_DIRECT
19
20 /*******************************************************************************
21 *                         C O M P I L E R   F L A G S
22 ********************************************************************************
23 */
24
25 /*******************************************************************************
26 *                    E X T E R N A L   R E F E R E N C E S
27 ********************************************************************************
28 */
29
30 /*******************************************************************************
31 *                              C O N S T A N T S
32 ********************************************************************************
33 */
34
35 /*******************************************************************************
36 *                             D A T A   T Y P E S
37 ********************************************************************************
38 */
39
40 /*
41 * type definition of pointer to p2p structure
42 */
43 //typedef struct _GL_P2P_INFO_T   GL_P2P_INFO_T, *P_GL_P2P_INFO_T;
44 typedef struct _P2P_INFO_T     P2P_INFO_T, *P_P2P_INFO_T;
45
46 typedef struct _P2P_FSM_INFO_T          P2P_FSM_INFO_T, *P_P2P_FSM_INFO_T;
47
48 typedef struct _P2P_CONNECTION_SETTINGS_T         P2P_CONNECTION_SETTINGS_T, *P_P2P_CONNECTION_SETTINGS_T;
49
50
51 /* Type definition for function pointer to p2p function*/
52 typedef BOOLEAN (*P2P_LAUNCH)(
53     P_GLUE_INFO_T prGlueInfo
54     );
55
56 typedef BOOLEAN (*P2P_REMOVE)(
57     P_GLUE_INFO_T prGlueInfo,
58     BOOLEAN fgIsWlanLaunched
59     );
60
61 typedef BOOLEAN (*KAL_P2P_GET_CIPHER)(
62     IN P_GLUE_INFO_T prGlueInfo
63     );
64
65 typedef BOOLEAN (*KAL_P2P_GET_TKIP_CIPHER)(
66     IN P_GLUE_INFO_T prGlueInfo
67     );
68
69 typedef BOOLEAN (*KAL_P2P_GET_CCMP_CIPHER)(
70     IN P_GLUE_INFO_T prGlueInfo
71     );
72
73 typedef BOOLEAN (*KAL_P2P_GET_WSC_MODE)(
74     IN P_GLUE_INFO_T prGlueInfo
75     );
76
77 typedef struct net_device* (*KAL_P2P_GET_DEV_HDLR)(
78     P_GLUE_INFO_T prGlueInfo
79     );
80
81 typedef VOID (*KAL_P2P_SET_MULTICAST_WORK_ITEM) (
82     P_GLUE_INFO_T prGlueInfo
83     );
84
85 typedef VOID (*P2P_NET_REGISTER) (
86     P_GLUE_INFO_T prGlueInfo
87     );
88
89 typedef VOID (*P2P_NET_UNREGISTER) (
90     P_GLUE_INFO_T prGlueInfo
91     );
92
93 typedef VOID (*KAL_P2P_UPDATE_ASSOC_INFO)(
94     IN P_GLUE_INFO_T    prGlueInfo,
95     IN PUINT_8          pucFrameBody,
96     IN UINT_32          u4FrameBodyLen,
97     IN BOOLEAN          fgReassocRequest
98     );
99
100 typedef BOOLEAN (*P2P_VALIDATE_AUTH) (
101     IN P_ADAPTER_T prAdapter,
102     IN P_SW_RFB_T prSwRfb,
103     IN PP_STA_RECORD_T pprStaRec,
104     OUT PUINT_16 pu2StatusCode
105     );
106
107 typedef BOOLEAN (*P2P_VALIDATE_ASSOC_REQ) (
108     IN P_ADAPTER_T prAdapter,
109     IN P_SW_RFB_T prSwRfb,
110     OUT PUINT_16 pu4ControlFlags
111     );
112
113 typedef VOID (*P2P_RUN_EVENT_AAA_TX_FAIL) (
114     IN P_ADAPTER_T prAdapter,
115     IN P_STA_RECORD_T prStaRec
116     );
117
118 typedef BOOLEAN (*P2P_PARSE_CHECK_FOR_P2P_INFO_ELEM)(
119     IN  P_ADAPTER_T prAdapter,
120     IN  PUINT_8 pucBuf,
121     OUT PUINT_8 pucOuiType
122     );
123
124
125 typedef WLAN_STATUS (*P2P_RUN_EVENT_AAA_COMPLETE) (
126     IN P_ADAPTER_T prAdapter,
127     IN P_STA_RECORD_T prStaRec
128     );
129
130 typedef VOID (*P2P_PROCESS_EVENT_UPDATE_NOA_PARAM) (
131     IN P_ADAPTER_T    prAdapter,
132     UINT_8  ucNetTypeIndex,
133     P_EVENT_UPDATE_NOA_PARAMS_T prEventUpdateNoaParam
134     );
135
136 typedef VOID (*SCAN_P2P_PROCESS_BEACON_AND_PROBE_RESP) (
137     IN P_ADAPTER_T prAdapter,
138     IN P_SW_RFB_T prSwRfb,
139     IN P_WLAN_STATUS prStatus,
140     IN P_BSS_DESC_T prBssDesc,
141     IN P_WLAN_BEACON_FRAME_T prWlanBeaconFrame
142     );
143
144 typedef VOID (*P2P_RX_PUBLIC_ACTION_FRAME) (
145     P_ADAPTER_T     prAdapter,
146     IN P_SW_RFB_T prSwRfb
147     );
148
149 typedef VOID (*RLM_RSP_GENERATE_OBSS_SCAN_IE) (
150     P_ADAPTER_T     prAdapter,
151     P_MSDU_INFO_T   prMsduInfo
152     );
153
154 typedef VOID (*RLM_UPDATE_BW_BY_CH_LIST_FOR_AP)(
155     P_ADAPTER_T         prAdapter,
156     P_BSS_INFO_T        prBssInfo
157     );
158
159 typedef VOID (*RLM_PROCESS_PUBLIC_ACTION)(
160     P_ADAPTER_T     prAdapter,
161     P_SW_RFB_T      prSwRfb
162     );
163
164 typedef VOID (*RLM_PROCESS_HT_ACTION)(
165     P_ADAPTER_T     prAdapter,
166     P_SW_RFB_T      prSwRfb
167     );
168
169 typedef VOID (*RLM_UPDATE_PARAMS_FOR_AP)(
170     P_ADAPTER_T     prAdapter,
171     P_BSS_INFO_T    prBssInfo,
172     BOOLEAN         fgUpdateBeacon
173     );
174
175 typedef VOID (*RLM_HANDLE_OBSS_STATUS_EVENT_PKT) (
176     P_ADAPTER_T                 prAdapter,
177     P_EVENT_AP_OBSS_STATUS_T    prObssStatus
178     );
179
180
181 typedef BOOLEAN (*P2P_FUNC_VALIDATE_PROBE_REQ) (
182     IN P_ADAPTER_T prAdapter,
183     IN P_SW_RFB_T prSwRfb,
184     OUT PUINT_32 pu4ControlFlags
185     );
186
187 typedef VOID (*RLM_BSS_INIT_FOR_AP)(
188     P_ADAPTER_T     prAdapter,
189     P_BSS_INFO_T    prBssInfo
190     );
191
192 typedef UINT_32 (*P2P_GET_PROB_RSP_IE_TABLE_SIZE)(
193     VOID
194     );
195
196 typedef PUINT_8 (*P2P_BUILD_REASSOC_REQ_FRAME_COMMON_IES) (
197     IN P_ADAPTER_T prAdapter,
198     IN P_MSDU_INFO_T prMsduInfo,
199     IN PUINT_8 pucBuffer
200     );
201
202
203 typedef VOID (*P2P_FUNC_DISCONNECT) (
204     IN P_ADAPTER_T prAdapter,
205     IN P_STA_RECORD_T prStaRec,
206     IN BOOLEAN fgSendDeauth,
207     IN UINT_16 u2ReasonCode
208     );
209
210 typedef VOID (*P2P_FSM_RUN_EVENT_RX_DEAUTH) (
211     IN P_ADAPTER_T prAdapter,
212     IN P_STA_RECORD_T prStaRec,
213     IN P_SW_RFB_T      prSwRfb
214     );
215
216 typedef VOID (*P2P_FSM_RUN_EVENT_RX_DISASSOC) (
217     IN P_ADAPTER_T prAdapter,
218     IN P_STA_RECORD_T prStaRec,
219     IN P_SW_RFB_T      prSwRfb
220     );
221
222 typedef BOOLEAN (*P2P_FUN_IS_AP_MODE) (
223     IN P_P2P_FSM_INFO_T prP2pFsmInfo
224     );
225
226 typedef VOID (*P2P_FSM_RUN_EVENT_BEACON_TIMEOUT) (
227     IN P_ADAPTER_T prAdapter
228     );
229
230
231 typedef VOID (*P2P_FUNC_STORE_ASSOC_RSP_IE_BUFFER) (
232     IN P_ADAPTER_T prAdapter,
233     IN P_SW_RFB_T      prSwRfb
234     );
235
236
237 typedef VOID (*P2P_GENERATE_P2P_IE) (
238     IN P_ADAPTER_T prAdapter,
239     IN P_MSDU_INFO_T prMsduInfo
240     );
241
242 typedef UINT_32 (*P2P_CALCULATE_P2P_IE_LEN) (
243     IN P_ADAPTER_T prAdapter,
244     IN ENUM_NETWORK_TYPE_INDEX_T eNetTypeIndex,
245     IN P_STA_RECORD_T prStaRec
246     );
247
248
249
250 /*******************************************************************************
251 *                            P U B L I C   D A T A
252 ********************************************************************************
253 */
254
255 /*******************************************************************************
256 *                           P R I V A T E   D A T A
257 ********************************************************************************
258 */
259
260 /*******************************************************************************
261 *                                 M A C R O S
262 ********************************************************************************
263 */
264
265 /*******************************************************************************
266 *                  F U N C T I O N   D E C L A R A T I O N S
267 ********************************************************************************
268 */
269
270 /*******************************************************************************
271 *                              F U N C T I O N S
272 ********************************************************************************
273 */
274 #endif /*CFG_ENABLE_WIFI_DIRECT*/
275
276 #endif /* _P2P_TYPEDEF_H */
277
278