config.h 59 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630
  1. /*
  2. ** Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_3/include/config.h#2
  3. */
  4. /*! \file "config.h"
  5. \brief This file includes the various configurable parameters for customers
  6. This file ncludes the configurable parameters except the parameters indicate the turning-on/off of some features
  7. */
  8. /*
  9. ** Log: config.h
  10. *
  11. * 07 13 2012 cp.wu
  12. * [WCXRP00001259] [MT6620 Wi-Fi][Driver][Firmware] Send a signal to firmware for
  13. * termination after SDIO error has happened
  14. * [driver domain] add force reset by host-to-device interrupt mechanism
  15. *
  16. * 06 13 2012 yuche.tsai
  17. * NULL
  18. * Update maintrunk driver.
  19. * Add support for driver compose assoc request frame.
  20. *
  21. * 06 05 2012 tsaiyuan.hsu
  22. * [WCXRP00001249] [ALPS.ICS] Daily build warning on "wlan/mgmt/swcr.c#1"
  23. * resolve build waring for "WNM_UNIT_TEST not defined"..
  24. *
  25. * 06 04 2012 cp.wu
  26. * [WCXRP00001245] [MT6620 Wi-Fi][Driver][Firmware] NPS Software Development
  27. * discussed with WH, privacy bit in associate response is not necessary to be checked,
  28. * and identified as association failure when mismatching with beacon/probe response
  29. *
  30. * 05 11 2012 cp.wu
  31. * [WCXRP00001237] [MT6620 Wi-Fi][Driver] Show MAC address and MAC address source for ACS's convenience
  32. * show MAC address & source while initiliazation
  33. *
  34. * 04 20 2012 cp.wu
  35. * [WCXRP00000913] [MT6620 Wi-Fi] create repository of source code dedicated for MT6620 E6 ASIC
  36. * correct macro
  37. *
  38. * 04 12 2012 terry.wu
  39. * NULL
  40. * Add AEE message support
  41. * 1) Show AEE warning(red screen) if SDIO access error occurs
  42. *
  43. * 03 29 2012 eason.tsai
  44. * [WCXRP00001216] [MT6628 Wi-Fi][Driver]add conditional define
  45. * add conditional define.
  46. *
  47. * 03 02 2012 terry.wu
  48. * NULL
  49. * Enable CFG80211 Support.
  50. *
  51. * 01 05 2012 tsaiyuan.hsu
  52. * [WCXRP00001157] [MT6620 Wi-Fi][FW][DRV] add timing measurement support for 802.11v
  53. * add timing measurement support for 802.11v.
  54. *
  55. * 11 23 2011 cp.wu
  56. * [WCXRP00001123] [MT6620 Wi-Fi][Driver] Add option to disable beacon content change detection
  57. * add compile option to disable beacon content change detection.
  58. *
  59. * 11 18 2011 yuche.tsai
  60. * NULL
  61. * CONFIG P2P support RSSI query, default turned off.
  62. *
  63. * 10 28 2011 cp.wu
  64. * [MT6620 Wi-Fi][Win32 Driver] Enable 5GHz support as default
  65. * enable 5GHz as default for DaVinci trunk and V2.1 driver release .
  66. *
  67. * 10 18 2011 cp.wu
  68. * [WCXRP00001022] [MT6628 Driver][Firmware Download] Add multi section independent download functionality
  69. * surpress compiler warning for MT6628 build
  70. *
  71. * 10 12 2011 wh.su
  72. * [WCXRP00001036] [MT6620 Wi-Fi][Driver][FW] Adding the 802.11w code for MFP
  73. * adding the 802.11w related function and define .
  74. *
  75. * 10 03 2011 cp.wu
  76. * [WCXRP00001022] [MT6628 Driver][Firmware Download] Add multi section independent download functionality
  77. * enable divided firmware downloading.
  78. *
  79. * 10 03 2011 cp.wu
  80. * [WCXRP00001022] [MT6628 Driver][Firmware Download] Add multi section independent download functionality
  81. * add firmware download path in divided scatters.
  82. *
  83. * 10 03 2011 cp.wu
  84. * [MT6628 Driver][Firmware Download] Add multi section independent download functionality
  85. * add firmware downloading aggregated path.
  86. *
  87. * 09 28 2011 tsaiyuan.hsu
  88. * [WCXRP00000900] [MT5931 Wi-Fi] Improve balance of TX and RX
  89. * enlarge window size only by 4.
  90. *
  91. * 08 15 2011 cp.wu
  92. * [WCXRP00000851] [MT6628 Wi-Fi][Driver] Add HIFSYS related definition to driver source tree
  93. * reuse firmware download logic of MT6620 for MT6628.
  94. *
  95. * 08 15 2011 cp.wu
  96. * [WCXRP00000851] [MT6628 Wi-Fi][Driver] Add HIFSYS related definition to driver source tree
  97. * add MT6628-specific definitions.
  98. *
  99. * 08 15 2011 cp.wu
  100. * [WCXRP00000913] [MT6620 Wi-Fi] create repository of source code dedicated for MT6620 E6 ASIC
  101. * support to load different firmware image for E3/E4/E5 and E6 ASIC on win32 platforms.
  102. *
  103. * 08 12 2011 cp.wu
  104. * [WCXRP00000913] [MT6620 Wi-Fi] create repository of source code dedicated for MT6620 E6 ASIC
  105. * load WIFI_RAM_CODE_E6 for MT6620 E6 ASIC.
  106. *
  107. * 08 09 2011 chinghwa.yu
  108. * [WCXRP00000063] Update BCM CoEx design and settings
  109. * Add BWCS definition for MT6620.
  110. *
  111. * 07 28 2011 chinghwa.yu
  112. * [WCXRP00000063] Update BCM CoEx design and settings
  113. * Add BWCS cmd and event.
  114. *
  115. * 07 22 2011 jeffrey.chang
  116. * [WCXRP00000864] [MT5931] Add command to adjust OSC stable time
  117. * modify driver to set OSC stable time after f/w download
  118. *
  119. * 07 18 2011 chinghwa.yu
  120. * [WCXRP00000063] Update BCM CoEx design and settings[WCXRP00000612] [MT6620 Wi-Fi] [FW] CSD update SWRDD algorithm
  121. * Add CMD/Event for RDD and BWCS.
  122. *
  123. * 07 05 2011 yuche.tsai
  124. * [WCXRP00000821] [Volunteer Patch][WiFi Direct][Driver] WiFi Direct Connection Speed Issue
  125. * Refine compile flag.
  126. *
  127. * 07 05 2011 yuche.tsai
  128. * [WCXRP00000821] [Volunteer Patch][WiFi Direct][Driver] WiFi Direct Connection Speed Issue
  129. * Add wifi direct connection enhancement method I, II & VI.
  130. *
  131. * 06 24 2011 cp.wu
  132. * [WCXRP00000702] [MT5931][Driver] Modify initialization sequence for E1 ASIC
  133. * [WCXRP00000812] [MT6620 Wi-Fi][Driver] not show NVRAM when there is no valid MAC address in NVRAM content
  134. * increase RX buffer number to have a 2:1 ping-pong ratio
  135. *
  136. * 06 23 2011 eddie.chen
  137. * [WCXRP00000810] [MT5931][DRV/FW] Adjust TxRx Buffer number and Rx buffer size
  138. * 1. Different TX RX buffer
  139. * 2. Enlarge RX buffer and increase the number 8->11
  140. * 3. Separate the WINSZIE and RX buffer number
  141. * 4. Fix RX maximum size in MAC
  142. *
  143. * 06 20 2011 terry.wu
  144. * NULL
  145. * Add BoW Rate Limitation.
  146. *
  147. * 06 17 2011 terry.wu
  148. * NULL
  149. * .
  150. *
  151. * 06 17 2011 terry.wu
  152. * NULL
  153. * Add BoW 11N support.
  154. *
  155. * 06 07 2011 yuche.tsai
  156. * [WCXRP00000763] [Volunteer Patch][MT6620][Driver] RX Service Discovery Frame under AP mode Issue
  157. * Add compile flag for persistent group support.
  158. *
  159. * 06 01 2011 cm.chang
  160. * [WCXRP00000756] [MT6620 Wi-Fi][Driver] 1. AIS follow channel of BOW 2. Provide legal channel function
  161. * Limit AIS to fixed channel same with BOW
  162. *
  163. * 04 18 2011 terry.wu
  164. * [WCXRP00000660] [MT6620 Wi-Fi][Driver] Remove flag CFG_WIFI_DIRECT_MOVED
  165. * Remove flag CFG_WIFI_DIRECT_MOVED.
  166. *
  167. * 04 14 2011 cm.chang
  168. * [WCXRP00000634] [MT6620 Wi-Fi][Driver][FW] 2nd BSS will not support 40MHz bandwidth for concurrency
  169. * Enable RX STBC capability
  170. *
  171. * 04 11 2011 george.huang
  172. * [WCXRP00000628] [MT6620 Wi-Fi][FW][Driver] Modify U-APSD setting to default OFF
  173. * .
  174. *
  175. * 04 08 2011 pat.lu
  176. * [WCXRP00000623] [MT6620 Wi-Fi][Driver] use ARCH define to distinguish PC Linux driver
  177. * Use CONFIG_X86 instead of PC_LINUX_DRIVER_USE option to have proper compile setting for PC Linux driver
  178. *
  179. * 04 08 2011 cp.wu
  180. * [WCXRP00000540] [MT5931][Driver] Add eHPI8/eHPI16 support to Linux Glue Layer
  181. * 1. correction: RX aggregation is not limited to SDIO but for all host interface options
  182. * 2. add forward declarations for DBG-only symbols
  183. *
  184. * 04 06 2011 cp.wu
  185. * [WCXRP00000540] [MT5931][Driver] Add eHPI8/eHPI16 support to Linux Glue Layer
  186. * 1. do not check for pvData inside wlanNetCreate() due to it is NULL for eHPI port
  187. * 2. update perm_addr as well for MAC address
  188. * 3. not calling check_mem_region() anymore for eHPI
  189. * 4. correct MSC_CS macro for 0-based notation
  190. *
  191. * 04 01 2011 cp.wu
  192. * [WCXRP00000540] [MT5931][Driver] Add eHPI8/eHPI16 support to Linux Glue Layer
  193. * 1. simplify config.h due to aggregation options could be also applied for eHPI/SPI interface
  194. * 2. use spin-lock instead of semaphore for protecting eHPI access because of possible access from ISR
  195. * 3. request_irq() API has some changes between linux kernel 2.6.12 and 2.6.26
  196. *
  197. * 03 29 2011 cp.wu
  198. * [WCXRP00000598] [MT6620 Wi-Fi][Driver] Implementation of interface for communicating with
  199. * user space process for RESET_START and RESET_END events
  200. * implement kernel-to-userspace communication via generic netlink socket for whole-chip resetting mechanism
  201. *
  202. * 03 22 2011 pat.lu
  203. * [WCXRP00000592] [MT6620 Wi-Fi][Driver] Support PC Linux Environment Driver Build
  204. * Add a compiler option "PC_LINUX_DRIVER_USE" for building driver in PC Linux environment.
  205. *
  206. * 03 18 2011 wh.su
  207. * [WCXRP00000530] [MT6620 Wi-Fi] [Driver] skip doing p2pRunEventAAAComplete after send assoc response Tx Done
  208. * enable the Anti_piracy check at driver .
  209. *
  210. * 03 17 2011 tsaiyuan.hsu
  211. * [WCXRP00000517] [MT6620 Wi-Fi][Driver][FW] Fine Tune Performance of Roaming
  212. * enable roaming feature.
  213. *
  214. * 03 17 2011 chinglan.wang
  215. * [WCXRP00000570] [MT6620 Wi-Fi][Driver] Add Wi-Fi Protected Setup v2.0 feature
  216. * .
  217. *
  218. * 03 15 2011 cp.wu
  219. * [WCXRP00000559] [MT6620 Wi-Fi][Driver] Combine TX/RX DMA buffers into a single one
  220. * to reduce physically continuous memory consumption
  221. * 1. deprecate CFG_HANDLE_IST_IN_SDIO_CALLBACK
  222. * 2. Use common coalescing buffer for both TX/RX directions
  223. *
  224. *
  225. * 03 15 2011 eddie.chen
  226. * [WCXRP00000554] [MT6620 Wi-Fi][DRV] Add sw control debug counter
  227. * Add sw debug counter for QM.
  228. *
  229. * 03 07 2011 wh.su
  230. * [WCXRP00000506] [MT6620 Wi-Fi][Driver][FW] Add Security check related code
  231. * rename the define to anti_pviracy.
  232. *
  233. * 03 06 2011 chinghwa.yu
  234. * [WCXRP00000065] Update BoW design and settings
  235. * Sync BOW Driver to latest person development branch version..
  236. *
  237. * 03 02 2011 wh.su
  238. * [WCXRP00000506] [MT6620 Wi-Fi][Driver][FW] Add Security check related code
  239. * Add security check code.
  240. *
  241. * 03 01 2011 george.huang
  242. * [WCXRP00000495] [MT6620 Wi-Fi][FW] Support pattern filter for unwanted ARP frames
  243. * Fix compile issue
  244. *
  245. * 02 25 2011 george.huang
  246. * [WCXRP00000497] [MT6620 Wi-Fi][FW] Change default UAPSD AC assignment
  247. * Assign all AC default to be U-APSD enabled.
  248. *
  249. * 02 14 2011 wh.su
  250. * [WCXRP00000432] [MT6620 Wi-Fi][Driver] Add STA privacy check at hotspot mode
  251. * Let the privacy check at hotspot mode default enable.
  252. *
  253. * 02 09 2011 wh.su
  254. * [WCXRP00000432] [MT6620 Wi-Fi][Driver] Add STA privacy check at hotspot mode
  255. * adding the code for check STA privacy bit at AP mode, .
  256. *
  257. * 02 08 2011 cp.wu
  258. * [WCXRP00000427] [MT6620 Wi-Fi][Driver] Modify veresion information to match with release revision number
  259. * change version number to v1.2.0.0 for preparing v1.2 software package release.
  260. *
  261. * 02 01 2011 yarco.yang
  262. * [WCXRP00000417] [MT6620 Driver] Change CFG_HANDLE_IST_IN_SDIO_CALLBACK from 1 to 0 for Interoperability
  263. * .
  264. *
  265. * 01 27 2011 tsaiyuan.hsu
  266. * [WCXRP00000392] [MT6620 Wi-Fi][Driver] Add Roaming Support
  267. * add roaming fsm
  268. * 1. not support 11r, only use strength of signal to determine roaming.
  269. * 2. not enable CFG_SUPPORT_ROAMING until completion of full test.
  270. * 3. in 6620, adopt work-around to avoid sign extension problem of cck of hw
  271. * 4. assume that change of link quality in smooth way.
  272. *
  273. * 01 19 2011 wh.su
  274. * [WCXRP00000370] [MT6620 Wi-Fi][Driver] Disable Rx RDG for workaround pre-N ccmp issue
  275. * Not announce support Rx RDG for wokaround pre-N ccmp construct AAD issue..
  276. *
  277. * 01 15 2011 puff.wen
  278. * NULL
  279. * Add Stress test
  280. *
  281. * 01 12 2011 cp.wu
  282. * [WCXRP00000356] [MT6620 Wi-Fi][Driver] fill mac header length for security frames 'cause
  283. * hardware header translation needs such information
  284. * fill mac header length information for 802.1x frames.
  285. *
  286. * 01 11 2011 chinghwa.yu
  287. * [WCXRP00000065] Update BoW design and settings
  288. * Support BOW only for Linux.
  289. *
  290. * 01 10 2011 chinghwa.yu
  291. * [WCXRP00000065] Update BoW design and settings
  292. * Enable BOW and 4 physical links.
  293. *
  294. * 01 08 2011 yuche.tsai
  295. * [WCXRP00000345] [MT6620][Volunteer Patch] P2P may issue a SSID specified scan request,
  296. * but the SSID length is still invalid.
  297. * Modify CFG_SLT_SUPPORT default value.
  298. *
  299. * 01 08 2011 yuche.tsai
  300. * [WCXRP00000341] [MT6620][SLT] Create Branch for SLT SW.
  301. * Update configure flag.
  302. *
  303. * 12 28 2010 cp.wu
  304. * [WCXRP00000269] [MT6620 Wi-Fi][Driver][Firmware] Prepare for v1.1 branch release
  305. * report EEPROM used flag via NIC_CAPABILITY
  306. *
  307. * 12 28 2010 cp.wu
  308. * [WCXRP00000269] [MT6620 Wi-Fi][Driver][Firmware] Prepare for v1.1 branch release
  309. * integrate with 'EEPROM used' flag for reporting correct capability to Engineer Mode/META and other tools
  310. *
  311. * 12 15 2010 yuche.tsai
  312. * NULL
  313. * Update SLT Descriptor number configure in driver.
  314. *
  315. * 12 13 2010 chinglan.wang
  316. * NULL
  317. * Add WPS 1.0 feature flag to enable the WPS 1.0 function.
  318. *
  319. * 11 23 2010 george.huang
  320. * [WCXRP00000127] [MT6620 Wi-Fi][Driver] Add a registry to disable Beacon Timeout function for SQA test by using E1 EVB
  321. * Enable PM function by default
  322. *
  323. * 11 15 2010 wh.su
  324. * [WCXRP00000171] [MT6620 Wi-Fi][Driver] Add message check code same behavior as mt5921
  325. * use config.mk WAPI config define.
  326. *
  327. * 11 08 2010 wh.su
  328. * [WCXRP00000171] [MT6620 Wi-Fi][Driver] Add message check code same behavior as mt5921
  329. * use the config.mk define.
  330. *
  331. * 11 01 2010 cp.wu
  332. * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
  333. * [WCXRP00000150] [MT6620 Wi-Fi][Driver] Add implementation for querying current TX rate from firmware auto rate module
  334. * 1) Query link speed (TX rate) from firmware directly with buffering mechanism to reduce overhead
  335. * 2) Remove CNM CH-RECOVER event handling
  336. * 3) cfg read/write API renamed with kal prefix for unified naming rules.
  337. *
  338. * 11 01 2010 yarco.yang
  339. * [WCXRP00000149] [MT6620 WI-Fi][Driver]Fine tune performance on MT6516 platform
  340. * Add code to run WlanIST in SDIO callback.
  341. *
  342. * 10 26 2010 cp.wu
  343. * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
  344. * [WCXRP00000137] [MT6620 Wi-Fi] [FW] Support NIC capability query command
  345. * 1) update NVRAM content template to ver 1.02
  346. * 2) add compile option for querying NIC capability (default: off)
  347. * 3) modify AIS 5GHz support to run-time option, which could be turned on by registry or NVRAM setting
  348. * 4) correct auto-rate compiler error under linux (treat warning as error)
  349. * 5) simplify usage of NVRAM and REG_INFO_T
  350. * 6) add version checking between driver and firmware
  351. *
  352. * 10 25 2010 cp.wu
  353. * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
  354. * add option for enable/disable TX PWR gain adjustment (default: off)
  355. *
  356. * 10 20 2010 wh.su
  357. * [WCXRP00000067] [MT6620 Wi-Fi][Driver] Support the android+ WAPI function
  358. * enable the WAPI compiling flag as default
  359. *
  360. * 10 19 2010 cp.wu
  361. * [WCXRP00000122] [MT6620 Wi-Fi][Driver] Preparation for YuSu source tree integration
  362. * remove HIF_SDIO_ONE flags because the settings could be merged for runtime detection instead of compile-time.
  363. *
  364. * 10 18 2010 cp.wu
  365. * [WCXRP00000117] [MT6620 Wi-Fi][Driver] Add logic for suspending driver when MT6620 is not responding anymore
  366. * 1. when wlanAdapterStop() failed to send POWER CTRL command to firmware, do not poll for ready bit dis-assertion
  367. * 2. shorten polling count for shorter response time
  368. * 3. if bad I/O operation is detected during TX resource polling, then further operation is aborted as well
  369. *
  370. * 10 18 2010 cp.wu
  371. * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
  372. * [WCXRP00000086] [MT6620 Wi-Fi][Driver] The mac address is all zero at android
  373. * complete implementation of Android NVRAM access
  374. *
  375. * 10 14 2010 wh.su
  376. * [WCXRP00000102] [MT6620 Wi-Fi] [FW] Add a compiling flag and code for support Direct GO at Android
  377. * Add a define CFG_TEST_ANDROID_DIRECT_GO compiling flag
  378. *
  379. * 10 08 2010 cm.chang
  380. * NULL
  381. * Remove unused compiling flags (TX_RDG and TX_SGI)
  382. *
  383. * 10 07 2010 cp.wu
  384. * [WCXRP00000083] [MT5931][Driver][FW] Add necessary logic for MT5931 first connection
  385. * add firmware download for MT5931.
  386. *
  387. * 10 05 2010 cp.wu
  388. * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
  389. * load manufacture data when CFG_SUPPORT_NVRAM is set to 1
  390. *
  391. * 10 05 2010 cp.wu
  392. * [WCXRP00000056] [MT6620 Wi-Fi][Driver] NVRAM implementation with Version Check
  393. * 1) add NVRAM access API
  394. * 2) fake scanning result when NVRAM doesn't exist and/or version mismatch. (off by compiler option)
  395. * 3) add OID implementation for NVRAM read/write service
  396. *
  397. * 10 05 2010 yarco.yang
  398. * [WCXRP00000082] [MT6620 Wi-Fi][Driver]High throughput performance tuning
  399. * Change CFG_IST_LOOP_COUNT from 2 to 1 to reduce unnecessary SDIO bus access
  400. *
  401. * 09 24 2010 cp.wu
  402. * [WCXRP00000057] [MT6620 Wi-Fi][Driver] Modify online scan to a run-time switchable feature
  403. * Modify online scan as a run-time adjustable option (for Windows, in registry)
  404. *
  405. * 09 23 2010 cp.wu
  406. * [WCXRP00000052] [MT6620 Wi-Fi][Driver] Eliminate Linux Compile Warning
  407. * eliminate reference of CFG_RESPONSE_MAX_PKT_SIZE
  408. *
  409. * 09 20 2010 cm.chang
  410. * NULL
  411. * Disable RX STBC by BB HEC based on MT6620E1_PHY_BUG v05.docx
  412. *
  413. * 09 17 2010 chinglan.wang
  414. * NULL
  415. * Add performance test option
  416. *
  417. * 09 10 2010 chinglan.wang
  418. * NULL
  419. * Modify for Software Migration Phase 2.10 for E2 FPGA
  420. *
  421. * 09 07 2010 yuche.tsai
  422. * NULL
  423. * Add a CFG for max common IE buffer size.
  424. *
  425. * 09 01 2010 cp.wu
  426. * NULL
  427. * restore configuration as before.
  428. *
  429. * 09 01 2010 cp.wu
  430. * NULL
  431. * HIFSYS Clock Source Workaround
  432. *
  433. * 08 31 2010 kevin.huang
  434. * NULL
  435. * Use LINK LIST operation to process SCAN result
  436. *
  437. * 08 30 2010 chinglan.wang
  438. * NULL
  439. * Enable the MT6620_FPGA_BWCS value.
  440. *
  441. * 08 30 2010 chinglan.wang
  442. * NULL
  443. * Disable the FW encryption.
  444. *
  445. * 08 27 2010 chinglan.wang
  446. * NULL
  447. * Update configuration for MT6620_E1_PRE_ALPHA_1832_0827_2010
  448. *
  449. * 08 26 2010 yuche.tsai
  450. * NULL
  451. * Add AT GO test configure mode under WinXP.
  452. * Please enable 1. CFG_ENABLE_WIFI_DIRECT, 2. CFG_TEST_WIFI_DIRECT_GO, 3. CFG_SUPPORT_AAA
  453. *
  454. * 08 25 2010 cp.wu
  455. * NULL
  456. * add option for enabling AIS 5GHz scan
  457. *
  458. * 08 25 2010 george.huang
  459. * NULL
  460. * update OID/ registry control path for PM related settings
  461. *
  462. * 08 24 2010 cp.wu
  463. * NULL
  464. * 1) initialize variable for enabling short premable/short time slot.
  465. * 2) add compile option for disabling online scan
  466. *
  467. * 08 24 2010 cm.chang
  468. * NULL
  469. * Support RLM initail channel of Ad-hoc, P2P and BOW
  470. *
  471. * 08 23 2010 cp.wu
  472. * NULL
  473. * revise constant definitions to be matched with implementation (original cmd-event definition is deprecated)
  474. *
  475. * 08 23 2010 chinghwa.yu
  476. * NULL
  477. * Disable BOW Test.
  478. *
  479. * 08 23 2010 jeffrey.chang
  480. * NULL
  481. * fix config.h typo
  482. *
  483. * 08 23 2010 chinghwa.yu
  484. * NULL
  485. * Update for BOW.
  486. *
  487. * 08 21 2010 jeffrey.chang
  488. * NULL
  489. * 1) add sdio two setting
  490. * 2) bug fix of sdio glue
  491. *
  492. * 08 09 2010 wh.su
  493. * NULL
  494. * let the firmware download default enabled.
  495. *
  496. * 08 07 2010 wh.su
  497. * NULL
  498. * adding the privacy related code for P2P network
  499. *
  500. * 08 05 2010 yuche.tsai
  501. * NULL
  502. * Add a configure flag for P2P unitest.
  503. *
  504. * 07 23 2010 cp.wu
  505. *
  506. * 1) re-enable AIS-FSM beacon timeout handling.
  507. * 2) scan done API revised
  508. *
  509. * 07 23 2010 cp.wu
  510. *
  511. * 1) enable Ad-Hoc
  512. * 2) disable beacon timeout handling temporally due to unexpected beacon timeout event.
  513. *
  514. * 07 19 2010 wh.su
  515. *
  516. * update for security supporting.
  517. *
  518. * 07 19 2010 yuche.tsai
  519. *
  520. * Add for SLT support.
  521. *
  522. * 07 16 2010 cp.wu
  523. *
  524. * remove work-around in case SCN is not available.
  525. *
  526. * 07 14 2010 yarco.yang
  527. *
  528. * 1. Remove CFG_MQM_MIGRATION
  529. * 2. Add CMD_UPDATE_WMM_PARMS command
  530. *
  531. * 07 13 2010 cp.wu
  532. *
  533. * 1) MMPDUs are now sent to MT6620 by CMD queue for keeping strict order of 1X/MMPDU/CMD packets
  534. * 2) integrate with qmGetFrameAction() for deciding which MMPDU/1X could pass checking for sending
  535. * 2) enhance CMD_INFO_T descriptor number from 10 to 32 to avoid descriptor
  536. * underflow under concurrent network operation
  537. *
  538. * 07 09 2010 yarco.yang
  539. *
  540. * [MT6620 and MT5931] SW Migration: Add ADDBA support
  541. *
  542. * 07 08 2010 cp.wu
  543. *
  544. * [WPD00003833] [MT6620 and MT5931] Driver migration - move to new repository.
  545. *
  546. * 07 08 2010 cp.wu
  547. * [WPD00003833][MT6620 and MT5931] Driver migration
  548. * take use of RLM module for parsing/generating HT IEs for 11n capability
  549. *
  550. * 07 07 2010 cp.wu
  551. * [WPD00003833][MT6620 and MT5931] Driver migration
  552. * for first connection, if connecting failed do not enter into scan state.
  553. *
  554. * 06 25 2010 cp.wu
  555. * [WPD00003833][MT6620 and MT5931] Driver migration
  556. * modify Beacon/ProbeResp to complete parsing,
  557. * because host software has looser memory usage restriction
  558. *
  559. * 06 23 2010 cp.wu
  560. * [WPD00003833][MT6620 and MT5931] Driver migration
  561. * 1) add SCN compilation option.
  562. * 2) when SCN is not turned on, BSSID_SCAN will generate a fake entry for 1st connection
  563. *
  564. * 06 22 2010 cp.wu
  565. * [WPD00003833][MT6620 and MT5931] Driver migration
  566. * 1) add command warpper for STA-REC/BSS-INFO sync.
  567. * 2) enhance command packet sending procedure for non-oid part
  568. * 3) add command packet definitions for STA-REC/BSS-INFO sync.
  569. *
  570. * 06 21 2010 wh.su
  571. * [WPD00003840][MT6620 5931] Security migration
  572. * set default compiling flag for security disable.
  573. *
  574. * 06 21 2010 yarco.yang
  575. * [WPD00003837][MT6620]Data Path Refine
  576. * Support CFG_MQM_MIGRATION flag
  577. *
  578. * 06 21 2010 cp.wu
  579. * [WPD00003833][MT6620 and MT5931] Driver migration
  580. * enable RX management frame handling.
  581. *
  582. * 06 21 2010 cp.wu
  583. * [WPD00003833][MT6620 and MT5931] Driver migration
  584. * add scan_fsm into building.
  585. *
  586. * 06 18 2010 cm.chang
  587. * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
  588. * Provide cnmMgtPktAlloc() and alloc/free function of msg/buf
  589. *
  590. * 06 15 2010 cp.wu
  591. * [WPD00003833][MT6620 and MT5931] Driver migration
  592. * add scan.c.
  593. *
  594. * 06 14 2010 cp.wu
  595. * [WPD00003833][MT6620 and MT5931] Driver migration
  596. * add management dispatching function table.
  597. *
  598. * 06 11 2010 cp.wu
  599. * [WPD00003833][MT6620 and MT5931] Driver migration
  600. * auth.c is migrated.
  601. *
  602. * 06 11 2010 cp.wu
  603. * [WPD00003833][MT6620 and MT5931] Driver migration
  604. * add bss.c.
  605. *
  606. * 06 11 2010 cp.wu
  607. * [WPD00003833][MT6620 and MT5931] Driver migration
  608. * 1) migrate assoc.c.
  609. * 2) add ucTxSeqNum for tracking frames which needs TX-DONE awareness
  610. * 3) add configuration options for CNM_MEM and RSN modules
  611. * 4) add data path for management frames
  612. * 5) eliminate rPacketInfo of MSDU_INFO_T
  613. *
  614. * 06 10 2010 cp.wu
  615. * [WPD00003833][MT6620 and MT5931] Driver migration
  616. * 1) eliminate CFG_CMD_EVENT_VERSION_0_9
  617. * 2) when disconnected, indicate nic directly (no event is needed)
  618. *
  619. * 06 07 2010 cp.wu
  620. * [WPD00003833][MT6620 and MT5931] Driver migration
  621. * add aa_fsm.h, ais_fsm.h, bss.h, mib.h and scan.h.
  622. *
  623. * 06 07 2010 cp.wu
  624. * [WPD00003833][MT6620 and MT5931] Driver migration
  625. * merge wlan_def.h.
  626. *
  627. * 06 06 2010 kevin.huang
  628. * [WPD00003832][MT6620 5931] Create driver base
  629. * [MT6620 5931] Create driver base
  630. *
  631. * 05 31 2010 cp.wu
  632. * [WPD00003831][MT6620 Wi-Fi] Add framework for Wi-Fi Direct support
  633. * add config option for cfg80211.
  634. *
  635. * 05 26 2010 cp.wu
  636. * [WPD00001943]Create WiFi test driver framework on WinXP
  637. * set ATIMwindow default value to zero.
  638. *
  639. * 05 21 2010 cp.wu
  640. * [WPD00001943]Create WiFi test driver framework on WinXP
  641. * add option for FPGA_BWCS & FPGA_V5
  642. *
  643. * 05 20 2010 cp.wu
  644. * [WPD00001943]Create WiFi test driver framework on WinXP
  645. * 1) integrate OID_GEN_NETWORK_LAYER_ADDRESSES with CMD_ID_SET_IP_ADDRESS
  646. * 2) buffer statistics data for 2 seconds
  647. * 3) use default value for adhoc parameters instead of 0
  648. *
  649. * 05 17 2010 cp.wu
  650. * [WPD00001943]Create WiFi test driver framework on WinXP
  651. * 1) enable CMD/EVENT ver 0.9 definition.
  652. * 2) abandon use of ENUM_MEDIA_STATE
  653. *
  654. * 05 17 2010 cp.wu
  655. * [WPD00001943]Create WiFi test driver framework on WinXP
  656. * add CFG_STARTUP_DEBUG for debugging starting up issue.
  657. *
  658. * 05 17 2010 cp.wu
  659. * [WPD00003831][MT6620 Wi-Fi] Add framework for Wi-Fi Direct support
  660. * add basic handling framework for wireless extension ioctls.
  661. *
  662. * 05 11 2010 cp.wu
  663. * [WPD00001943]Create WiFi test driver framework on WinXP
  664. * change firmware name to WIFI_RAM_CODE.
  665. *
  666. * 05 07 2010 cp.wu
  667. * [WPD00003823][MT6620 Wi-Fi] Add Bluetooth-over-Wi-Fi support
  668. * disable bt-over-wifi configuration, turn it on after firmware finished implementation
  669. *
  670. * 04 27 2010 cp.wu
  671. * [WPD00003823][MT6620 Wi-Fi] Add Bluetooth-over-Wi-Fi support
  672. * add multiple physical link support
  673. *
  674. * 04 23 2010 cp.wu
  675. * [WPD00001943]Create WiFi test driver framework on WinXP
  676. * surpress compiler warning
  677. *
  678. * 04 22 2010 jeffrey.chang
  679. * [WPD00003826]Initial import for Linux port
  680. * re-enable power management
  681. *
  682. * 04 22 2010 jeffrey.chang
  683. * [WPD00003826]Initial import for Linux port
  684. *
  685. * 1) modify rx path code for supporting Wi-Fi direct
  686. * 2) modify config.h since Linux dont need to consider retaining packet
  687. *
  688. * 04 22 2010 cp.wu
  689. * [WPD00001943]Create WiFi test driver framework on WinXP
  690. * enable TCP/IP checksum offloading by default.
  691. *
  692. * 04 19 2010 cp.wu
  693. * [WPD00001943]Create WiFi test driver framework on WinXP
  694. * set CFG_ENABLE_FULL_PM to 1 as default to
  695. * 1) acquire own before hardware access
  696. * 2) set own back after hardware access
  697. *
  698. * 04 15 2010 jeffrey.chang
  699. * [WPD00003826]Initial import for Linux port
  700. * change firmware name
  701. *
  702. * 04 07 2010 cp.wu
  703. * [WPD00003827][MT6620 Wi-Fi] Chariot fail and following ping fail, no pkt send from driver
  704. * disable RX-enhanced response temporally, it seems the CQ is not resolved yet.
  705. *
  706. * 04 06 2010 cp.wu
  707. * [WPD00003827][MT6620 Wi-Fi] Chariot fail and following ping fail, no pkt send from driver
  708. * re-enable RX enhanced mode as WPD00003827 is resolved.
  709. *
  710. * 04 06 2010 cp.wu
  711. * [WPD00001943]Create WiFi test driver framework on WinXP
  712. * turn off RX_ENHANCE mode by default.
  713. *
  714. * 04 06 2010 cp.wu
  715. * [WPD00001943]Create WiFi test driver framework on WinXP
  716. * 1) eliminate unused definitions
  717. * * 2) ready bit will be polled for limited iteration
  718. *
  719. * 04 02 2010 jeffrey.chang
  720. * [WPD00003826]Initial import for Linux port
  721. * firmware download: Linux uses different firmware path
  722. *
  723. * 04 01 2010 cp.wu
  724. * [WPD00001943]Create WiFi test driver framework on WinXP
  725. * change to use WIFI_TCM_ALWAYS_ON as firmware image
  726. *
  727. * 03 31 2010 wh.su
  728. * [WPD00003816][MT6620 Wi-Fi] Adding the security support
  729. * modify the wapi related code for new driver's design.
  730. *
  731. * 03 26 2010 cp.wu
  732. * [WPD00001943]Create WiFi test driver framework on WinXP
  733. * add a temporary flag for integration with CMD/EVENT v0.9.
  734. *
  735. * 03 25 2010 cp.wu
  736. * [WPD00001943]Create WiFi test driver framework on WinXP
  737. * firmware download load address & start address are now configured from config.h
  738. * * due to the different configurations on FPGA and ASIC
  739. *
  740. * 03 24 2010 cp.wu
  741. * [WPD00001943]Create WiFi test driver framework on WinXP
  742. * add options for full PM support.
  743. *
  744. * 03 24 2010 jeffrey.chang
  745. * [WPD00003826]Initial import for Linux port
  746. * [WPD00003826] Initial import for Linux port
  747. * initial import for Linux port
  748. *
  749. * 03 24 2010 jeffrey.chang
  750. * [WPD00003826]Initial import for Linux port
  751. * [WPD00003826] Initial import for Linux port
  752. * initial import for Linux port
  753. *
  754. * 03 24 2010 jeffrey.chang
  755. * [WPD00003826]Initial import for Linux port
  756. * initial import for Linux port
  757. *
  758. * 03 16 2010 cp.wu
  759. * [WPD00001943]Create WiFi test driver framework on WinXP
  760. * turn on FW-DOWNLOAD as default for release.
  761. *
  762. * 03 16 2010 cp.wu
  763. * [WPD00003823][MT6620 Wi-Fi] Add Bluetooth-over-Wi-Fi support
  764. * build up basic data structure and definitions to support BT-over-WiFi
  765. *
  766. * 03 12 2010 cp.wu
  767. * [WPD00001943]Create WiFi test driver framework on WinXP
  768. * add two option for ACK and ENCRYPTION for firmware download
  769. *
  770. * 03 11 2010 cp.wu
  771. * [WPD00003821][BUG] Host driver stops processing RX packets from HIF RX0
  772. * add RX starvation warning debug message controlled by CFG_HIF_RX_STARVATION_WARNING
  773. *
  774. * 03 10 2010 cp.wu
  775. * [WPD00001943]Create WiFi test driver framework on WinXP
  776. * code clean: removing unused variables and structure definitions
  777. *
  778. * 03 05 2010 cp.wu
  779. * [WPD00003821][BUG] Host driver stops processing RX packets from HIF RX0
  780. * change CFG_NUM_OF_QM_RX_PKT_NUM to 120
  781. *
  782. * 03 04 2010 cp.wu
  783. * [WPD00003821][BUG] Host driver stops processing RX packets from HIF RX0
  784. * .
  785. *
  786. * 03 04 2010 cp.wu
  787. * [WPD00003821][BUG] Host driver stops processing RX packets from HIF RX0
  788. * increase RX buffer number to avoid RX buffer starvation.
  789. *
  790. * 02 24 2010 tehuang.liu
  791. * [WPD00001943]Create WiFi test driver framework on WinXP
  792. * Changed the number of STA_RECs to 20
  793. *
  794. * 02 23 2010 cp.wu
  795. * [WPD00001943]Create WiFi test driver framework on WinXP
  796. * add checksum offloading support.
  797. *
  798. * 02 11 2010 cp.wu
  799. * [WPD00001943]Create WiFi test driver framework on WinXP
  800. * 1. add logic for firmware download
  801. * * 2. firmware image filename and start/load address are now retrieved from registry
  802. *
  803. * 02 08 2010 cp.wu
  804. * [WPD00001943]Create WiFi test driver framework on WinXP
  805. * prepare for implementing fw download logic
  806. *
  807. * 12 30 2009 cp.wu
  808. * [WPD00001943]Create WiFi test driver framework on WinXP
  809. * 1) According to CMD/EVENT documentation v0.8,
  810. * * OID_CUSTOM_TEST_RX_STATUS & OID_CUSTOM_TEST_TX_STATUS is no longer used,
  811. * * and result is retrieved by get ATInfo instead
  812. * * 2) add 4 counter for recording aggregation statistics
  813. ** \main\maintrunk.MT6620WiFiDriver_Prj\25 2009-12-16 22:12:28 GMT mtk02752
  814. ** enable interrupt enhanced response, TX/RX Aggregation as default
  815. ** \main\maintrunk.MT6620WiFiDriver_Prj\24 2009-12-10 16:38:43 GMT mtk02752
  816. ** eliminate compile options which are obsolete or for emulation purpose
  817. ** \main\maintrunk.MT6620WiFiDriver_Prj\23 2009-12-09 13:56:26 GMT MTK02468
  818. ** Added RX buffer reordering configurations
  819. ** \main\maintrunk.MT6620WiFiDriver_Prj\22 2009-12-04 12:09:09 GMT mtk02752
  820. ** once enhanced intr/rx response is taken, RX must be access in aggregated basis
  821. ** \main\maintrunk.MT6620WiFiDriver_Prj\21 2009-11-23 17:54:50 GMT mtk02752
  822. ** correct a typo
  823. ** \main\maintrunk.MT6620WiFiDriver_Prj\20 2009-11-17 22:40:47 GMT mtk01084
  824. ** add defines
  825. ** \main\maintrunk.MT6620WiFiDriver_Prj\19 2009-11-17 17:33:37 GMT mtk02752
  826. ** add coalescing buffer definition for SD1_SD3_DATAPATH_INTEGRATION
  827. ** \main\maintrunk.MT6620WiFiDriver_Prj\18 2009-11-16 20:32:40 GMT mtk02752
  828. ** add CFG_TX_MAX_PKT_NUM for limiting queued TX packet
  829. ** \main\maintrunk.MT6620WiFiDriver_Prj\17 2009-11-16 13:34:44 GMT mtk02752
  830. ** add SD1_SD3_DATAPATH_INTEGRATION define for source control
  831. ** \main\maintrunk.MT6620WiFiDriver_Prj\16 2009-11-13 13:54:11 GMT mtk01084
  832. ** enable INT enhance mode by default
  833. ** \main\maintrunk.MT6620WiFiDriver_Prj\15 2009-10-30 18:17:14 GMT mtk01084
  834. ** add new define
  835. ** \main\maintrunk.MT6620WiFiDriver_Prj\14 2009-10-29 19:47:36 GMT mtk01084
  836. ** not use HIF loopback mode
  837. ** \main\maintrunk.MT6620WiFiDriver_Prj\13 2009-10-13 21:58:33 GMT mtk01084
  838. ** update for new macro define
  839. ** \main\maintrunk.MT6620WiFiDriver_Prj\12 2009-09-09 17:26:08 GMT mtk01084
  840. ** add CFG_TEST_WITH_MT5921
  841. ** \main\maintrunk.MT6620WiFiDriver_Prj\11 2009-05-18 21:02:30 GMT mtk01426
  842. ** Update CFG_RX_COALESCING_BUFFER_SIZE
  843. ** \main\maintrunk.MT6620WiFiDriver_Prj\10 2009-04-21 09:35:51 GMT mtk01461
  844. ** Add CFG_TX_DBG_MGT_BUF to debug MGMT Buffer depth
  845. ** \main\maintrunk.MT6620WiFiDriver_Prj\9 2009-04-14 15:52:21 GMT mtk01426
  846. ** Add OOB_DATA_PRE_FIXED_LEN define
  847. ** \main\maintrunk.MT6620WiFiDriver_Prj\8 2009-04-08 16:51:08 GMT mtk01084
  848. ** update for FW download part
  849. ** \main\maintrunk.MT6620WiFiDriver_Prj\7 2009-04-01 10:33:37 GMT mtk01461
  850. ** Add SW pre test flag CFG_HIF_LOOPBACK_PRETEST
  851. ** \main\maintrunk.MT6620WiFiDriver_Prj\6 2009-03-23 00:29:18 GMT mtk01461
  852. ** Fix CFG_COALESCING_BUFFER_SIZE if enable the CFG_TX_FRAGMENT
  853. ** \main\maintrunk.MT6620WiFiDriver_Prj\5 2009-03-18 20:58:34 GMT mtk01426
  854. ** Add CFG_HIF_LOOPBACK and CFG_SDIO_RX_ENHANCE
  855. ** \main\maintrunk.MT6620WiFiDriver_Prj\4 2009-03-17 20:17:36 GMT mtk01426
  856. ** Add CMD/Response related configure
  857. ** \main\maintrunk.MT6620WiFiDriver_Prj\3 2009-03-16 09:08:21 GMT mtk01461
  858. ** Update TX PATH API
  859. ** \main\maintrunk.MT6620WiFiDriver_Prj\2 2009-03-10 20:11:21 GMT mtk01426
  860. ** Init for develop
  861. **
  862. */
  863. #ifndef _CONFIG_H
  864. #define _CONFIG_H
  865. /*******************************************************************************
  866. * C O M P I L E R F L A G S
  867. ********************************************************************************
  868. */
  869. /*******************************************************************************
  870. * E X T E R N A L R E F E R E N C E S
  871. ********************************************************************************
  872. */
  873. #ifdef MT6620
  874. #undef MT6620
  875. #endif
  876. #ifndef MT6628
  877. #define MT6628
  878. #endif
  879. /*******************************************************************************
  880. * C O N S T A N T S
  881. ********************************************************************************
  882. */
  883. /* 2 Flags for OS capability */
  884. #define MTK_WCN_SINGLE_MODULE 0 /* 1: without WMT */
  885. #ifdef LINUX
  886. #ifdef CONFIG_X86
  887. #define MTK_WCN_HIF_SDIO 0
  888. #else
  889. #define MTK_WCN_HIF_SDIO 0 /* samp */
  890. #endif
  891. #else
  892. #define MTK_WCN_HIF_SDIO 0
  893. #endif
  894. #if (CFG_SUPPORT_AEE == 1)
  895. #define CFG_ENABLE_AEE_MSG 1
  896. #else
  897. #define CFG_ENABLE_AEE_MSG 0
  898. #endif
  899. #if CFG_ENABLE_AEE_MSG
  900. #include <mt-plat/aee.h>
  901. #endif
  902. /* 2 Flags for Driver Features */
  903. #define CFG_TX_FRAGMENT 1 /*!< 1: Enable TX fragmentation
  904. 0: Disable */
  905. #define CFG_SUPPORT_PERFORMANCE_TEST 0 /*Only for performance Test */
  906. #define CFG_COUNTRY_CODE NULL /* "US" */
  907. #ifndef LINUX
  908. #define CFG_FW_FILENAME L"WIFI_RAM_CODE"
  909. #define CFG_FW_FILENAME_E6 L"WIFI_RAM_CODE_E6"
  910. #else
  911. #define CFG_FW_FILENAME "WIFI_RAM_CODE"
  912. #endif
  913. #ifndef LINUX
  914. #define CFG_SUPPORT_CFG_FILE 0
  915. #else
  916. #define CFG_SUPPORT_CFG_FILE 1
  917. #endif
  918. #define CFG_SUPPORT_FCC_DYNAMIC_TX_PWR_ADJUST 0 /* Support FCC/CE Dynamic Tx Power Adjust */
  919. #define CFG_SUPPORT_CE_FCC_TXPWR_LIMIT 0 /* Support CE FCC Tx Power limit */
  920. #define CFG_SUPPORT_802_11D 1 /*!< 1(default): Enable 802.11d
  921. 0: Disable */
  922. #define CFG_SUPPORT_RRM 0 /* Radio Reasource Measurement (802.11k) */
  923. #define CFG_SUPPORT_DFS 1 /* DFS (802.11h) */
  924. #if (CFG_SUPPORT_DFS == 1) /* Add by Enlai */
  925. #define CFG_SUPPORT_QUIET 1 /* Quiet (802.11h) */
  926. #define CFG_SUPPORT_SPEC_MGMT 1 /* Spectrum Management (802.11h): TPC and DFS */
  927. #else
  928. #define CFG_SUPPORT_QUIET 0 /* Quiet (802.11h) */
  929. #define CFG_SUPPORT_SPEC_MGMT 0 /* Spectrum Management (802.11h): TPC and DFS */
  930. #endif
  931. #define CFG_SUPPORT_RX_RDG 0 /* 11n feature. RX RDG capability */
  932. #define CFG_SUPPORT_MFB 0 /* 802.11n MCS Feedback responder */
  933. #define CFG_SUPPORT_RX_STBC 1 /* 802.11n RX STBC (1SS) */
  934. #define CFG_SUPPORT_RX_SGI 1 /* 802.11n RX short GI for both 20M and 40M BW */
  935. #define CFG_SUPPORT_RX_HT_GF 1 /* 802.11n RX HT green-field capability */
  936. #define CFG_SUPPORT_ROAMING_ENC 0 /* enahnced roaming */
  937. #define CFG_SUPPORT_TDLS 1 /* IEEE802.11z TDLS */
  938. #define CFG_SUPPORT_TDLS_DBG 0 /* TDLS debug */
  939. #define CFG_SUPPORT_STATISTICS 1
  940. #define CFG_SUPPORT_DBG_POWERMODE 1 /* for debugging power always active mode */
  941. #define CFG_SUPPORT_GSCN 1
  942. #define CFG_SUPPORT_TXR_ENC 0 /* enhanced tx rate switch */
  943. #define CFG_SUPPORT_PERSIST_NETDEV 0 /* create NETDEV when system bootup */
  944. #define CFG_FORCE_USE_20BW 0
  945. /*------------------------------------------------------------------------------
  946. * SLT Option
  947. *------------------------------------------------------------------------------
  948. */
  949. #define CFG_SLT_SUPPORT 0
  950. #define MTK_AUTO_CHANNEL_SEL_SUPPORT_ENABLE 0
  951. #if defined(MTK_AUTO_CHANNEL_SEL_SUPPORT_ENABLE)
  952. #define CFG_AUTO_CHANNEL_SEL_SUPPORT 1
  953. #else
  954. #define CFG_AUTO_CHANNEL_SEL_SUPPORT 0
  955. #endif
  956. #ifdef NDIS60_MINIPORT
  957. #define CFG_NATIVE_802_11 1
  958. #define CFG_TX_MAX_PKT_SIZE 2304
  959. #define CFG_TCP_IP_CHKSUM_OFFLOAD_NDIS_60 0 /* !< 1: Enable TCP/IP header checksum offload
  960. 0: Disable */
  961. #define CFG_TCP_IP_CHKSUM_OFFLOAD 0
  962. #define CFG_WHQL_DOT11_STATISTICS 1
  963. #define CFG_WHQL_ADD_REMOVE_KEY 1
  964. #define CFG_WHQL_CUSTOM_IE 1
  965. #define CFG_WHQL_SAFE_MODE_ENABLED 1
  966. #else
  967. #define CFG_TCP_IP_CHKSUM_OFFLOAD 1 /* !< 1: Enable TCP/IP header checksum offload
  968. 0: Disable */
  969. #define CFG_TCP_IP_CHKSUM_OFFLOAD_NDIS_60 0
  970. #define CFG_TX_MAX_PKT_SIZE 1600
  971. #define CFG_NATIVE_802_11 0
  972. #endif
  973. /* 2 Flags for Driver Parameters */
  974. /*------------------------------------------------------------------------------
  975. * Flags for EHPI Interface in Colibri Platform
  976. *------------------------------------------------------------------------------
  977. */
  978. #define CFG_EHPI_FASTER_BUS_TIMING 0 /*!< 1: Do workaround for faster bus timing
  979. 0(default): Disable */
  980. /*------------------------------------------------------------------------------
  981. * Flags for HIFSYS Interface
  982. *------------------------------------------------------------------------------
  983. */
  984. #ifdef _lint
  985. #define _HIF_SDIO 0 /* samp */
  986. #endif
  987. #define CFG_SDIO_INTR_ENHANCE 1 /*!< 1(default): Enable SDIO ISR & TX/RX status enhance mode
  988. 0: Disable */
  989. #define CFG_SDIO_RX_ENHANCE 0 /*!< 1(default): Enable SDIO ISR & TX/RX status enhance mode
  990. 0: Disable */
  991. #define CFG_SDIO_TX_AGG 1 /*!< 1: Enable SDIO TX enhance
  992. mode(Multiple frames in single BLOCK CMD)
  993. 0(default): Disable */
  994. #define CFG_SDIO_RX_AGG 1 /*!< 1: Enable SDIO RX enhance
  995. mode(Multiple frames in single BLOCK CMD)
  996. 0(default): Disable */
  997. #if (CFG_SDIO_RX_AGG == 1) && (CFG_SDIO_INTR_ENHANCE == 0)
  998. #error "CFG_SDIO_INTR_ENHANCE should be 1 once CFG_SDIO_RX_AGG equals to 1"
  999. #elif (CFG_SDIO_INTR_ENHANCE == 1 || CFG_SDIO_RX_ENHANCE == 1) && (CFG_SDIO_RX_AGG == 0)
  1000. #error "CFG_SDIO_RX_AGG should be 1 once CFG_SDIO_INTR_ENHANCE and/or CFG_SDIO_RX_ENHANCE equals to 1"
  1001. #endif
  1002. #define CFG_SDIO_MAX_RX_AGG_NUM 0 /*!< 1: Setting the maximum RX aggregation number
  1003. 0(default): no limited */
  1004. #ifdef WINDOWS_CE
  1005. #define CFG_SDIO_PATHRU_MODE 1 /*!< 1: Support pass through (PATHRU) mode
  1006. 0: Disable */
  1007. #else
  1008. #define CFG_SDIO_PATHRU_MODE 0 /*!< 0: Always disable if WINDOWS_CE is not defined */
  1009. #endif
  1010. #define CFG_MAX_RX_ENHANCE_LOOP_COUNT 3
  1011. /*------------------------------------------------------------------------------
  1012. * Flags and Parameters for Integration
  1013. *------------------------------------------------------------------------------
  1014. */
  1015. #if defined(MT6620)
  1016. #define MT6620_FPGA_BWCS 0
  1017. #define MT6620_FPGA_V5 0
  1018. #if (MT6620_FPGA_BWCS == 1) && (MT6620_FPGA_V5 == 1)
  1019. #error
  1020. #endif
  1021. #if (MTK_WCN_HIF_SDIO == 1)
  1022. #define CFG_MULTI_ECOVER_SUPPORT 1
  1023. #elif !defined(LINUX)
  1024. #define CFG_MULTI_ECOVER_SUPPORT 1
  1025. #else
  1026. #define CFG_MULTI_ECOVER_SUPPORT 0
  1027. #endif
  1028. #define CFG_ENABLE_CAL_LOG 0
  1029. #define CFG_REPORT_RFBB_VERSION 0
  1030. #elif defined(MT6628)
  1031. #define CFG_MULTI_ECOVER_SUPPORT 0
  1032. #define CFG_ENABLE_CAL_LOG 1
  1033. #define CFG_REPORT_RFBB_VERSION 1
  1034. #endif
  1035. #define CFG_CHIP_RESET_SUPPORT 1
  1036. #if defined(MT6628)
  1037. #define CFG_EMBED_FIRMWARE_BUILD_DATE_CODE 1
  1038. #endif
  1039. /*------------------------------------------------------------------------------
  1040. * Flags for workaround
  1041. *------------------------------------------------------------------------------
  1042. */
  1043. #if defined(MT6620) && (MT6620_FPGA_BWCS == 0) && (MT6620_FPGA_V5 == 0)
  1044. #define MT6620_E1_ASIC_HIFSYS_WORKAROUND 0
  1045. #else
  1046. #define MT6620_E1_ASIC_HIFSYS_WORKAROUND 0
  1047. #endif
  1048. /* SPM issue: suspend current is higher than deep idle */
  1049. #define CFG_SPM_WORKAROUND_FOR_HOTSPOT 1
  1050. /*------------------------------------------------------------------------------
  1051. * Flags for driver version
  1052. *------------------------------------------------------------------------------
  1053. */
  1054. #define CFG_DRV_OWN_VERSION \
  1055. ((UINT_16)((NIC_DRIVER_MAJOR_VERSION << 8) | (NIC_DRIVER_MINOR_VERSION)))
  1056. #define CFG_DRV_PEER_VERSION ((UINT_16)0x0000)
  1057. /*------------------------------------------------------------------------------
  1058. * Flags for TX path which are OS dependent
  1059. *------------------------------------------------------------------------------
  1060. */
  1061. /*! NOTE(Kevin): If the Network buffer is non-scatter-gather like structure(without
  1062. * NETIF_F_FRAGLIST in LINUX), then we can set CFG_TX_BUFFER_IS_SCATTER_LIST to "0"
  1063. * for zero copy TX packets.
  1064. * For scatter-gather like structure, we set "1", driver will do copy frame to
  1065. * internal coalescing buffer before write it to FIFO.
  1066. */
  1067. #if defined(LINUX)
  1068. #define CFG_TX_BUFFER_IS_SCATTER_LIST 1 /*!< 1: Do frame copy before write to TX FIFO.
  1069. Used when Network buffer is scatter-gather.
  1070. 0(default): Do not copy frame */
  1071. #else /* WINDOWS/WINCE */
  1072. #define CFG_TX_BUFFER_IS_SCATTER_LIST 1
  1073. #endif /* LINUX */
  1074. #if CFG_SDIO_TX_AGG || CFG_TX_BUFFER_IS_SCATTER_LIST
  1075. #define CFG_COALESCING_BUFFER_SIZE (CFG_TX_MAX_PKT_SIZE * NIC_TX_BUFF_SUM)
  1076. #else
  1077. #define CFG_COALESCING_BUFFER_SIZE (CFG_TX_MAX_PKT_SIZE)
  1078. #endif /* CFG_SDIO_TX_AGG || CFG_TX_BUFFER_IS_SCATTER_LIST */
  1079. /*------------------------------------------------------------------------------
  1080. * Flags and Parameters for TX path
  1081. *------------------------------------------------------------------------------
  1082. */
  1083. /*! Maximum number of SW TX packet queue */
  1084. #define CFG_TX_MAX_PKT_NUM 512 /* 256 must >= CFG_TX_STOP_NETIF_PER_QUEUE_THRESHOLD * 2;
  1085. or wmm will fail when queue is full */
  1086. /*! Maximum number of SW TX CMD packet buffer */
  1087. #define CFG_TX_MAX_CMD_PKT_NUM 32
  1088. /*! Maximum number of associated STAs */
  1089. #define CFG_NUM_OF_STA_RECORD 20
  1090. /*------------------------------------------------------------------------------
  1091. * Flags and Parameters for RX path
  1092. *------------------------------------------------------------------------------
  1093. */
  1094. /*! Max. descriptor number - sync. with firmware */
  1095. #if CFG_SLT_SUPPORT
  1096. #define CFG_NUM_OF_RX0_HIF_DESC 42
  1097. #else
  1098. #define CFG_NUM_OF_RX0_HIF_DESC 16
  1099. #endif
  1100. #define CFG_NUM_OF_RX1_HIF_DESC 2
  1101. /*! Max. buffer hold by QM */
  1102. #define CFG_NUM_OF_QM_RX_PKT_NUM 120
  1103. /*! Maximum number of SW RX packet buffer */
  1104. #define CFG_RX_MAX_PKT_NUM ((CFG_NUM_OF_RX0_HIF_DESC + CFG_NUM_OF_RX1_HIF_DESC) * 3 \
  1105. + CFG_NUM_OF_QM_RX_PKT_NUM)
  1106. #define CFG_RX_REORDER_Q_THRESHOLD 8
  1107. #ifndef LINUX
  1108. #define CFG_RX_RETAINED_PKT_THRESHOLD \
  1109. (CFG_NUM_OF_RX0_HIF_DESC + CFG_NUM_OF_RX1_HIF_DESC + CFG_NUM_OF_QM_RX_PKT_NUM)
  1110. #else
  1111. #define CFG_RX_RETAINED_PKT_THRESHOLD 0
  1112. #endif
  1113. /*! Maximum RX packet size, if exceed this value, drop incoming packet */
  1114. /* 7.2.3 Maganement frames */
  1115. #define CFG_RX_MAX_PKT_SIZE (28 + 2312 + 12 /*HIF_RX_HEADER_T*/) /* TODO: it should be
  1116. 4096 under emulation mode */
  1117. /*! Minimum RX packet size, if lower than this value, drop incoming packet */
  1118. #define CFG_RX_MIN_PKT_SIZE 10 /*!< 802.11 Control Frame is 10 bytes */
  1119. #if CFG_SDIO_RX_AGG
  1120. /* extra size for CS_STATUS and enhanced response */
  1121. #define CFG_RX_COALESCING_BUFFER_SIZE ((CFG_NUM_OF_RX0_HIF_DESC + 1) \
  1122. * CFG_RX_MAX_PKT_SIZE)
  1123. #else
  1124. #define CFG_RX_COALESCING_BUFFER_SIZE (CFG_RX_MAX_PKT_SIZE)
  1125. #endif
  1126. /*! RX BA capability */
  1127. #define CFG_NUM_OF_RX_BA_AGREEMENTS 8
  1128. #define CFG_RX_BA_MAX_WINSIZE 16
  1129. #define CFG_RX_BA_INC_SIZE 4
  1130. #define CFG_RX_MAX_BA_TID_NUM 8
  1131. #define CFG_RX_REORDERING_ENABLED 1
  1132. /*------------------------------------------------------------------------------
  1133. * Flags and Parameters for CMD/RESPONSE
  1134. *------------------------------------------------------------------------------
  1135. */
  1136. #define CFG_RESPONSE_POLLING_TIMEOUT 512
  1137. /*------------------------------------------------------------------------------
  1138. * Flags and Parameters for Protocol Stack
  1139. *------------------------------------------------------------------------------
  1140. */
  1141. /*! Maximum number of BSS in the SCAN list */
  1142. #define CFG_MAX_NUM_BSS_LIST 64
  1143. #define CFG_MAX_COMMON_IE_BUF_LEN ((1500 * CFG_MAX_NUM_BSS_LIST) / 3)
  1144. /*! Maximum size of Header buffer of each SCAN record */
  1145. #define CFG_RAW_BUFFER_SIZE 1024
  1146. /*! Maximum size of IE buffer of each SCAN record */
  1147. #define CFG_IE_BUFFER_SIZE 512
  1148. /*! Maximum number of STA records */
  1149. #define CFG_MAX_NUM_STA_RECORD 32
  1150. /*------------------------------------------------------------------------------
  1151. * Flags and Parameters for Power management
  1152. *------------------------------------------------------------------------------
  1153. */
  1154. #define CFG_ENABLE_FULL_PM 1
  1155. #define CFG_ENABLE_WAKEUP_ON_LAN 0
  1156. #define CFG_SUPPORT_WAKEUP_REASON_DEBUG 0 /* debug which packet wake up host */
  1157. #define CFG_INIT_POWER_SAVE_PROF ENUM_PSP_FAST_SWITCH
  1158. #define CFG_INIT_ENABLE_PATTERN_FILTER_ARP 0
  1159. #define CFG_INIT_UAPSD_AC_BMP 0 /* (BIT(3) | BIT(2) | BIT(1) | BIT(0)) */
  1160. /* #define CFG_SUPPORT_WAPI 0 */
  1161. #define CFG_SUPPORT_WPS 1
  1162. #define CFG_SUPPORT_WPS2 1
  1163. /*------------------------------------------------------------------------------
  1164. * 802.11i RSN Pre-authentication PMKID cahce maximun number
  1165. *------------------------------------------------------------------------------
  1166. */
  1167. #define CFG_MAX_PMKID_CACHE 16 /*!< max number of PMKID cache
  1168. 16(default) : The Max PMKID cache */
  1169. /*------------------------------------------------------------------------------
  1170. * Auto Channel Selection Maximun Channel Number
  1171. *------------------------------------------------------------------------------
  1172. */
  1173. #define MAX_AUTO_CHAL_NUM 23 /* Ch1~Ch14,Ch36,Ch40,Ch44,
  1174. Ch48,Ch149,Ch153,Ch157,Ch161 */
  1175. /*------------------------------------------------------------------------------
  1176. * FAST SCAN
  1177. *------------------------------------------------------------------------------
  1178. */
  1179. #define CFG_ENABLE_FAST_SCAN 0
  1180. #define CFG_CN_SUPPORT_CLASS121 0 /* Add Class 121, 5470-5725MHz, support for China domain */
  1181. #if CFG_ENABLE_FAST_SCAN
  1182. #define CFG_FAST_SCAN_DWELL_TIME 40
  1183. #define CFG_FAST_SCAN_REG_DOMAIN_DEF_IDX 10
  1184. #endif
  1185. /*------------------------------------------------------------------------------
  1186. * Flags and Parameters for Ad-Hoc
  1187. *------------------------------------------------------------------------------
  1188. */
  1189. #define CFG_INIT_ADHOC_FREQ (2462000)
  1190. #define CFG_INIT_ADHOC_MODE AD_HOC_MODE_MIXED_11BG
  1191. #define CFG_INIT_ADHOC_BEACON_INTERVAL (100)
  1192. #define CFG_INIT_ADHOC_ATIM_WINDOW (0)
  1193. /*------------------------------------------------------------------------------
  1194. * Flags and Parameters for Maximum Scan SSID number
  1195. *------------------------------------------------------------------------------
  1196. */
  1197. #define CFG_SCAN_SSID_MAX_NUM (4)
  1198. #define CFG_SCAN_SSID_MATCH_MAX_NUM (16)
  1199. /*------------------------------------------------------------------------------
  1200. * Flags and Parameters for Load Setup Default
  1201. *------------------------------------------------------------------------------
  1202. */
  1203. /*------------------------------------------------------------------------------
  1204. * Flags for enable 802.11A Band setting
  1205. *------------------------------------------------------------------------------
  1206. */
  1207. /*------------------------------------------------------------------------------
  1208. * Flags and Parameters for Interrupt Process
  1209. *------------------------------------------------------------------------------
  1210. */
  1211. #if defined(_HIF_SDIO) && defined(WINDOWS_CE)
  1212. #define CFG_IST_LOOP_COUNT 8
  1213. #else
  1214. #define CFG_IST_LOOP_COUNT 8
  1215. #endif /* _HIF_SDIO */
  1216. #define CFG_INT_WRITE_CLEAR 0
  1217. #if defined(LINUX)
  1218. #define CFG_DBG_GPIO_PINS 0 /* if 1, use MT6516 GPIO pin to log TX behavior */
  1219. #endif
  1220. /* 2 Flags for Driver Debug Options */
  1221. /*------------------------------------------------------------------------------
  1222. * Flags of TX Debug Option. NOTE(Kevin): Confirm with SA before modifying following flags.
  1223. *------------------------------------------------------------------------------
  1224. */
  1225. #define CFG_DBG_MGT_BUF 1 /*!< 1: Debug statistics usage of MGMT Buffer
  1226. 0: Disable */
  1227. #define CFG_HIF_STATISTICS 0
  1228. #define CFG_HIF_RX_STARVATION_WARNING 0
  1229. #define CFG_STARTUP_DEBUG 0
  1230. #define CFG_RX_PKTS_DUMP 1
  1231. /*------------------------------------------------------------------------------
  1232. * Flags of Firmware Download Option.
  1233. *------------------------------------------------------------------------------
  1234. */
  1235. #define CFG_ENABLE_FW_DOWNLOAD 1
  1236. #define CFG_ENABLE_FW_DOWNLOAD_ACK 1
  1237. #define CFG_ENABLE_FW_ENCRYPTION 1
  1238. #if defined(MT6628)
  1239. #define CFG_ENABLE_FW_DOWNLOAD_AGGREGATION 0
  1240. #define CFG_ENABLE_FW_DIVIDED_DOWNLOAD 1
  1241. #endif
  1242. #if defined(MT6620)
  1243. #if MT6620_FPGA_BWCS
  1244. #define CFG_FW_LOAD_ADDRESS 0x10014000
  1245. #define CFG_OVERRIDE_FW_START_ADDRESS 0
  1246. #define CFG_FW_START_ADDRESS 0x10014001
  1247. #elif MT6620_FPGA_V5
  1248. #define CFG_FW_LOAD_ADDRESS 0x10008000
  1249. #define CFG_OVERRIDE_FW_START_ADDRESS 0
  1250. #define CFG_FW_START_ADDRESS 0x10008001
  1251. #else
  1252. #define CFG_FW_LOAD_ADDRESS 0x10008000
  1253. #define CFG_OVERRIDE_FW_START_ADDRESS 0
  1254. #define CFG_FW_START_ADDRESS 0x10008001
  1255. #endif
  1256. #elif defined(MT6628)
  1257. #define CFG_FW_LOAD_ADDRESS 0x00060000
  1258. #define CFG_OVERRIDE_FW_START_ADDRESS 1
  1259. #define CFG_FW_START_ADDRESS 0x00060000
  1260. #define CFG_START_ADDRESS_IS_1ST_SECTION_ADDR 1
  1261. #endif
  1262. /*------------------------------------------------------------------------------
  1263. * Flags of Bluetooth-over-WiFi (BT 3.0 + HS) support
  1264. *------------------------------------------------------------------------------
  1265. */
  1266. #ifdef LINUX
  1267. #ifdef CONFIG_X86
  1268. #define CFG_ENABLE_BT_OVER_WIFI 0
  1269. #else
  1270. #define CFG_ENABLE_BT_OVER_WIFI 1
  1271. #endif
  1272. #else
  1273. #define CFG_ENABLE_BT_OVER_WIFI 0
  1274. #endif
  1275. #define CFG_BOW_SEPARATE_DATA_PATH 1
  1276. #define CFG_BOW_PHYSICAL_LINK_NUM 4
  1277. #define CFG_BOW_TEST 0
  1278. #define CFG_BOW_LIMIT_AIS_CHNL 1
  1279. #define CFG_BOW_SUPPORT_11N 0
  1280. #define CFG_BOW_RATE_LIMITATION 1
  1281. /*------------------------------------------------------------------------------
  1282. * Flags of Wi-Fi Direct support
  1283. *------------------------------------------------------------------------------
  1284. */
  1285. #ifdef LINUX
  1286. #ifdef CONFIG_X86
  1287. #define CFG_ENABLE_WIFI_DIRECT 0
  1288. #define CFG_SUPPORT_802_11W 0
  1289. #else
  1290. #define CFG_ENABLE_WIFI_DIRECT 1
  1291. #define CFG_SUPPORT_802_11W 0 /*!< 0(default): Disable 802.11W */
  1292. #endif
  1293. #else
  1294. #define CFG_ENABLE_WIFI_DIRECT 0
  1295. #define CFG_SUPPORT_802_11W 0 /* Not support at WinXP */
  1296. #endif
  1297. #define CFG_SUPPORT_PERSISTENT_GROUP 0
  1298. #define CFG_TEST_WIFI_DIRECT_GO 0
  1299. #define CFG_TEST_ANDROID_DIRECT_GO 0
  1300. #define CFG_UNITEST_P2P 0
  1301. /*
  1302. * Enable cfg80211 option after Android 2.2(Froyo) is suggested,
  1303. * cfg80211 on linux 2.6.29 is not mature yet
  1304. */
  1305. #define CFG_ENABLE_WIFI_DIRECT_CFG_80211 1
  1306. #define CFG_SUPPORT_HOTSPOT_OPTIMIZATION 1
  1307. #define CFG_HOTSPOT_OPTIMIZATION_BEACON_INTERVAL 300
  1308. #define CFG_HOTSPOT_OPTIMIZATION_DTIM 1
  1309. /*------------------------------------------------------------------------------
  1310. * Configuration Flags (Linux Only)
  1311. *------------------------------------------------------------------------------
  1312. */
  1313. #define CFG_SUPPORT_EXT_CONFIG 0
  1314. /*------------------------------------------------------------------------------
  1315. * Statistics Buffering Mechanism
  1316. *------------------------------------------------------------------------------
  1317. */
  1318. #if CFG_SUPPORT_PERFORMANCE_TEST
  1319. #define CFG_ENABLE_STATISTICS_BUFFERING 1
  1320. #else
  1321. #define CFG_ENABLE_STATISTICS_BUFFERING 0
  1322. #endif
  1323. #define CFG_STATISTICS_VALID_CYCLE 2000
  1324. #define CFG_LINK_QUALITY_VALID_PERIOD 5000
  1325. /*------------------------------------------------------------------------------
  1326. * Migration Option
  1327. *------------------------------------------------------------------------------
  1328. */
  1329. #define CFG_SUPPORT_ADHOC 0
  1330. #define CFG_SUPPORT_AAA 1
  1331. #define CFG_SUPPORT_BCM 0
  1332. #define CFG_SUPPORT_BCM_BWCS 0
  1333. #define CFG_SUPPORT_BCM_BWCS_DEBUG 0
  1334. #define CFG_SUPPORT_RDD_TEST_MODE 0
  1335. #define CFG_SUPPORT_PWR_MGT 1
  1336. #define CFG_RSN_MIGRATION 1
  1337. #define CFG_PRIVACY_MIGRATION 1
  1338. #define CFG_ENABLE_HOTSPOT_PRIVACY_CHECK 1
  1339. #define CFG_MGMT_FRAME_HANDLING 1
  1340. #define CFG_MGMT_HW_ACCESS_REPLACEMENT 0
  1341. #if CFG_SUPPORT_PERFORMANCE_TEST
  1342. #else
  1343. #endif
  1344. #define CFG_SUPPORT_AIS_5GHZ 1
  1345. #define CFG_SUPPORT_BEACON_CHANGE_DETECTION 0
  1346. /*------------------------------------------------------------------------------
  1347. * Option for NVRAM and Version Checking
  1348. *------------------------------------------------------------------------------
  1349. */
  1350. #define CFG_SUPPORT_NVRAM 1
  1351. #define CFG_NVRAM_EXISTENCE_CHECK 1
  1352. #define CFG_SW_NVRAM_VERSION_CHECK 1
  1353. #define CFG_SUPPORT_NIC_CAPABILITY 1
  1354. /*------------------------------------------------------------------------------
  1355. * CONFIG_TITLE : Stress Test Option
  1356. * OWNER : Puff Wen
  1357. * Description : For stress test only. DO NOT enable it while normal operation
  1358. *------------------------------------------------------------------------------
  1359. */
  1360. #define CFG_STRESS_TEST_SUPPORT 0
  1361. /*------------------------------------------------------------------------------
  1362. * Flags for LINT
  1363. *------------------------------------------------------------------------------
  1364. */
  1365. #define LINT_SAVE_AND_DISABLE /*lint -save -e* */
  1366. #define LINT_RESTORE /*lint -restore */
  1367. #define LINT_EXT_HEADER_BEGIN LINT_SAVE_AND_DISABLE
  1368. #define LINT_EXT_HEADER_END LINT_RESTORE
  1369. /*------------------------------------------------------------------------------
  1370. * Flags of Features
  1371. *------------------------------------------------------------------------------
  1372. */
  1373. #define CFG_SUPPORT_QOS 1 /* Enable/disable QoS TX, AMPDU */
  1374. #define CFG_SUPPORT_AMPDU_TX 1
  1375. #define CFG_SUPPORT_AMPDU_RX 1
  1376. #define CFG_SUPPORT_TSPEC 0 /* Enable/disable TS-related Action frames handling */
  1377. #define CFG_SUPPORT_UAPSD 1
  1378. #define CFG_SUPPORT_UL_PSMP 0
  1379. #define CFG_SUPPORT_ROAMING 1 /* Roaming System */
  1380. #define CFG_SUPPORT_SWCR 1
  1381. #define CFG_SUPPORT_ANTI_PIRACY 1
  1382. #define CFG_SUPPORT_OSC_SETTING 1
  1383. #define CFG_SUPPORT_P2P_RSSI_QUERY 0
  1384. #define CFG_SHOW_MACADDR_SOURCE 1
  1385. #define CFG_SUPPORT_802_11V 0 /* Support 802.11v Wireless Network Management */
  1386. #define CFG_SUPPORT_802_11V_TIMING_MEASUREMENT 0
  1387. #if (CFG_SUPPORT_802_11V_TIMING_MEASUREMENT == 1) && (CFG_SUPPORT_802_11V == 0)
  1388. #error "CFG_SUPPORT_802_11V should be 1 once CFG_SUPPORT_802_11V_TIMING_MEASUREMENT equals to 1"
  1389. #endif
  1390. #if (CFG_SUPPORT_802_11V == 0)
  1391. #define WNM_UNIT_TEST 0
  1392. #endif
  1393. #define CFG_DRIVER_COMPOSE_ASSOC_REQ 1
  1394. #define CFG_STRICT_CHECK_CAPINFO_PRIVACY 0
  1395. #define CFG_SUPPORT_WFD 1
  1396. #define CFG_SUPPORT_WFD_COMPOSE_IE 1
  1397. /*------------------------------------------------------------------------------
  1398. * Flags of Packet Lifetime Profiling Mechanism
  1399. *------------------------------------------------------------------------------
  1400. */
  1401. #define CFG_ENABLE_PKT_LIFETIME_PROFILE 1
  1402. #define CFG_ENABLE_PER_STA_STATISTICS 1
  1403. #define CFG_PRINT_RTP_PROFILE 0 /* If want to enable WFD Debug, please change it to 1. */
  1404. #define CFG_PRINT_RTP_SN_SKIP 0
  1405. #define CFG_SUPPORT_PWR_LIMIT_COUNTRY 1
  1406. /*------------------------------------------------------------------------------
  1407. * Flags of bus error tolerance
  1408. *------------------------------------------------------------------------------
  1409. */
  1410. #define CFG_FORCE_RESET_UNDER_BUS_ERROR 0
  1411. /*------------------------------------------------------------------------------
  1412. * Build Date Code Integration
  1413. *------------------------------------------------------------------------------
  1414. */
  1415. #define CFG_SUPPORT_BUILD_DATE_CODE 1
  1416. /*------------------------------------------------------------------------------
  1417. * Flags for prepare the FW compile flag
  1418. *------------------------------------------------------------------------------
  1419. */
  1420. #define COMPILE_FLAG0_GET_STA_LINK_STATUS (1<<0)
  1421. #define COMPILE_FLAG0_WFD_ENHANCEMENT_PROTECT (1<<1)
  1422. /*------------------------------------------------------------------------------
  1423. * Flags of Batch Scan SUPPORT
  1424. *------------------------------------------------------------------------------
  1425. */
  1426. #define CFG_SUPPORT_BATCH_SCAN 0
  1427. #define CFG_BATCH_MAX_MSCAN 2
  1428. /*------------------------------------------------------------------------------
  1429. * Flags of Channel Environment SUPPORT
  1430. *------------------------------------------------------------------------------
  1431. */
  1432. #define CFG_SUPPORT_GET_CH_ENV 1
  1433. /*------------------------------------------------------------------------------
  1434. * Flags of THERMO_THROTTLING SUPPORT
  1435. *------------------------------------------------------------------------------
  1436. */
  1437. #define CFG_SUPPORT_THERMO_THROTTLING 1
  1438. #define WLAN_INCLUDE_PROC 1
  1439. #define CFG_SUPPORT_DETECT_SECURITY_MODE_CHANGE 1
  1440. /*------------------------------------------------------------------------------
  1441. * Flags of drop multicast packet when device suspend
  1442. *------------------------------------------------------------------------------
  1443. */
  1444. #define CFG_SUPPORT_DROP_MC_PACKET 0
  1445. /*******************************************************************************
  1446. * D A T A T Y P E S
  1447. ********************************************************************************
  1448. */
  1449. /*******************************************************************************
  1450. * P U B L I C D A T A
  1451. ********************************************************************************
  1452. */
  1453. /*******************************************************************************
  1454. * P R I V A T E D A T A
  1455. ********************************************************************************
  1456. */
  1457. /*******************************************************************************
  1458. * M A C R O S
  1459. ********************************************************************************
  1460. */
  1461. /*******************************************************************************
  1462. * F U N C T I O N D E C L A R A T I O N S
  1463. ********************************************************************************
  1464. */
  1465. /*******************************************************************************
  1466. * F U N C T I O N S
  1467. ********************************************************************************
  1468. */
  1469. #endif /* _CONFIG_H */