cfg_mlme_fe_wmm.h 18 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006
  1. /*
  2. * Copyright (c) 2012-2018 The Linux Foundation. All rights reserved.
  3. *
  4. * Permission to use, copy, modify, and/or distribute this software for
  5. * any purpose with or without fee is hereby granted, provided that the
  6. * above copyright notice and this permission notice appear in all
  7. * copies.
  8. *
  9. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  10. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  11. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  12. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  13. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  14. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  15. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  16. * PERFORMANCE OF THIS SOFTWARE.
  17. */
  18. /**
  19. * DOC: This file contains centralized definitions of converged configuration.
  20. */
  21. #ifndef __CFG_MLME_FE_WMM_H
  22. #define __CFG_MLME_FE_WMM_H
  23. #define CFG_QOS_ENABLED CFG_BOOL( \
  24. "qos_enabled", \
  25. 0, \
  26. "QOS Enabled")
  27. #define CFG_WME_ENABLED CFG_BOOL( \
  28. "wme_enabled", \
  29. 1, \
  30. "WME Enabled")
  31. #define CFG_MAX_SP_LENGTH CFG_UINT( \
  32. "max_sp_length", \
  33. 0, \
  34. 3, \
  35. 0, \
  36. CFG_VALUE_OR_DEFAULT, \
  37. "MAX sp length")
  38. #define CFG_WSM_ENABLED CFG_BOOL( \
  39. "wsm_enabled", \
  40. 0, \
  41. "WSM Enabled")
  42. #define CFG_EDCA_PROFILE CFG_UINT( \
  43. "edca_profile", \
  44. 0, \
  45. 4, \
  46. 1, \
  47. CFG_VALUE_OR_DEFAULT, \
  48. "Edca Profile")
  49. /* default TSPEC parameters for AC_VO */
  50. /*
  51. * <ini>
  52. * InfraDirAcVo - Set TSPEC direction for VO
  53. * @Min: 0
  54. * @Max: 3
  55. * @Default: 3
  56. *
  57. * This ini is used to set TSPEC direction for VO
  58. *
  59. * Related: None.
  60. *
  61. * Supported Feature: WMM
  62. *
  63. * Usage: Internal/External
  64. *
  65. * </ini>
  66. */
  67. #define CFG_QOS_WMM_DIR_AC_VO CFG_INI_UINT( \
  68. "InfraDirAcVo", \
  69. 0, \
  70. 3, \
  71. 3, \
  72. CFG_VALUE_OR_DEFAULT, \
  73. "direction for vo")
  74. /*
  75. * <ini>
  76. * InfraNomMsduSizeAcVo - Set normal MSDU size for VO
  77. * @Min: 0x0
  78. * @Max: 0xFFFF
  79. * @Default: 0x80D0
  80. *
  81. * This ini is used to set normal MSDU size for VO
  82. *
  83. * Related: None.
  84. *
  85. * Supported Feature: WMM
  86. *
  87. * Usage: Internal/External
  88. *
  89. * </ini>
  90. */
  91. #define CFG_QOS_WMM_NOM_MSDU_SIZE_AC_VO CFG_INI_UINT( \
  92. "InfraNomMsduSizeAcVo", \
  93. 0x0, \
  94. 0xFFFF, \
  95. 0x80D0, \
  96. CFG_VALUE_OR_DEFAULT, \
  97. "MSDU size for VO")
  98. /*
  99. * <ini>
  100. * InfraMeanDataRateAcVo - Set mean data rate for VO
  101. * @Min: 0x0
  102. * @Max: 0xFFFFFFFF
  103. * @Default: 0x14500
  104. *
  105. * This ini is used to set mean data rate for VO
  106. *
  107. * Related: None.
  108. *
  109. * Supported Feature: WMM
  110. *
  111. * Usage: Internal/External
  112. *
  113. * </ini>
  114. */
  115. #define CFG_QOS_WMM_MEAN_DATA_RATE_AC_VO CFG_INI_UINT( \
  116. "InfraMeanDataRateAcVo", \
  117. 0x0, \
  118. 0xFFFFFFFF, \
  119. 0x14500, \
  120. CFG_VALUE_OR_DEFAULT, \
  121. "mean data rate for VO")
  122. /*
  123. * <ini>
  124. * InfraMinPhyRateAcVo - Set min PHY rate for VO
  125. * @Min: 0x0
  126. * @Max: 0xFFFFFFFF
  127. * @Default: 0x5B8D80
  128. *
  129. * This ini is used to set min PHY rate for VO
  130. *
  131. * Related: None.
  132. *
  133. * Supported Feature: WMM
  134. *
  135. * Usage: Internal/External
  136. *
  137. * </ini>
  138. */
  139. #define CFG_QOS_WMM_MIN_PHY_RATE_AC_VO CFG_INI_UINT( \
  140. "InfraMinPhyRateAcVo", \
  141. 0x0, \
  142. 0xFFFFFFFF, \
  143. 0x5B8D80, \
  144. CFG_VALUE_OR_DEFAULT, \
  145. "min PHY rate for VO")
  146. /*
  147. * <ini>
  148. * InfraSbaAcVo - Set surplus bandwidth allowance for VO
  149. * @Min: 0x2001
  150. * @Max: 0xFFFF
  151. * @Default: 0x2001
  152. *
  153. * This ini is used to set surplus bandwidth allowance for VO
  154. *
  155. * Related: None.
  156. *
  157. * Supported Feature: WMM
  158. *
  159. * Usage: Internal/External
  160. *
  161. * </ini>
  162. */
  163. #define CFG_QOS_WMM_SBA_AC_VO CFG_INI_UINT( \
  164. "InfraSbaAcVo", \
  165. 0x2001, \
  166. 0xFFFF, \
  167. 0x2001, \
  168. CFG_VALUE_OR_DEFAULT, \
  169. "surplus bandwidth allowance for VO")
  170. /*
  171. * <ini>
  172. * InfraDirAcVi - Set TSPEC direction for VI
  173. * @Min: 0
  174. * @Max: 3
  175. * @Default: 3
  176. *
  177. * This ini is used to set TSPEC direction for VI
  178. *
  179. * Related: None.
  180. *
  181. * Supported Feature: WMM
  182. *
  183. * Usage: Internal/External
  184. *
  185. * </ini>
  186. */
  187. #define CFG_QOS_WMM_DIR_AC_VI CFG_INI_UINT( \
  188. "InfraDirAcVi", \
  189. 0, \
  190. 3, \
  191. 3, \
  192. CFG_VALUE_OR_DEFAULT, \
  193. "TSPEC direction for VI")
  194. /*
  195. * <ini>
  196. * InfraNomMsduSizeAcVi - Set normal MSDU size for VI
  197. * @Min: 0x0
  198. * @Max: 0xFFFF
  199. * @Default: 0x85DC
  200. *
  201. * This ini is used to set normal MSDU size for VI
  202. *
  203. * Related: None.
  204. *
  205. * Supported Feature: WMM
  206. *
  207. * Usage: Internal/External
  208. *
  209. * </ini>
  210. */
  211. #define CFG_QOS_WMM_NOM_MSDU_SIZE_AC_VI CFG_INI_UINT( \
  212. "InfraNomMsduSizeAcVi", \
  213. 0x0, \
  214. 0xFFFF, \
  215. 0x85DC, \
  216. CFG_VALUE_OR_DEFAULT, \
  217. "MSDU size for VI")
  218. /*
  219. * <ini>
  220. * InfraMeanDataRateAcVi - Set mean data rate for VI
  221. * @Min: 0x0
  222. * @Max: 0xFFFFFFFF
  223. * @Default: 0x57E40
  224. *
  225. * This ini is used to set mean data rate for VI
  226. *
  227. * Related: None.
  228. *
  229. * Supported Feature: WMM
  230. *
  231. * Usage: Internal/External
  232. *
  233. * </ini>
  234. */
  235. #define CFG_QOS_WMM_MEAN_DATA_RATE_AC_VI CFG_INI_UINT( \
  236. "InfraMeanDataRateAcVi", \
  237. 0x0, \
  238. 0xFFFFFFFF, \
  239. 0x57E40, \
  240. CFG_VALUE_OR_DEFAULT, \
  241. "data rate for VI")
  242. /*
  243. * <ini>
  244. * InfraMinPhyRateAcVi - Set min PHY rate for VI
  245. * @Min: 0x0
  246. * @Max: 0xFFFFFFFF
  247. * @Default: 0x5B8D80
  248. *
  249. * This ini is used to set min PHY rate for VI
  250. *
  251. * Related: None.
  252. *
  253. * Supported Feature: WMM
  254. *
  255. * Usage: Internal/External
  256. *
  257. * </ini>
  258. */
  259. #define CFG_QOS_WMM_MIN_PHY_RATE_AC_VI CFG_INI_UINT( \
  260. "InfraMinPhyRateAcVi", \
  261. 0x0, \
  262. 0xFFFFFFFF, \
  263. 0x5B8D80, \
  264. CFG_VALUE_OR_DEFAULT, \
  265. "min PHY rate for VI")
  266. /*
  267. * <ini>
  268. * InfraSbaAcVi - Set surplus bandwidth allowance for VI
  269. * @Min: 0x2001
  270. * @Max: 0xFFFF
  271. * @Default: 0x2001
  272. *
  273. * This ini is used to set surplus bandwidth allowance for VI
  274. *
  275. * Related: None.
  276. *
  277. * Supported Feature: WMM
  278. *
  279. * Usage: Internal/External
  280. *
  281. * </ini>
  282. */
  283. #define CFG_QOS_WMM_SBA_AC_VI CFG_INI_UINT( \
  284. "InfraSbaAcVi", \
  285. 0x2001, \
  286. 0xFFFF, \
  287. 0x2001, \
  288. CFG_VALUE_OR_DEFAULT, \
  289. "surplus bandwidth allowance for VI")
  290. /*
  291. * <ini>
  292. * InfraUapsdVoSrvIntv - Set Uapsd service interval for voice
  293. * @Min: 0
  294. * @Max: 4294967295UL
  295. * @Default: 20
  296. *
  297. * This ini is used to set Uapsd service interval for voice.
  298. *
  299. * Related: None.
  300. *
  301. * Supported Feature: WMM
  302. *
  303. * Usage: Internal/External
  304. *
  305. * </ini>
  306. */
  307. #define CFG_QOS_WMM_UAPSD_VO_SRV_INTV CFG_INI_UINT( \
  308. "InfraUapsdVoSrvIntv", \
  309. 0, \
  310. 4294967295UL, \
  311. 20, \
  312. CFG_VALUE_OR_DEFAULT, \
  313. "Infra uapsd vo srv intv")
  314. /*
  315. * <ini>
  316. * InfraUapsdVoSuspIntv - Set Uapsd suspension interval for voice
  317. * @Min: 0
  318. * @Max: 4294967295UL
  319. * @Default: 2000
  320. *
  321. * This ini is used to set Uapsd suspension interval for voice.
  322. *
  323. * Related: None.
  324. *
  325. * Supported Feature: WMM
  326. *
  327. * Usage: Internal/External
  328. *
  329. * </ini>
  330. */
  331. #define CFG_QOS_WMM_UAPSD_VO_SUS_INTV CFG_INI_UINT( \
  332. "InfraUapsdVoSuspIntv", \
  333. 0, \
  334. 4294967295UL, \
  335. 2000, \
  336. CFG_VALUE_OR_DEFAULT, \
  337. "Infra uapsd vo sus intv")
  338. /*
  339. * <ini>
  340. * InfraUapsdViSrvIntv - Set Uapsd service interval for video
  341. * @Min: 0
  342. * @Max: 4294967295UL
  343. * @Default: 300
  344. *
  345. * This ini is used to set Uapsd service interval for video.
  346. *
  347. * Related: None.
  348. *
  349. * Supported Feature: WMM
  350. *
  351. * Usage: Internal/External
  352. *
  353. * </ini>
  354. */
  355. #define CFG_QOS_WMM_UAPSD_VI_SRV_INTV CFG_INI_UINT( \
  356. "InfraUapsdViSrvIntv", \
  357. 0, \
  358. 4294967295UL, \
  359. 300, \
  360. CFG_VALUE_OR_DEFAULT, \
  361. "Infra uapsd vi srv intv")
  362. /*
  363. * <ini>
  364. * InfraUapsdViSuspIntv - Set Uapsd suspension interval for video
  365. * @Min: 0
  366. * @Max: 4294967295UL
  367. * @Default: 2000
  368. *
  369. * This ini is used to set Uapsd suspension interval for video
  370. *
  371. * Related: None.
  372. *
  373. * Supported Feature: WMM
  374. *
  375. * Usage: Internal/External
  376. *
  377. * </ini>
  378. */
  379. #define CFG_QOS_WMM_UAPSD_VI_SUS_INTV CFG_INI_UINT( \
  380. "InfraUapsdViSuspIntv", \
  381. 0, \
  382. 4294967295UL, \
  383. 2000, \
  384. CFG_VALUE_OR_DEFAULT, \
  385. "Infra uapsd vi sus intv")
  386. /*
  387. * <ini>
  388. * InfraDirAcBe - Set TSPEC direction for BE
  389. * @Min: 0
  390. * @Max: 3
  391. * @Default: 3
  392. *
  393. * This ini is used to set TSPEC direction for BE
  394. *
  395. * Related: None.
  396. *
  397. * Supported Feature: WMM
  398. *
  399. * Usage: Internal/External
  400. *
  401. * </ini>
  402. */
  403. #define CFG_QOS_WMM_DIR_AC_BE CFG_INI_UINT( \
  404. "InfraDirAcBe", \
  405. 0, \
  406. 3, \
  407. 3, \
  408. CFG_VALUE_OR_DEFAULT, \
  409. "TSPEC direction for BE")
  410. /*
  411. * <ini>
  412. * InfraNomMsduSizeAcBe - Set normal MSDU size for BE
  413. * @Min: 0x0
  414. * @Max: 0xFFFF
  415. * @Default: 0x85DC
  416. *
  417. * This ini is used to set normal MSDU size for BE
  418. *
  419. * Related: None.
  420. *
  421. * Supported Feature: WMM
  422. *
  423. * Usage: Internal/External
  424. *
  425. * </ini>
  426. */
  427. #define CFG_QOS_WMM_NOM_MSDU_SIZE_AC_BE CFG_INI_UINT( \
  428. "InfraNomMsduSizeAcBe", \
  429. 0x0, \
  430. 0xFFFF, \
  431. 0x85DC, \
  432. CFG_VALUE_OR_DEFAULT, \
  433. "MSDU size for BE")
  434. /*
  435. * <ini>
  436. * InfraMeanDataRateAcBe - Set mean data rate for BE
  437. * @Min: 0x0
  438. * @Max: 0xFFFFFFFF
  439. * @Default: 0x493E0
  440. *
  441. * This ini is used to set mean data rate for BE
  442. *
  443. * Related: None.
  444. *
  445. * Supported Feature: WMM
  446. *
  447. * Usage: Internal/External
  448. *
  449. * </ini>
  450. */
  451. #define CFG_QOS_WMM_MEAN_DATA_RATE_AC_BE CFG_INI_UINT( \
  452. "InfraMeanDataRateAcBe", \
  453. 0x0, \
  454. 0xFFFFFFFF, \
  455. 0x493E0, \
  456. CFG_VALUE_OR_DEFAULT, \
  457. "data rate for BE")
  458. /*
  459. * <ini>
  460. * InfraMinPhyRateAcBe - Set min PHY rate for BE
  461. * @Min: 0x0
  462. * @Max: 0xFFFFFFFF
  463. * @Default: 0x5B8D80
  464. *
  465. * This ini is used to set min PHY rate for BE
  466. *
  467. * Related: None.
  468. *
  469. * Supported Feature: WMM
  470. *
  471. * Usage: Internal/External
  472. *
  473. * </ini>
  474. */
  475. #define CFG_QOS_WMM_MIN_PHY_RATE_AC_BE CFG_INI_UINT( \
  476. "InfraMinPhyRateAcBe", \
  477. 0x0, \
  478. 0xFFFFFFFF, \
  479. 0x5B8D80, \
  480. CFG_VALUE_OR_DEFAULT, \
  481. "min PHY rate for BE")
  482. /*
  483. * <ini>
  484. * InfraSbaAcBe - Set surplus bandwidth allowance for BE
  485. * @Min: 0x2001
  486. * @Max: 0xFFFF
  487. * @Default: 0x2001
  488. *
  489. * This ini is used to set surplus bandwidth allowance for BE
  490. *
  491. * Related: None.
  492. *
  493. * Supported Feature: WMM
  494. *
  495. * Usage: Internal/External
  496. *
  497. * </ini>
  498. */
  499. #define CFG_QOS_WMM_SBA_AC_BE CFG_INI_UINT( \
  500. "InfraSbaAcBe", \
  501. 0x2001, \
  502. 0xFFFF, \
  503. 0x2001, \
  504. CFG_VALUE_OR_DEFAULT, \
  505. "surplus bandwidth allowance for BE")
  506. /*
  507. * <ini>
  508. * InfraUapsdBeSrvIntv - Set Uapsd service interval for BE
  509. * @Min: 0
  510. * @Max: 4294967295UL
  511. * @Default: 300
  512. *
  513. * This ini is used to set Uapsd service interval for BE
  514. *
  515. * Related: None.
  516. *
  517. * Supported Feature: WMM
  518. *
  519. * Usage: Internal/External
  520. *
  521. * </ini>
  522. */
  523. #define CFG_QOS_WMM_UAPSD_BE_SRV_INTV CFG_INI_UINT( \
  524. "InfraUapsdBeSrvIntv", \
  525. 0, \
  526. 4294967295UL, \
  527. 300, \
  528. CFG_VALUE_OR_DEFAULT, \
  529. "Infra uapsd be srv intv")
  530. /*
  531. * <ini>
  532. * InfraUapsdBeSuspIntv - Set Uapsd suspension interval for BE
  533. * @Min: 0
  534. * @Max: 4294967295UL
  535. * @Default: 2000
  536. *
  537. * This ini is used to set Uapsd suspension interval for BE
  538. *
  539. * Related: None.
  540. *
  541. * Supported Feature: WMM
  542. *
  543. * Usage: Internal/External
  544. *
  545. * </ini>
  546. */
  547. #define CFG_QOS_WMM_UAPSD_BE_SUS_INTV CFG_INI_UINT( \
  548. "InfraUapsdBeSuspIntv", \
  549. 0, \
  550. 4294967295UL, \
  551. 2000, \
  552. CFG_VALUE_OR_DEFAULT, \
  553. "Infra uapsd vi sus intv")
  554. /*
  555. * <ini>
  556. * InfraDirAcBk - Set TSPEC direction for BK
  557. * @Min: 0
  558. * @Max: 3
  559. * @Default: 3
  560. *
  561. * This ini is used to set TSPEC direction for BK
  562. *
  563. * Related: None.
  564. *
  565. * Supported Feature: WMM
  566. *
  567. * Usage: Internal/External
  568. *
  569. * </ini>
  570. */
  571. #define CFG_QOS_WMM_DIR_AC_BK CFG_INI_UINT( \
  572. "InfraDirAcBk", \
  573. 0, \
  574. 3, \
  575. 3, \
  576. CFG_VALUE_OR_DEFAULT, \
  577. "TSPEC direction for BK")
  578. /*
  579. * <ini>
  580. * InfraNomMsduSizeAcBk - Set normal MSDU size for BK
  581. * @Min: 0x0
  582. * @Max: 0xFFFF
  583. * @Default: 0x85DC
  584. *
  585. * This ini is used to set normal MSDU size for BK
  586. *
  587. * Related: None.
  588. *
  589. * Supported Feature: WMM
  590. *
  591. * Usage: Internal/External
  592. *
  593. * </ini>
  594. */
  595. #define CFG_QOS_WMM_NOM_MSDU_SIZE_AC_BK CFG_INI_UINT( \
  596. "InfraNomMsduSizeAcBk", \
  597. 0x0, \
  598. 0xFFFF, \
  599. 0x85DC, \
  600. CFG_VALUE_OR_DEFAULT, \
  601. "MSDU size for BK")
  602. /*
  603. * <ini>
  604. * InfraMeanDataRateAcBk - Set mean data rate for BK
  605. * @Min: 0x0
  606. * @Max: 0xFFFFFFFF
  607. * @Default: 0x493E0
  608. *
  609. * This ini is used to set mean data rate for BK
  610. *
  611. * Related: None.
  612. *
  613. * Supported Feature: WMM
  614. *
  615. * Usage: Internal/External
  616. *
  617. * </ini>
  618. */
  619. #define CFG_QOS_WMM_MEAN_DATA_RATE_AC_BK CFG_INI_UINT( \
  620. "InfraMeanDataRateAcBk", \
  621. 0x0, \
  622. 0xFFFFFFFF, \
  623. 0x493E0, \
  624. CFG_VALUE_OR_DEFAULT, \
  625. "data rate for BK")
  626. /*
  627. * <ini>
  628. * InfraMinPhyRateAcBk - Set min PHY rate for BK
  629. * @Min: 0x0
  630. * @Max: 0xFFFFFFFF
  631. * @Default: 0x5B8D80
  632. *
  633. * This ini is used to set min PHY rate for BK
  634. *
  635. * Related: None.
  636. *
  637. * Supported Feature: WMM
  638. *
  639. * Usage: Internal/External
  640. *
  641. * </ini>
  642. */
  643. #define CFG_QOS_WMM_MIN_PHY_RATE_AC_BK CFG_INI_UINT( \
  644. "InfraMinPhyRateAcBk", \
  645. 0x0, \
  646. 0xFFFFFFFF, \
  647. 0x5B8D80, \
  648. CFG_VALUE_OR_DEFAULT, \
  649. "min PHY rate for BK")
  650. /*
  651. * <ini>
  652. * InfraSbaAcBk - Set surplus bandwidth allowance for BK
  653. * @Min: 0x2001
  654. * @Max: 0xFFFF
  655. * @Default: 0x2001
  656. *
  657. * This ini is used to set surplus bandwidth allowance for BK
  658. *
  659. * Related: None.
  660. *
  661. * Supported Feature: WMM
  662. *
  663. * Usage: Internal/External
  664. *
  665. * </ini>
  666. */
  667. #define CFG_QOS_WMM_SBA_AC_BK CFG_INI_UINT( \
  668. "InfraSbaAcBk", \
  669. 0x2001, \
  670. 0xFFFF, \
  671. 0x2001, \
  672. CFG_VALUE_OR_DEFAULT, \
  673. "surplus bandwidth allowance for BK")
  674. /*
  675. * <ini>
  676. * InfraUapsdBkSrvIntv - Set Uapsd service interval for BK
  677. * @Min: 0
  678. * @Max: 4294967295UL
  679. * @Default: 300
  680. *
  681. * This ini is used to set Uapsd service interval for BK
  682. *
  683. * Related: None.
  684. *
  685. * Supported Feature: WMM
  686. *
  687. * Usage: Internal/External
  688. *
  689. * </ini>
  690. */
  691. #define CFG_QOS_WMM_UAPSD_BK_SRV_INTV CFG_INI_UINT( \
  692. "InfraUapsdBkSrvIntv", \
  693. 0, \
  694. 4294967295UL, \
  695. 300, \
  696. CFG_VALUE_OR_DEFAULT, \
  697. "Infra uapsd bk srv intv")
  698. /*
  699. * <ini>
  700. * InfraUapsdBkSuspIntv - Set Uapsd suspension interval for BK
  701. * @Min: 0
  702. * @Max: 4294967295UL
  703. * @Default: 2000
  704. *
  705. * This ini is used to set Uapsd suspension interval for BK
  706. *
  707. * Related: None.
  708. *
  709. * Supported Feature: WMM
  710. *
  711. * Usage: Internal/External
  712. *
  713. * </ini>
  714. */
  715. #define CFG_QOS_WMM_UAPSD_BK_SUS_INTV CFG_INI_UINT( \
  716. "InfraUapsdBkSuspIntv", \
  717. 0, \
  718. 4294967295UL, \
  719. 2000, \
  720. CFG_VALUE_OR_DEFAULT, \
  721. "Infra uapsd bk sus intv")
  722. /* WMM configuration */
  723. /*
  724. * <ini>
  725. * WmmIsEnabled - Enable WMM feature
  726. * @Min: 0
  727. * @Max: 2
  728. * @Default: 0
  729. *
  730. * This ini is used to enable/disable WMM.
  731. *
  732. * Related: None.
  733. *
  734. * Supported Feature: WMM
  735. *
  736. * Usage: Internal/External
  737. *
  738. * </ini>
  739. */
  740. #define CFG_QOS_WMM_MODE CFG_INI_UINT( \
  741. "WmmIsEnabled", \
  742. 0, \
  743. 2, \
  744. 0, \
  745. CFG_VALUE_OR_DEFAULT, \
  746. "Enable WMM feature")
  747. /*
  748. * <ini>
  749. * 80211eIsEnabled - Enable 802.11e feature
  750. * @Min: 0
  751. * @Max: 1
  752. * @Default: 0
  753. *
  754. * This ini is used to enable/disable 802.11e.
  755. *
  756. * Related: None.
  757. *
  758. * Supported Feature: 802.11e
  759. *
  760. * Usage: Internal/External
  761. *
  762. * </ini>
  763. */
  764. #define CFG_QOS_WMM_80211E_ENABLED CFG_INI_BOOL( \
  765. "80211eIsEnabled", \
  766. 0, \
  767. "Enable 802.11e feature")
  768. /*
  769. * <ini>
  770. * UapsdMask - To setup U-APSD mask for ACs
  771. * @Min: 0x00
  772. * @Max: 0xFF
  773. * @Default: 0x00
  774. *
  775. * This ini is used to setup U-APSD mask for ACs.
  776. *
  777. * Related: None.
  778. *
  779. * Supported Feature: WMM
  780. *
  781. * Usage: Internal/External
  782. *
  783. * </ini>
  784. */
  785. #define CFG_QOS_WMM_UAPSD_MASK CFG_INI_UINT( \
  786. "UapsdMask", \
  787. 0x00, \
  788. 0xFF, \
  789. 0x00, \
  790. CFG_VALUE_OR_DEFAULT, \
  791. "setup U-APSD mask for ACs")
  792. /*
  793. * <ini>
  794. * ImplicitQosIsEnabled - Enableimplicit QOS
  795. * @Min: 0
  796. * @Max: 1
  797. * @Default: 0
  798. *
  799. * This ini is used to enable/disable implicit QOS.
  800. *
  801. * Related: None.
  802. *
  803. * Supported Feature: WMM
  804. *
  805. * Usage: Internal/External
  806. *
  807. * </ini>
  808. */
  809. #define CFG_QOS_WMM_IMPLICIT_SETUP_ENABLED CFG_INI_BOOL( \
  810. "ImplicitQosIsEnabled", \
  811. 0, \
  812. "Enable implicit QOS")
  813. #ifdef FEATURE_WLAN_ESE
  814. /*
  815. * <ini>
  816. * UapsdMask - To setup Infra Inactivity Interval for ACs
  817. * @Min: 0
  818. * @Max: 4294967295UL
  819. * @Default: 0
  820. *
  821. * This ini is used to setup Infra Inactivity Interval for
  822. * ACs.
  823. *
  824. * Related: None.
  825. *
  826. * Supported Feature: WMM
  827. *
  828. * Usage: Internal/External
  829. *
  830. * </ini>
  831. */
  832. #define CFG_QOS_WMM_INACTIVITY_INTERVAL CFG_INI_UINT( \
  833. "InfraInactivityInterval", \
  834. 0, \
  835. 4294967295UL, \
  836. 0, \
  837. CFG_VALUE_OR_DEFAULT, \
  838. "Infra Inactivity Interval")
  839. #define QOS_CFG CFG(CFG_QOS_WMM_INACTIVITY_INTERVAL)
  840. #else
  841. #define QOS_CFG
  842. #endif /* FEATURE_WLAN_ESE */
  843. /*
  844. * <ini>
  845. * burstSizeDefinition - Set TS burst size
  846. * @Min: 0
  847. * @Max: 1
  848. * @Default: 0
  849. *
  850. * This ini is used to set TS burst size
  851. *
  852. * Related: None.
  853. *
  854. * Supported Feature: WMM
  855. *
  856. * Usage: Internal/External
  857. *
  858. * </ini>
  859. */
  860. #define CFG_QOS_WMM_BURST_SIZE_DEFN CFG_INI_BOOL( \
  861. "burstSizeDefinition", \
  862. 0, \
  863. "burst size definition")
  864. /*
  865. * <ini>
  866. * tsInfoAckPolicy - Set TS ack policy
  867. * @Min: 0x00
  868. * @Max: 0x01
  869. * @Default: 0x00
  870. *
  871. * This ini is used to set TS ack policy
  872. * TS Info Ack Policy can be either of the
  873. * following values:
  874. * enum mlme_ts_info_ack_policy {
  875. * TS_INFO_ACK_POLICY_NORMAL_ACK = 0,
  876. * TS_INFO_ACK_POLICY_HT_IMMEDIATE_BLOCK_ACK = 1,
  877. * }
  878. *
  879. * Related: None.
  880. *
  881. * Supported Feature: WMM
  882. *
  883. * Usage: Internal/External
  884. *
  885. * </ini>
  886. */
  887. #define CFG_QOS_WMM_TS_INFO_ACK_POLICY CFG_INI_UINT( \
  888. "tsInfoAckPolicy", \
  889. 0, \
  890. 1, \
  891. 0, \
  892. CFG_VALUE_OR_DEFAULT, \
  893. "ts info ack policy")
  894. /*
  895. * <ini>
  896. * gAddTSWhenACMIsOff - Set ACM value for AC
  897. * @Min: 0
  898. * @Max: 1
  899. * @Default: 0
  900. *
  901. * This ini is used to set ACM value for AC
  902. *
  903. * Related: None.
  904. *
  905. * Supported Feature: WMM
  906. *
  907. * Usage: Internal/External
  908. *
  909. * </ini>
  910. */
  911. #define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF CFG_INI_BOOL( \
  912. "gAddTSWhenACMIsOff", \
  913. 0, \
  914. "ACM value for AC")
  915. #define CFG_WMM_PARAMS_ALL \
  916. CFG(CFG_QOS_ENABLED) \
  917. CFG(CFG_WME_ENABLED) \
  918. CFG(CFG_MAX_SP_LENGTH) \
  919. CFG(CFG_WSM_ENABLED) \
  920. CFG(CFG_EDCA_PROFILE) \
  921. CFG(CFG_QOS_WMM_DIR_AC_VO) \
  922. CFG(CFG_QOS_WMM_NOM_MSDU_SIZE_AC_VO) \
  923. CFG(CFG_QOS_WMM_MEAN_DATA_RATE_AC_VO) \
  924. CFG(CFG_QOS_WMM_MIN_PHY_RATE_AC_VO) \
  925. CFG(CFG_QOS_WMM_SBA_AC_VO) \
  926. CFG(CFG_QOS_WMM_UAPSD_VO_SRV_INTV) \
  927. CFG(CFG_QOS_WMM_UAPSD_VO_SUS_INTV) \
  928. CFG(CFG_QOS_WMM_DIR_AC_VI) \
  929. CFG(CFG_QOS_WMM_NOM_MSDU_SIZE_AC_VI) \
  930. CFG(CFG_QOS_WMM_MEAN_DATA_RATE_AC_VI) \
  931. CFG(CFG_QOS_WMM_MIN_PHY_RATE_AC_VI) \
  932. CFG(CFG_QOS_WMM_SBA_AC_VI) \
  933. CFG(CFG_QOS_WMM_UAPSD_VI_SRV_INTV) \
  934. CFG(CFG_QOS_WMM_UAPSD_VI_SUS_INTV) \
  935. CFG(CFG_QOS_WMM_DIR_AC_BE) \
  936. CFG(CFG_QOS_WMM_NOM_MSDU_SIZE_AC_BE) \
  937. CFG(CFG_QOS_WMM_MEAN_DATA_RATE_AC_BE) \
  938. CFG(CFG_QOS_WMM_MIN_PHY_RATE_AC_BE) \
  939. CFG(CFG_QOS_WMM_SBA_AC_BE) \
  940. CFG(CFG_QOS_WMM_UAPSD_BE_SRV_INTV) \
  941. CFG(CFG_QOS_WMM_UAPSD_BE_SUS_INTV) \
  942. CFG(CFG_QOS_WMM_DIR_AC_BK) \
  943. CFG(CFG_QOS_WMM_NOM_MSDU_SIZE_AC_BK) \
  944. CFG(CFG_QOS_WMM_MEAN_DATA_RATE_AC_BK) \
  945. CFG(CFG_QOS_WMM_MIN_PHY_RATE_AC_BK) \
  946. CFG(CFG_QOS_WMM_SBA_AC_BK) \
  947. CFG(CFG_QOS_WMM_UAPSD_BK_SRV_INTV) \
  948. CFG(CFG_QOS_WMM_UAPSD_BK_SUS_INTV) \
  949. CFG(CFG_QOS_WMM_MODE) \
  950. CFG(CFG_QOS_WMM_80211E_ENABLED) \
  951. CFG(CFG_QOS_WMM_UAPSD_MASK) \
  952. CFG(CFG_QOS_WMM_IMPLICIT_SETUP_ENABLED) \
  953. QOS_CFG \
  954. CFG(CFG_QOS_WMM_BURST_SIZE_DEFN) \
  955. CFG(CFG_QOS_WMM_TS_INFO_ACK_POLICY) \
  956. CFG(CFG_QOS_ADDTS_WHEN_ACM_IS_OFF)
  957. #endif /* __CFG_MLME_FE_WMM_H */