2 ** $Id: //Department/DaVinci/BRANCHES/MT662X_593X_WIFI_DRIVER_V2_3/include/p2p_typedef.h#1 $
5 /*! \file p2p_typedef.h
6 \brief Declaration of data type and return values of internal protocol stack.
8 In this file we declare the data type and return values which will be exported
9 to all MGMT Protocol Stack.
12 /*******************************************************************************
13 * Copyright (c) 2010 MediaTek Inc.
15 * All rights reserved. Copying, compilation, modification, distribution
16 * or any other use whatsoever of this material is strictly prohibited
17 * except in accordance with a Software License Agreement with
19 ********************************************************************************
22 /*******************************************************************************
25 * BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND
26 * AGREES THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK
27 * SOFTWARE") RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE
28 * PROVIDED TO BUYER ON AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY
29 * DISCLAIMS ANY AND ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
30 * LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
31 * PARTICULAR PURPOSE OR NONINFRINGEMENT. NEITHER DOES MEDIATEK PROVIDE
32 * ANY WARRANTY WHATSOEVER WITH RESPECT TO THE SOFTWARE OF ANY THIRD PARTY
33 * WHICH MAY BE USED BY, INCORPORATED IN, OR SUPPLIED WITH THE MEDIATEK
34 * SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH THIRD PARTY FOR ANY
35 * WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE
36 * FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S SPECIFICATION OR TO
37 * CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
39 * BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
40 * LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL
41 * BE, AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT
42 * ISSUE, OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY
43 * BUYER TO MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
45 * THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
46 * WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT
47 * OF LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING
48 * THEREOF AND RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN
49 * FRANCISCO, CA, UNDER THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE
51 ********************************************************************************
55 #ifndef _P2P_TYPEDEF_H
56 #define _P2P_TYPEDEF_H
58 #if CFG_ENABLE_WIFI_DIRECT
60 /*******************************************************************************
61 * C O M P I L E R F L A G S
62 ********************************************************************************
65 /*******************************************************************************
66 * E X T E R N A L R E F E R E N C E S
67 ********************************************************************************
70 /*******************************************************************************
72 ********************************************************************************
75 /*******************************************************************************
77 ********************************************************************************
81 * type definition of pointer to p2p structure
83 //typedef struct _GL_P2P_INFO_T GL_P2P_INFO_T, *P_GL_P2P_INFO_T;
84 typedef struct _P2P_INFO_T P2P_INFO_T, *P_P2P_INFO_T;
86 typedef struct _P2P_FSM_INFO_T P2P_FSM_INFO_T, *P_P2P_FSM_INFO_T;
88 typedef struct _P2P_CONNECTION_SETTINGS_T P2P_CONNECTION_SETTINGS_T, *P_P2P_CONNECTION_SETTINGS_T;
91 /* Type definition for function pointer to p2p function*/
92 typedef BOOLEAN (*P2P_LAUNCH)(
93 P_GLUE_INFO_T prGlueInfo
96 typedef BOOLEAN (*P2P_REMOVE)(
97 P_GLUE_INFO_T prGlueInfo,
98 BOOLEAN fgIsWlanLaunched
101 typedef BOOLEAN (*KAL_P2P_GET_CIPHER)(
102 IN P_GLUE_INFO_T prGlueInfo
105 typedef BOOLEAN (*KAL_P2P_GET_TKIP_CIPHER)(
106 IN P_GLUE_INFO_T prGlueInfo
109 typedef BOOLEAN (*KAL_P2P_GET_CCMP_CIPHER)(
110 IN P_GLUE_INFO_T prGlueInfo
113 typedef BOOLEAN (*KAL_P2P_GET_WSC_MODE)(
114 IN P_GLUE_INFO_T prGlueInfo
117 typedef struct net_device* (*KAL_P2P_GET_DEV_HDLR)(
118 P_GLUE_INFO_T prGlueInfo
121 typedef VOID (*KAL_P2P_SET_MULTICAST_WORK_ITEM) (
122 P_GLUE_INFO_T prGlueInfo
125 typedef VOID (*P2P_NET_REGISTER) (
126 P_GLUE_INFO_T prGlueInfo
129 typedef VOID (*P2P_NET_UNREGISTER) (
130 P_GLUE_INFO_T prGlueInfo
133 typedef VOID (*KAL_P2P_UPDATE_ASSOC_INFO)(
134 IN P_GLUE_INFO_T prGlueInfo,
135 IN PUINT_8 pucFrameBody,
136 IN UINT_32 u4FrameBodyLen,
137 IN BOOLEAN fgReassocRequest
140 typedef BOOLEAN (*P2P_VALIDATE_AUTH) (
141 IN P_ADAPTER_T prAdapter,
142 IN P_SW_RFB_T prSwRfb,
143 IN PP_STA_RECORD_T pprStaRec,
144 OUT PUINT_16 pu2StatusCode
147 typedef BOOLEAN (*P2P_VALIDATE_ASSOC_REQ) (
148 IN P_ADAPTER_T prAdapter,
149 IN P_SW_RFB_T prSwRfb,
150 OUT PUINT_16 pu4ControlFlags
153 typedef VOID (*P2P_RUN_EVENT_AAA_TX_FAIL) (
154 IN P_ADAPTER_T prAdapter,
155 IN P_STA_RECORD_T prStaRec
158 typedef BOOLEAN (*P2P_PARSE_CHECK_FOR_P2P_INFO_ELEM)(
159 IN P_ADAPTER_T prAdapter,
161 OUT PUINT_8 pucOuiType
165 typedef WLAN_STATUS (*P2P_RUN_EVENT_AAA_COMPLETE) (
166 IN P_ADAPTER_T prAdapter,
167 IN P_STA_RECORD_T prStaRec
170 typedef VOID (*P2P_PROCESS_EVENT_UPDATE_NOA_PARAM) (
171 IN P_ADAPTER_T prAdapter,
172 UINT_8 ucNetTypeIndex,
173 P_EVENT_UPDATE_NOA_PARAMS_T prEventUpdateNoaParam
176 typedef VOID (*SCAN_P2P_PROCESS_BEACON_AND_PROBE_RESP) (
177 IN P_ADAPTER_T prAdapter,
178 IN P_SW_RFB_T prSwRfb,
179 IN P_WLAN_STATUS prStatus,
180 IN P_BSS_DESC_T prBssDesc,
181 IN P_WLAN_BEACON_FRAME_T prWlanBeaconFrame
184 typedef VOID (*P2P_RX_PUBLIC_ACTION_FRAME) (
185 P_ADAPTER_T prAdapter,
186 IN P_SW_RFB_T prSwRfb
189 typedef VOID (*RLM_RSP_GENERATE_OBSS_SCAN_IE) (
190 P_ADAPTER_T prAdapter,
191 P_MSDU_INFO_T prMsduInfo
194 typedef VOID (*RLM_UPDATE_BW_BY_CH_LIST_FOR_AP)(
195 P_ADAPTER_T prAdapter,
196 P_BSS_INFO_T prBssInfo
199 typedef VOID (*RLM_PROCESS_PUBLIC_ACTION)(
200 P_ADAPTER_T prAdapter,
204 typedef VOID (*RLM_PROCESS_HT_ACTION)(
205 P_ADAPTER_T prAdapter,
209 typedef VOID (*RLM_UPDATE_PARAMS_FOR_AP)(
210 P_ADAPTER_T prAdapter,
211 P_BSS_INFO_T prBssInfo,
212 BOOLEAN fgUpdateBeacon
215 typedef VOID (*RLM_HANDLE_OBSS_STATUS_EVENT_PKT) (
216 P_ADAPTER_T prAdapter,
217 P_EVENT_AP_OBSS_STATUS_T prObssStatus
221 typedef BOOLEAN (*P2P_FUNC_VALIDATE_PROBE_REQ) (
222 IN P_ADAPTER_T prAdapter,
223 IN P_SW_RFB_T prSwRfb,
224 OUT PUINT_32 pu4ControlFlags
227 typedef VOID (*RLM_BSS_INIT_FOR_AP)(
228 P_ADAPTER_T prAdapter,
229 P_BSS_INFO_T prBssInfo
232 typedef UINT_32 (*P2P_GET_PROB_RSP_IE_TABLE_SIZE)(
236 typedef PUINT_8 (*P2P_BUILD_REASSOC_REQ_FRAME_COMMON_IES) (
237 IN P_ADAPTER_T prAdapter,
238 IN P_MSDU_INFO_T prMsduInfo,
243 typedef VOID (*P2P_FUNC_DISCONNECT) (
244 IN P_ADAPTER_T prAdapter,
245 IN P_STA_RECORD_T prStaRec,
246 IN BOOLEAN fgSendDeauth,
247 IN UINT_16 u2ReasonCode
250 typedef VOID (*P2P_FSM_RUN_EVENT_RX_DEAUTH) (
251 IN P_ADAPTER_T prAdapter,
252 IN P_STA_RECORD_T prStaRec,
253 IN P_SW_RFB_T prSwRfb
256 typedef VOID (*P2P_FSM_RUN_EVENT_RX_DISASSOC) (
257 IN P_ADAPTER_T prAdapter,
258 IN P_STA_RECORD_T prStaRec,
259 IN P_SW_RFB_T prSwRfb
262 typedef BOOLEAN (*P2P_FUN_IS_AP_MODE) (
263 IN P_P2P_FSM_INFO_T prP2pFsmInfo
266 typedef VOID (*P2P_FSM_RUN_EVENT_BEACON_TIMEOUT) (
267 IN P_ADAPTER_T prAdapter
271 typedef VOID (*P2P_FUNC_STORE_ASSOC_RSP_IE_BUFFER) (
272 IN P_ADAPTER_T prAdapter,
273 IN P_SW_RFB_T prSwRfb
277 typedef VOID (*P2P_GENERATE_P2P_IE) (
278 IN P_ADAPTER_T prAdapter,
279 IN P_MSDU_INFO_T prMsduInfo
282 typedef UINT_32 (*P2P_CALCULATE_P2P_IE_LEN) (
283 IN P_ADAPTER_T prAdapter,
284 IN ENUM_NETWORK_TYPE_INDEX_T eNetTypeIndex,
285 IN P_STA_RECORD_T prStaRec
290 /*******************************************************************************
291 * P U B L I C D A T A
292 ********************************************************************************
295 /*******************************************************************************
296 * P R I V A T E D A T A
297 ********************************************************************************
300 /*******************************************************************************
302 ********************************************************************************
305 /*******************************************************************************
306 * F U N C T I O N D E C L A R A T I O N S
307 ********************************************************************************
310 /*******************************************************************************
312 ********************************************************************************
314 #endif /*CFG_ENABLE_WIFI_DIRECT*/
316 #endif /* _P2P_TYPEDEF_H */