2 ** $Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_2/include/precomp.h#1 $
6 \brief Collection of most compiler flags are described here.
8 In this file we collect all compiler flags and detail the driver behavior if
9 enable/disable such switch or adjust numeric parameters.
12 /*******************************************************************************
13 * Copyright (c) 2007 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 ********************************************************************************
57 * 10 19 2011 yuche.tsai
58 * [WCXRP00001045] [WiFi Direct][Driver] Check 2.1 branch.
60 * Davinci Maintrunk Label: MT6620_WIFI_DRIVER_FW_TRUNK_MT6620E5_111019_0926.
63 * [WCXRP00000660] [MT6620 Wi-Fi][Driver] Remove flag CFG_WIFI_DIRECT_MOVED
64 * Remove flag CFG_WIFI_DIRECT_MOVED.
67 * [WCXRP00000577] [MT6620 Wi-Fi][Driver][FW] Create V2.0 branch for firmware and driver
68 * create V2.0 driver release based on label "MT6620_WIFI_DRIVER_V2_0_110318_1600" from main trunk
70 * 03 15 2011 eddie.chen
71 * [WCXRP00000554] [MT6620 Wi-Fi][DRV] Add sw control debug counter
72 * Add sw debug counter for QM.
74 * 01 27 2011 tsaiyuan.hsu
75 * [WCXRP00000392] [MT6620 Wi-Fi][Driver] Add Roaming Support
77 * 1. not support 11r, only use strength of signal to determine roaming.
78 * 2. not enable CFG_SUPPORT_ROAMING until completion of full test.
79 * 3. in 6620, adopt work-around to avoid sign extension problem of cck of hw
80 * 4. assume that change of link quality in smooth way.
83 * [WCXRP00000260] [MT6620 Wi-Fi][Driver][Firmware] Create V1.1 branch for both firmware and driver
84 * create branch for Wi-Fi driver v1.1
87 * [WCXRP00000083] [MT5931][Driver][FW] Add necessary logic for MT5931 first connection
88 * add firmware download for MT5931.
91 * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
92 * 1) add NVRAM access API
93 * 2) fake scanning result when NVRAM doesn't exist and/or version mismatch. (off by compiler option)
94 * 3) add OID implementation for NVRAM read/write service
96 * 09 21 2010 kevin.huang
97 * [WCXRP00000052] [MT6620 Wi-Fi][Driver] Eliminate Linux Compile Warning
98 * Isolate P2P related function for Hardware Software Bundle
100 * 09 14 2010 chinghwa.yu
102 * Fix BOW_FSM_INFO_T dependence.
104 * 09 03 2010 kevin.huang
106 * Refine #include sequence and solve recursive/nested #include issue
110 * adding the wapi code.
114 * [WPD00003833] [MT6620 and MT5931] Driver migration - move to new repository.
116 * 07 08 2010 cm.chang
117 * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
118 * Check draft RLM code for HT cap
120 * 07 01 2010 cm.chang
121 * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
122 * Modify CNM message handler for new flow
124 * 06 28 2010 cm.chang
125 * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
126 * 1st draft code for RLM module
129 * [WPD00003840][MT6620 5931] Security migration
130 * consdier the concurrent network setting.
133 * [WPD00003840][MT6620 5931] Security migration
134 * migration the security related function from firmware.
137 * [WPD00003840][MT6620 5931] Security migration
138 * migration from MT6620 firmware.
141 * [WPD00003833][MT6620 and MT5931] Driver migration
142 * add hem_mbox.c and cnm_mem.h (but disabled some feature) for further migration
145 * [WPD00003833][MT6620 and MT5931] Driver migration
146 * merge cnm_scan.h and hem_mbox.h
149 * [WPD00003833][MT6620 and MT5931] Driver migration
150 * merge wifi_var.h, precomp.h, cnm_timer.h (data type only)
152 * 06 06 2010 kevin.huang
153 * [WPD00003832][MT6620 5931] Create driver base
154 * [MT6620 5931] Create driver base
157 * [WPD00003831][MT6620 Wi-Fi] Add framework for Wi-Fi Direct support
158 * 1) add timeout handler mechanism for pending command packets
159 * 2) add p2p add/removal key
162 * [WPD00003823][MT6620 Wi-Fi] Add Bluetooth-over-Wi-Fi support
163 * add framework for BT-over-Wi-Fi support.
164 * * * * * * * * * * * 1) prPendingCmdInfo is replaced by queue for multiple handler capability
165 * * * * * * * * * * * 2) command sequence number is now increased atomically
166 * * * * * * * * * * * 3) private data could be hold and taken use for other purpose
169 * [WPD00003823][MT6620 Wi-Fi] Add Bluetooth-over-Wi-Fi support
170 * build up basic data structure and definitions to support BT-over-WiFi
173 * [WPD00001943]Create WiFi test driver framework on WinXP
174 * prepare for implementing fw download logic
177 * [WPD00003816][MT6620 Wi-Fi] Adding the security support
179 ** \main\maintrunk.MT6620WiFiDriver_Prj\9 2009-12-08 11:30:58 GMT mtk02752
180 ** add rftest.h for implementing RF test mode in driver land
181 ** \main\maintrunk.MT6620WiFiDriver_Prj\8 2009-11-23 22:02:00 GMT mtk02468
183 ** \main\maintrunk.MT6620WiFiDriver_Prj\7 2009-10-13 21:58:36 GMT mtk01084
184 ** update for new macro define
185 ** \main\maintrunk.MT6620WiFiDriver_Prj\6 2009-04-21 09:40:11 GMT mtk01461
186 ** Add nic_cmd_event.h
187 ** \main\maintrunk.MT6620WiFiDriver_Prj\5 2009-04-17 20:00:26 GMT mtk01461
189 ** \main\maintrunk.MT6620WiFiDriver_Prj\4 2009-03-19 18:32:44 GMT mtk01084
190 ** update for basic power management functions
191 ** \main\maintrunk.MT6620WiFiDriver_Prj\3 2009-03-16 09:08:25 GMT mtk01461
192 ** Update TX PATH API
193 ** \main\maintrunk.MT6620WiFiDriver_Prj\2 2009-03-10 20:11:38 GMT mtk01426
201 /*******************************************************************************
202 * C O M P I L E R F L A G S
203 ********************************************************************************
206 /*******************************************************************************
207 * E X T E R N A L R E F E R E N C E S
208 ********************************************************************************
210 #include "gl_os.h" // Include "config.h"
218 /*------------------------------------------------------------------------------
220 *------------------------------------------------------------------------------
222 #include "wlan_typedef.h"
226 /* Dependency: mac.h (MAC_ADDR_LEN) */
227 #include "wlan_def.h"
233 /*------------------------------------------------------------------------------
235 *------------------------------------------------------------------------------
237 /* Dependency: wlan_def.h (ENUM_NETWORK_TYPE_T) */
240 /* Dependency: mac.h (MAC_ADDR_LEN) */
241 #include "nic_cmd_event.h"
243 /* Dependency: nic_cmd_event.h (P_EVENT_CONNECTION_STATUS) */
246 #include "nic_init_cmd_event.h"
253 /* Dependency: hif_rx.h (P_HIF_RX_HEADER_T) */
258 #if CFG_ENABLE_WIFI_DIRECT
259 #include "p2p_typedef.h"
263 /*------------------------------------------------------------------------------
265 *------------------------------------------------------------------------------
268 #include "hem_mbox.h"
273 #include "wlan_lib.h"
274 #include "wlan_oid.h"
275 #include "wlan_bow.h"
280 #include "mt6620_reg.h"
281 #elif defined(MT5931)
282 #include "mt5931_reg.h"
283 #elif defined(MT6628)
284 #include "mt6628_reg.h"
288 #include "rlm_domain.h"
289 #include "rlm_protection.h"
290 #include "rlm_obss.h"
296 #include "cnm_timer.h"
298 #if CFG_ENABLE_BT_OVER_WIFI
307 /* Dependency: aa_fsm.h (ENUM_AA_STATE_T), p2p_fsm.h (WPS_ATTRI_MAX_LEN_DEVICE_NAME) */
309 #include "cnm_scan.h"
319 #if CFG_SUPPORT_ROAMING
320 #include "roaming_fsm.h"
321 #endif /* CFG_SUPPORT_ROAMING */
333 #if CFG_RSN_MIGRATION
342 /*------------------------------------------------------------------------------
344 *------------------------------------------------------------------------------
346 #include "CFG_Wifi_File.h"
348 /*******************************************************************************
350 ********************************************************************************
353 /*******************************************************************************
355 ********************************************************************************
358 /*******************************************************************************
359 * P U B L I C D A T A
360 ********************************************************************************
363 /*******************************************************************************
364 * P R I V A T E D A T A
365 ********************************************************************************
368 /*******************************************************************************
370 ********************************************************************************
373 /*******************************************************************************
374 * F U N C T I O N D E C L A R A T I O N S
375 ********************************************************************************
378 /*******************************************************************************
380 ********************************************************************************
383 #endif /* _PRECOMP_H */