add rk3288 pinctrl dts code
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / combo_mt66xx / mt6620 / wlan / include / precomp.h
1 /*
2 ** $Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_3/include/precomp.h#2 $
3 */
4
5 /*! \file   precomp.h
6     \brief  Collection of most compiler flags are described here.
7
8     In this file we collect all compiler flags and detail the driver behavior if
9     enable/disable such switch or adjust numeric parameters.
10 */
11
12
13
14 /*
15 ** $Log: precomp.h $
16  *
17  * 07 17 2012 yuche.tsai
18  * NULL
19  * Compile no error before trial run.
20  *
21  * 01 05 2012 tsaiyuan.hsu
22  * [WCXRP00001157] [MT6620 Wi-Fi][FW][DRV] add timing measurement support for 802.11v
23  * add timing measurement support for 802.11v.
24  *
25  * 08 15 2011 cp.wu
26  * [WCXRP00000851] [MT6628 Wi-Fi][Driver] Add HIFSYS related definition to driver source tree
27  * add MT6628-specific definitions.
28  *
29  * 04 18 2011 terry.wu
30  * [WCXRP00000660] [MT6620 Wi-Fi][Driver] Remove flag CFG_WIFI_DIRECT_MOVED
31  * Remove flag CFG_WIFI_DIRECT_MOVED.
32  *
33  * 03 15 2011 eddie.chen
34  * [WCXRP00000554] [MT6620 Wi-Fi][DRV] Add sw control debug counter
35  * Add sw debug counter for QM.
36  *
37  * 01 27 2011 tsaiyuan.hsu
38  * [WCXRP00000392] [MT6620 Wi-Fi][Driver] Add Roaming Support
39  * add roaming fsm
40  * 1. not support 11r, only use strength of signal to determine roaming.
41  * 2. not enable CFG_SUPPORT_ROAMING until completion of full test.
42  * 3. in 6620, adopt work-around to avoid sign extension problem of cck of hw
43  * 4. assume that change of link quality in smooth way.
44  *
45  * 12 13 2010 cp.wu
46  * [WCXRP00000260] [MT6620 Wi-Fi][Driver][Firmware] Create V1.1 branch for both firmware and driver
47  * create branch for Wi-Fi driver v1.1
48  *
49  * 10 07 2010 cp.wu
50  * [WCXRP00000083] [MT5931][Driver][FW] Add necessary logic for MT5931 first connection
51  * add firmware download for MT5931.
52  *
53  * 10 05 2010 cp.wu
54  * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
55  * 1) add NVRAM access API
56  * 2) fake scanning result when NVRAM doesn't exist and/or version mismatch. (off by compiler option)
57  * 3) add OID implementation for NVRAM read/write service
58  *
59  * 09 21 2010 kevin.huang
60  * [WCXRP00000052] [MT6620 Wi-Fi][Driver] Eliminate Linux Compile Warning
61  * Isolate P2P related function for Hardware Software Bundle
62  *
63  * 09 14 2010 chinghwa.yu
64  * NULL
65  * Fix BOW_FSM_INFO_T dependence.
66  *
67  * 09 03 2010 kevin.huang
68  * NULL
69  * Refine #include sequence and solve recursive/nested #include issue
70  *
71  * 07 20 2010 wh.su
72  *
73  * adding the wapi code.
74  *
75  * 07 08 2010 cp.wu
76  *
77  * [WPD00003833] [MT6620 and MT5931] Driver migration - move to new repository.
78  *
79  * 07 08 2010 cm.chang
80  * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
81  * Check draft RLM code for HT cap
82  *
83  * 07 01 2010 cm.chang
84  * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
85  * Modify CNM message handler for new flow
86  *
87  * 06 28 2010 cm.chang
88  * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
89  * 1st draft code for RLM module
90  *
91  * 06 19 2010 wh.su
92  * [WPD00003840][MT6620 5931] Security migration
93  * consdier the concurrent network setting.
94  *
95  * 06 18 2010 wh.su
96  * [WPD00003840][MT6620 5931] Security migration
97  * migration the security related function from firmware.
98  *
99  * 06 18 2010 wh.su
100  * [WPD00003840][MT6620 5931] Security migration
101  * migration from MT6620 firmware.
102  *
103  * 06 08 2010 cp.wu
104  * [WPD00003833][MT6620 and MT5931] Driver migration
105  * add hem_mbox.c and cnm_mem.h (but disabled some feature) for further migration
106  *
107  * 06 07 2010 cp.wu
108  * [WPD00003833][MT6620 and MT5931] Driver migration
109  * merge cnm_scan.h and hem_mbox.h
110  *
111  * 06 07 2010 cp.wu
112  * [WPD00003833][MT6620 and MT5931] Driver migration
113  * merge wifi_var.h, precomp.h, cnm_timer.h (data type only)
114  *
115  * 06 06 2010 kevin.huang
116  * [WPD00003832][MT6620 5931] Create driver base
117  * [MT6620 5931] Create driver base
118  *
119  * 05 17 2010 cp.wu
120  * [WPD00003831][MT6620 Wi-Fi] Add framework for Wi-Fi Direct support
121  * 1) add timeout handler mechanism for pending command packets
122  * 2) add p2p add/removal key
123  *
124  * 04 13 2010 cp.wu
125  * [WPD00003823][MT6620 Wi-Fi] Add Bluetooth-over-Wi-Fi support
126  * add framework for BT-over-Wi-Fi support.
127  *  *  *  *  *  *  *  *  *  *  * 1) prPendingCmdInfo is replaced by queue for multiple handler capability
128  *  *  *  *  *  *  *  *  *  *  * 2) command sequence number is now increased atomically
129  *  *  *  *  *  *  *  *  *  *  * 3) private data could be hold and taken use for other purpose
130  *
131  * 03 16 2010 cp.wu
132  * [WPD00003823][MT6620 Wi-Fi] Add Bluetooth-over-Wi-Fi support
133  * build up basic data structure and definitions to support BT-over-WiFi
134  *
135  * 02 08 2010 cp.wu
136  * [WPD00001943]Create WiFi test driver framework on WinXP
137  * prepare for implementing fw download logic
138  *
139  * 01 27 2010 wh.su
140  * [WPD00003816][MT6620 Wi-Fi] Adding the security support
141  * .
142 **  \main\maintrunk.MT6620WiFiDriver_Prj\9 2009-12-08 11:30:58 GMT mtk02752
143 **  add rftest.h for implementing RF test mode in driver land
144 **  \main\maintrunk.MT6620WiFiDriver_Prj\8 2009-11-23 22:02:00 GMT mtk02468
145 **  Added que_mgt.h
146 **  \main\maintrunk.MT6620WiFiDriver_Prj\7 2009-10-13 21:58:36 GMT mtk01084
147 **  update for new macro define
148 **  \main\maintrunk.MT6620WiFiDriver_Prj\6 2009-04-21 09:40:11 GMT mtk01461
149 **  Add nic_cmd_event.h
150 **  \main\maintrunk.MT6620WiFiDriver_Prj\5 2009-04-17 20:00:26 GMT mtk01461
151 **  Add cmd_buf.h
152 **  \main\maintrunk.MT6620WiFiDriver_Prj\4 2009-03-19 18:32:44 GMT mtk01084
153 **  update for basic power management functions
154 **  \main\maintrunk.MT6620WiFiDriver_Prj\3 2009-03-16 09:08:25 GMT mtk01461
155 **  Update TX PATH API
156 **  \main\maintrunk.MT6620WiFiDriver_Prj\2 2009-03-10 20:11:38 GMT mtk01426
157 **  Init for develop
158 **
159 */
160
161 #ifndef _PRECOMP_H
162 #define _PRECOMP_H
163
164 /*******************************************************************************
165 *                         C O M P I L E R   F L A G S
166 ********************************************************************************
167 */
168
169 /*******************************************************************************
170 *                    E X T E R N A L   R E F E R E N C E S
171 ********************************************************************************
172 */
173 #include "gl_os.h" // Include "config.h"
174
175 #if CFG_ENABLE_WIFI_DIRECT
176 #include "gl_p2p_os.h"
177 #endif
178
179 #include "debug.h"
180
181 #include "link.h"
182 #include "queue.h"
183
184
185 /*------------------------------------------------------------------------------
186  * .\include\mgmt
187  *------------------------------------------------------------------------------
188  */
189 #include "wlan_typedef.h"
190
191 #include "mac.h"
192
193 /* Dependency:  mac.h (MAC_ADDR_LEN) */
194 #include "wlan_def.h"
195
196 #if CFG_SUPPORT_SWCR
197 #include "swcr.h"
198 #endif
199
200 /*------------------------------------------------------------------------------
201  * .\include\nic
202  *------------------------------------------------------------------------------
203  */
204 /* Dependency:  wlan_def.h (ENUM_NETWORK_TYPE_T) */
205 #include "cmd_buf.h"
206
207 /* Dependency:  mac.h (MAC_ADDR_LEN) */
208 #include "nic_cmd_event.h"
209
210 /* Dependency:  nic_cmd_event.h (P_EVENT_CONNECTION_STATUS) */
211 #include "nic.h"
212
213 #include "nic_init_cmd_event.h"
214
215 #include "hif_rx.h"
216 #include "hif_tx.h"
217
218 #include "nic_tx.h"
219
220 /* Dependency:  hif_rx.h (P_HIF_RX_HEADER_T) */
221 #include "nic_rx.h"
222
223 #include "que_mgt.h"
224
225 #if CFG_ENABLE_WIFI_DIRECT
226 #include "p2p_typedef.h"
227 #include "p2p_cmd_buf.h"
228 #include "p2p_nic_cmd_event.h"
229 #include "p2p_mac.h"
230 #include "p2p_nic.h"
231 #endif
232
233
234 /*------------------------------------------------------------------------------
235  * .\include\mgmt
236  *------------------------------------------------------------------------------
237  */
238
239 #include "hem_mbox.h"
240
241 #include "scan.h"
242 #include "bss.h"
243
244 #include "wlan_lib.h"
245 #include "wlan_oid.h"
246 #include "wlan_bow.h"
247
248 #if CFG_ENABLE_WIFI_DIRECT
249 #include "wlan_p2p.h"
250 #endif
251
252 #include "hal.h"
253
254 #if defined(MT6620)
255     #include "mt6620_reg.h"
256 #elif defined(MT5931)
257     #include "mt5931_reg.h"
258 #elif defined(MT6628)
259     #include "mt6628_reg.h"
260 #endif
261
262 #include "rlm.h"
263 #include "rlm_domain.h"
264 #include "rlm_protection.h"
265 #include "rlm_obss.h"
266 #include "rate.h"
267 #if CFG_SUPPORT_802_11V
268 #include "wnm.h"
269 #endif
270
271 #include "aa_fsm.h"
272
273 #include "cnm_timer.h"
274
275
276 #if CFG_ENABLE_BT_OVER_WIFI
277 #include "bow.h"
278 #include "bow_fsm.h"
279 #endif
280
281 #include "pwr_mgt.h"
282
283
284 #include "cnm.h"
285 /* Dependency:  aa_fsm.h (ENUM_AA_STATE_T), p2p_fsm.h (WPS_ATTRI_MAX_LEN_DEVICE_NAME) */
286 #include "cnm_mem.h"
287 #include "cnm_scan.h"
288
289
290 #if CFG_ENABLE_WIFI_DIRECT
291 #include "p2p_rlm_obss.h"
292 #include "p2p_bss.h"
293 #include "p2p.h"
294 #include "p2p_fsm.h"
295 #include "p2p_scan.h"
296 #include "p2p_state.h"
297 #include "p2p_func.h"
298 #include "p2p_rlm.h"
299 #include "p2p_assoc.h"
300 #include "p2p_ie.h"
301 #endif
302
303 #include "privacy.h"
304
305 #include "mib.h"
306
307 #include "auth.h"
308 #include "assoc.h"
309
310 #if CFG_SUPPORT_ROAMING
311 #include "roaming_fsm.h"
312 #endif /* CFG_SUPPORT_ROAMING */
313
314 #include "ais_fsm.h"
315
316
317 #include "adapter.h"
318
319
320 #include "que_mgt.h"
321 #include "rftest.h"
322
323
324 #if CFG_RSN_MIGRATION
325 #include "rsn.h"
326 #include "sec_fsm.h"
327 #endif
328
329 #if CFG_SUPPORT_WAPI
330 #include "wapi.h"
331 #endif
332
333 /*------------------------------------------------------------------------------
334  * NVRAM structure
335  *------------------------------------------------------------------------------
336  */
337 #include "CFG_Wifi_File.h"
338
339 #if CFG_ENABLE_WIFI_DIRECT
340 #include "gl_p2p_kal.h"
341 #endif
342
343 /*******************************************************************************
344 *                              C O N S T A N T S
345 ********************************************************************************
346 */
347
348 /*******************************************************************************
349 *                             D A T A   T Y P E S
350 ********************************************************************************
351 */
352
353 /*******************************************************************************
354 *                            P U B L I C   D A T A
355 ********************************************************************************
356 */
357
358 /*******************************************************************************
359 *                           P R I V A T E   D A T A
360 ********************************************************************************
361 */
362
363 /*******************************************************************************
364 *                                 M A C R O S
365 ********************************************************************************
366 */
367
368 /*******************************************************************************
369 *                  F U N C T I O N   D E C L A R A T I O N S
370 ********************************************************************************
371 */
372
373 /*******************************************************************************
374 *                              F U N C T I O N S
375 ********************************************************************************
376 */
377
378 #endif /* _PRECOMP_H */
379
380