cfg_mlme_generic.h 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975
  1. /*
  2. * Copyright (c) 2012-2021 The Linux Foundation. All rights reserved.
  3. * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
  4. *
  5. * Permission to use, copy, modify, and/or distribute this software for
  6. * any purpose with or without fee is hereby granted, provided that the
  7. * above copyright notice and this permission notice appear in all
  8. * copies.
  9. *
  10. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  11. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  12. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  13. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  14. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  15. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  16. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  17. * PERFORMANCE OF THIS SOFTWARE.
  18. */
  19. /**
  20. * DOC: This file contains centralized definitions of converged configuration.
  21. */
  22. #ifndef __CFG_MLME_GENERIC_H
  23. #define __CFG_MLME_GENERIC_H
  24. #define CFG_PMF_SA_QUERY_MAX_RETRIES_TYPE CFG_INI_UINT
  25. #define CFG_PMF_SA_QUERY_RETRY_INTERVAL_TYPE CFG_INI_UINT
  26. /**
  27. * enum monitor_mode_concurrency - Monitor mode concurrency
  28. * @MONITOR_MODE_CONC_NO_SUPPORT: No concurrency supported with monitor mode
  29. * @MONITOR_MODE_CONC_STA_SCAN_MON: STA + monitor mode concurrency is supported
  30. */
  31. enum monitor_mode_concurrency {
  32. MONITOR_MODE_CONC_NO_SUPPORT,
  33. MONITOR_MODE_CONC_STA_SCAN_MON,
  34. MONITOR_MODE_CONC_AFTER_LAST,
  35. MONITOR_MODE_CONC_MAX = MONITOR_MODE_CONC_AFTER_LAST - 1,
  36. };
  37. /**
  38. * enum wds_mode_type: wds mode
  39. * @WLAN_WDS_MODE_DISABLED: WDS is disabled
  40. * @WLAN_WDS_MODE_REPEATER: WDS repeater mode
  41. *
  42. * This is used for 'type' values in wds_mode
  43. */
  44. enum wlan_wds_mode {
  45. WLAN_WDS_MODE_DISABLED = 0,
  46. WLAN_WDS_MODE_REPEATER = 1,
  47. /* keep this last */
  48. WLAN_WDS_MODE_LAST,
  49. WLAN_WDS_MODE_MAX = WLAN_WDS_MODE_LAST - 1,
  50. };
  51. /*
  52. * pmfSaQueryMaxRetries - Control PMF SA query retries for SAP
  53. * @Min: 0
  54. * @Max: 20
  55. * @Default: 5
  56. *
  57. * This ini to set the number of PMF SA query retries for SAP
  58. *
  59. * Related: None.
  60. *
  61. * Supported Feature: PMF(11W)
  62. *
  63. */
  64. #define CFG_PMF_SA_QUERY_MAX_RETRIES CFG_PMF_SA_QUERY_MAX_RETRIES_TYPE( \
  65. "pmfSaQueryMaxRetries", \
  66. 0, \
  67. 20, \
  68. 5, \
  69. CFG_VALUE_OR_DEFAULT, \
  70. "PMF SA query retries for SAP")
  71. /*
  72. * pmfSaQueryRetryInterval - Control PMF SA query retry interval
  73. * for SAP in ms
  74. * @Min: 10
  75. * @Max: 2000
  76. * @Default: 200
  77. *
  78. * This ini to set the PMF SA query retry interval for SAP in ms
  79. *
  80. * Related: None.
  81. *
  82. * Supported Feature: PMF(11W)
  83. *
  84. */
  85. #define CFG_PMF_SA_QUERY_RETRY_INTERVAL CFG_PMF_SA_QUERY_RETRY_INTERVAL_TYPE( \
  86. "pmfSaQueryRetryInterval", \
  87. 10, \
  88. 2000, \
  89. 200, \
  90. CFG_VALUE_OR_DEFAULT, \
  91. "PMF SA query retry interval for SAP")
  92. /*
  93. * <ini>
  94. * enable_rtt_mac_randomization - Enable/Disable rtt mac randomization
  95. * @Min: 0
  96. * @Max: 1
  97. * @Default: 1
  98. *
  99. * Usage: External
  100. *
  101. * </ini>
  102. */
  103. #define CFG_ENABLE_RTT_MAC_RANDOMIZATION CFG_INI_BOOL( \
  104. "enable_rtt_mac_randomization", \
  105. 1, \
  106. "Enable RTT MAC randomization")
  107. #define CFG_RTT3_ENABLE CFG_BOOL( \
  108. "rtt3_enabled", \
  109. 1, \
  110. "RTT3 enable/disable info")
  111. /*
  112. * <ini>
  113. * g11hSupportEnabled - Enable 11h support
  114. * @Min: 0
  115. * @Max: 1
  116. * @Default: 1
  117. *
  118. * This ini is used to set 11h support flag
  119. *
  120. * Related: None
  121. *
  122. * Supported Feature: STA
  123. *
  124. * Usage: External
  125. *
  126. * </ini>
  127. */
  128. #define CFG_11H_SUPPORT_ENABLED CFG_INI_BOOL( \
  129. "g11hSupportEnabled", \
  130. 1, \
  131. "11h Enable Flag")
  132. /*
  133. * <ini>
  134. * g11dSupportEnabled - Enable 11d support
  135. * @Min: 0
  136. * @Max: 1
  137. * @Default: 1
  138. *
  139. * This ini is used to set 11d support flag
  140. *
  141. * Related: None
  142. *
  143. * Supported Feature: STA
  144. *
  145. * Usage: External
  146. *
  147. * </ini>
  148. */
  149. #define CFG_11D_SUPPORT_ENABLED CFG_INI_BOOL( \
  150. "g11dSupportEnabled", \
  151. 1, \
  152. "11d Enable Flag")
  153. /*
  154. * rf_test_mode_enabled - Enable rf test mode support
  155. * @Min: 0
  156. * @Max: 1
  157. * @Default: 1
  158. *
  159. * This cfg is used to set rf test mode support flag
  160. *
  161. * Related: None
  162. *
  163. * Supported Feature: STA
  164. */
  165. #define CFG_RF_TEST_MODE_SUPP_ENABLED CFG_BOOL( \
  166. "rf_test_mode_enabled", \
  167. 1, \
  168. "rf test mode Enable Flag")
  169. /*
  170. * <ini>
  171. * BandCapability - Preferred band (0: 2.4G, 5G, and 6G,
  172. * 1: 2.4G only,
  173. * 2: 5G only,
  174. * 3: Both 2.4G and 5G,
  175. * 4: 6G only,
  176. * 5: Both 2.4G and 6G,
  177. * 6: Both 5G and 6G,
  178. * 7: 2.4G, 5G, and 6G)
  179. * @Min: 0
  180. * @Max: 7
  181. * @Default: 7
  182. *
  183. * This ini is used to set default band capability
  184. * (0: Both 2.4G and 5G, 1: 2.4G only, 2: 5G only, 3: Both 2.4G and 5G,
  185. * 4: 6G only, 5: Both 2.4G and 6G, 6: Both 5G and 6G, 7: 2.4G, 5G, and 6G)
  186. *
  187. * Related: None
  188. *
  189. * Supported Feature: STA
  190. *
  191. * Usage: External
  192. *
  193. * </ini>
  194. */
  195. #define CFG_BAND_CAPABILITY CFG_INI_UINT( \
  196. "BandCapability", \
  197. 0, \
  198. 7, \
  199. 7, \
  200. CFG_VALUE_OR_DEFAULT, \
  201. "Band Capability")
  202. /*
  203. * <ini>
  204. * gPreventLinkDown - Enable to prevent bus link from going down
  205. * @Min: 0
  206. * @Max: 1
  207. * @Default: 0
  208. *
  209. * Enable to prevent bus link from going down. Useful for platforms that do not
  210. * (yet) support link down suspend cases.
  211. *
  212. * Related: N/A
  213. *
  214. * Supported Feature: Suspend/Resume
  215. *
  216. * Usage: Internal
  217. *
  218. * </ini>
  219. */
  220. #if defined(QCA_WIFI_EMULATION) || defined(QCA_WIFI_QCA6290)
  221. #define CFG_PREVENT_LINK_DOWN CFG_INI_BOOL( \
  222. "gPreventLinkDown", \
  223. 1, \
  224. "Prevent Bus Link Down")
  225. #else
  226. #define CFG_PREVENT_LINK_DOWN CFG_INI_BOOL( \
  227. "gPreventLinkDown", \
  228. 0, \
  229. "Prevent Bus Link Down")
  230. #endif /* QCA_WIFI_EMULATION */
  231. /*
  232. * <ini>
  233. * gSelect5GHzMargin - Sets RSSI preference for 5GHz over 2.4GHz AP.
  234. * @Min: 0
  235. * @Max: 60
  236. * @Default: 0
  237. *
  238. * Prefer connecting to 5G AP even if its RSSI is lower by gSelect5GHzMargin
  239. * dBm than 2.4G AP. This feature requires the dependent cfg.ini
  240. * "gRoamPrefer5GHz" set to 1
  241. *
  242. * Related: gRoamPrefer5GHz
  243. *
  244. * Supported Feature: Roaming
  245. *
  246. * Usage: External
  247. *
  248. * </ini>
  249. */
  250. #define CFG_SELECT_5GHZ_MARGIN CFG_INI_UINT( \
  251. "gSelect5GHzMargin", \
  252. 0, \
  253. 60, \
  254. 0, \
  255. CFG_VALUE_OR_DEFAULT, \
  256. "Select 5Ghz Margin")
  257. /*
  258. * <ini>
  259. * gEnableMemDeepSleep - Sets Memory Deep Sleep on/off.
  260. * @Min: 0
  261. * @Max: 1
  262. * @Default: 1
  263. *
  264. * This option enables/disables memory deep sleep.
  265. * Related: None
  266. *
  267. * Supported Feature: General
  268. *
  269. * Usage: External
  270. *
  271. * </ini>
  272. */
  273. #define CFG_ENABLE_MEM_DEEP_SLEEP CFG_INI_BOOL( \
  274. "gEnableMemDeepSleep", \
  275. 1, \
  276. "Enable Memory Deep Sleep")
  277. /*
  278. * <ini>
  279. *
  280. * gEnableCckTxFirOverride - Enable/disable CCK TxFIR Override
  281. * @Min: 0 (disabled)
  282. * @Max: 1 (enabled)
  283. * @Default: 0 (disabled)
  284. *
  285. * When operating in an 802.11b mode, this configuration item forces a 2x2 radio
  286. * configuration into 1x for Tx and 2x for Rx (ie 1x2) for regulatory compliance
  287. * reasons.
  288. *
  289. * Related: enable2x2
  290. *
  291. * Supported Feature: 802.11b, 2x2
  292. *
  293. * Usage: External
  294. *
  295. * </ini>
  296. */
  297. #define CFG_ENABLE_CCK_TX_FIR_OVERRIDE CFG_INI_BOOL( \
  298. "gEnableCckTxFirOverride", \
  299. 0, \
  300. "Enable CCK TX FIR Override")
  301. /*
  302. * <ini>
  303. *
  304. * gEnableForceTargetAssert - Enable/disable SSR
  305. * @Min: 0 (disabled)
  306. * @Max: 1 (enabled)
  307. * @Default: 0 (disabled)
  308. *
  309. * This INI item is used to control subsystem restart(SSR) test framework
  310. * Set it's value to 1 to enable APPS trigerred SSR testing
  311. *
  312. * Related: None
  313. *
  314. * Supported Feature: General
  315. *
  316. * Usage: External
  317. *
  318. * </ini>
  319. */
  320. #define CFG_ENABLE_CRASH_INJECT CFG_INI_BOOL( \
  321. "gEnableForceTargetAssert", \
  322. 0, \
  323. "Enable Crash Inject")
  324. /*
  325. * <ini>
  326. *
  327. * gEnableLpassSupport - Enable/disable LPASS Support
  328. * @Min: 0 (disabled)
  329. * @Max: 1 (enabled)
  330. * @Default: 1 (disabled) if WLAN_FEATURE_LPSS is defined, 0 otherwise
  331. *
  332. * Related: None
  333. *
  334. * Supported Feature: General
  335. *
  336. * Usage: External
  337. *
  338. * </ini>
  339. */
  340. #ifdef WLAN_FEATURE_LPSS
  341. #define CFG_ENABLE_LPASS_SUPPORT CFG_INI_BOOL( \
  342. "gEnableLpassSupport", \
  343. 1, \
  344. "Enable LPASS Support")
  345. #else
  346. #define CFG_ENABLE_LPASS_SUPPORT CFG_BOOL( \
  347. "gEnableLpassSupport", \
  348. 0, \
  349. "Enable LPASS Support")
  350. #endif
  351. /*
  352. * <ini>
  353. *
  354. * gEnableSelfRecovery - Enable/disable Self Recovery
  355. * @Min: 0 (disabled)
  356. * @Max: 1 (enabled)
  357. * @Default: 0 (disabled)
  358. *
  359. * Related: None
  360. *
  361. * Supported Feature: General
  362. *
  363. * Usage: External
  364. *
  365. * </ini>
  366. */
  367. #define CFG_ENABLE_SELF_RECOVERY CFG_INI_BOOL( \
  368. "gEnableSelfRecovery", \
  369. 0, \
  370. "Enable Self Recovery")
  371. /*
  372. * <ini>
  373. *
  374. * gSapDot11mc - Enable/disable SAP 802.11mc support
  375. * @Min: 0 (disabled)
  376. * @Max: 1 (enabled)
  377. * @Default: 0 (disabled)
  378. *
  379. * Related: None
  380. *
  381. * Supported Feature: General
  382. *
  383. * Usage: External
  384. *
  385. * </ini>
  386. */
  387. #define CFG_SAP_DOT11MC CFG_INI_BOOL( \
  388. "gSapDot11mc", \
  389. 0, \
  390. "SAP 802.11mc support")
  391. /*
  392. * <ini>
  393. *
  394. * gEnableFatalEvent - Enable/Disable BUG report in case of fatal event
  395. * @Min: 0 (disabled)
  396. * @Max: 1 (enabled)
  397. * @Default: 1 (enabled)
  398. *
  399. * Related: None
  400. *
  401. * Supported Feature: General
  402. *
  403. * Usage: External
  404. *
  405. * </ini>
  406. */
  407. #define CFG_ENABLE_FATAL_EVENT_TRIGGER CFG_INI_BOOL( \
  408. "gEnableFatalEvent", \
  409. 1, \
  410. "Enable Fatal Event Trigger")
  411. /*
  412. * <ini>
  413. * gSub20ChannelWidth - Control sub 20 channel width (5/10 Mhz)
  414. * @Min: 0
  415. * @Max: 2
  416. * @Default: 0
  417. *
  418. * This ini is used to set the sub 20 channel width.
  419. * gSub20ChannelWidth=0: indicates do not use Sub 20 MHz bandwidth
  420. * gSub20ChannelWidth=1: Bring up SAP/STA in 5 MHz bandwidth
  421. * gSub20ChannelWidth=2: Bring up SAP/STA in 10 MHz bandwidth
  422. *
  423. * Related: None
  424. *
  425. * Supported Feature: 5/10 Mhz channel width support
  426. *
  427. * Usage: External
  428. *
  429. * </ini>
  430. */
  431. #define CFG_SUB_20_CHANNEL_WIDTH CFG_INI_UINT( \
  432. "gSub20ChannelWidth", \
  433. 0, \
  434. 2, \
  435. 0, \
  436. CFG_VALUE_OR_DEFAULT, \
  437. "Sub 20 Channel Width")
  438. /*
  439. * <ini>
  440. * goptimize_chan_avoid_event - Optimize channel avoidance indication
  441. * coming from firmware
  442. * @Min: 0
  443. * @Max: 1
  444. * @Default: 0
  445. *
  446. * Related: None
  447. *
  448. * Supported Feature: General
  449. *
  450. * Usage: External
  451. *
  452. * </ini>
  453. */
  454. #define CFG_OPTIMIZE_CA_EVENT CFG_INI_BOOL( \
  455. "goptimize_chan_avoid_event", \
  456. 0, \
  457. "Optimize FW CA Event")
  458. /*
  459. * <ini>
  460. * fw_timeout_crash - Enable/Disable BUG ON
  461. * @Min: 0
  462. * @Max: 1
  463. * @Default: 1
  464. *
  465. * This ini is used to Trigger host crash when firmware fails to send the
  466. * response to host
  467. * fw_timeout_crash = 0 Disabled
  468. * fw_timeout_crash = 1 Trigger host crash
  469. *
  470. * Related: None
  471. *
  472. * Supported Feature: SSR
  473. *
  474. * Usage: External
  475. *
  476. * </ini>
  477. */
  478. #define CFG_CRASH_FW_TIMEOUT CFG_INI_BOOL( \
  479. "fw_timeout_crash", \
  480. 1, \
  481. "Enable FW Timeout Crash")
  482. /*
  483. * <ini>
  484. * gDroppedPktDisconnectTh - Sets dropped packet threshold in firmware
  485. * @Min: 0
  486. * @Max: 65535
  487. * @Default: 512
  488. *
  489. * This INI is the packet drop threshold will trigger disconnect from remote
  490. * peer.
  491. *
  492. * Related: None
  493. *
  494. * Supported Feature: connection
  495. *
  496. * Usage: External
  497. *
  498. * </ini>
  499. */
  500. #define CFG_DROPPED_PKT_DISCONNECT_THRESHOLD CFG_INI_UINT( \
  501. "gDroppedPktDisconnectTh", \
  502. 0, \
  503. 65535, \
  504. 512, \
  505. CFG_VALUE_OR_DEFAULT, \
  506. "Dropped Pkt Disconnect threshold")
  507. /*
  508. * <ini>
  509. * gItoRepeatCount - sets ito repeated count
  510. * @Min: 0
  511. * @Max: 5
  512. * @Default: 0
  513. *
  514. * This ini sets the ito count in FW
  515. *
  516. * Usage: External
  517. *
  518. * </ini>
  519. */
  520. #define CFG_ITO_REPEAT_COUNT CFG_INI_UINT( \
  521. "gItoRepeatCount", \
  522. 0, \
  523. 5, \
  524. 0, \
  525. CFG_VALUE_OR_DEFAULT, \
  526. "ITO Repeat Count")
  527. /*
  528. * <ini>
  529. * gEnableDeauthToDisassocMap - Enables deauth to disassoc map
  530. * @Min: 0
  531. * @Max: 1
  532. * @Default: 0
  533. *
  534. * This ini is used to set default disassoc map
  535. *
  536. * Related: None
  537. *
  538. * Supported Feature: STA
  539. *
  540. * Usage: External
  541. *
  542. * </ini>
  543. */
  544. #define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP CFG_INI_BOOL( \
  545. "gEnableDeauthToDisassocMap", \
  546. 0, \
  547. "Enables deauth to disassoc map")
  548. /*
  549. * <ini>
  550. * gEnableDebugLog - Enable/Disable the Connection related logs
  551. * @Min: 0
  552. * @Max: 0xFF
  553. * @Default: 0x0F
  554. *
  555. * This ini is used to enable/disable the connection related logs
  556. * 0x1 - Enable mgmt pkt logs (excpet probe req/rsp, beacons).
  557. * 0x2 - Enable EAPOL pkt logs.
  558. * 0x4 - Enable DHCP pkt logs.
  559. * 0x8 - Enable mgmt action frames logs.
  560. * 0x0 - Disable all the above connection related logs.
  561. * The default value of 0x0F will enable all the above logs
  562. *
  563. * Related: None
  564. *
  565. * Supported Feature: STA
  566. *
  567. * Usage: External
  568. *
  569. * </ini>
  570. */
  571. #define CFG_ENABLE_DEBUG_PACKET_LOG CFG_INI_UINT( \
  572. "gEnableDebugLog", \
  573. 0, 0xFF, 0x0F, \
  574. CFG_VALUE_OR_DEFAULT, \
  575. "Enable debug log")
  576. /*
  577. * <ini>
  578. * enable_beacon_reception_stats - Enable disable beacon reception stats
  579. * @Min: 0
  580. * @Max: 1
  581. * @Default: 0
  582. *
  583. * This ini is used to enable/disable the beacon reception stats collected per
  584. * vdev and then sent to the driver to be displayed in sysfs
  585. *
  586. * Related: None
  587. *
  588. * Supported Feature: Stats
  589. *
  590. * Usage: External
  591. *
  592. * </ini>
  593. */
  594. #define CFG_ENABLE_BEACON_RECEPTION_STATS CFG_INI_BOOL( \
  595. "enable_beacon_reception_stats", \
  596. 0, \
  597. "Enable disable beacon reception stats")
  598. /*
  599. * <ini>
  600. * disable_4way_hs_offload - Enable/Disable 4 way handshake offload to firmware
  601. * @Min: 0
  602. * @Max: 0x2
  603. * @Default: 0x2
  604. *
  605. * 0x0 - 4-way HS to be handled in firmware for the AKMs except for SAE and
  606. * OWE roaming the 4way HS is handled in supplicant by default
  607. * 0x1 - 4-way HS to be handled in supplicant
  608. * 0x2 - 4-way HS to be handled in firmware for the AKMs including the SAE
  609. * Roam except for OWE roaming the 4way HS is handled in supplicant
  610. *
  611. * Based on the requirement the Max value can be increased per AKM.
  612. *
  613. * Related: None
  614. *
  615. * Supported Feature: STA Roaming
  616. *
  617. * Usage: External
  618. *
  619. * </ini>
  620. */
  621. #define CFG_DISABLE_4WAY_HS_OFFLOAD CFG_INI_UINT( \
  622. "disable_4way_hs_offload", \
  623. 0, \
  624. 0x2, \
  625. 0x2, \
  626. CFG_VALUE_OR_DEFAULT, \
  627. "Enable/disable 4 way handshake offload to firmware")
  628. /*
  629. * <ini>
  630. * mgmt_retry_max - Maximum Retries for mgmt frames
  631. * @Min: 0
  632. * @Max: 31
  633. * @Default: 15
  634. *
  635. * This ini is used to set maximum retries for mgmt frames
  636. *
  637. * Supported Feature: STA/SAP
  638. *
  639. * Usage: External
  640. *
  641. * </ini>
  642. */
  643. #define CFG_MGMT_RETRY_MAX CFG_INI_UINT( \
  644. "mgmt_retry_max", \
  645. 0, \
  646. 31, \
  647. 15, \
  648. CFG_VALUE_OR_DEFAULT, \
  649. "Max retries for mgmt frames")
  650. /*
  651. * <ini>
  652. * bmiss_skip_full_scan - To decide whether firmware does channel map based
  653. * partial scan or partial scan followed by full scan in case no candidate is
  654. * found in partial scan.
  655. * @Min: 0
  656. * @Max: 1
  657. * @Default: 0
  658. *
  659. * 0 : Based on the channel map , firmware does scan to find new AP. if AP is
  660. * not found then it does a full scan on all valid channels.
  661. * 1 : Firmware does channel map based partial scan only.
  662. *
  663. * Related: None
  664. *
  665. * Supported Feature: STA Roaming
  666. *
  667. * Usage: External
  668. *
  669. * </ini>
  670. */
  671. #define CFG_BMISS_SKIP_FULL_SCAN CFG_INI_BOOL("bmiss_skip_full_scan", \
  672. 0, \
  673. "To decide partial/partial scan followed by full scan")
  674. /*
  675. * <ini>
  676. * gEnableRingBuffer - Enable Ring Buffer for Bug Report
  677. * @Min: 0
  678. * @Max: 1
  679. * @Default: 1
  680. *
  681. * This ini is used to enable Ring Buffer
  682. *
  683. * Related: None
  684. *
  685. * Supported Feature: STA/SAP
  686. *
  687. * Usage: External
  688. *
  689. * </ini>
  690. */
  691. #define CFG_ENABLE_RING_BUFFER CFG_INI_BOOL( \
  692. "gEnableRingBuffer", \
  693. 1, \
  694. "To Enable Ring Buffer")
  695. /*
  696. * <ini>
  697. * dfs_chan_ageout_time - Set DFS Channel ageout time(in seconds)
  698. * @Min: 0
  699. * @Max: 8
  700. * Default: 0
  701. *
  702. * Ageout time is the time upto which DFS channel information such as beacon
  703. * found is remembered. So that Firmware performs Active scan instead of the
  704. * Passive to reduce the Dwell time.
  705. * This ini Parameter used to set ageout timer value from host to FW.
  706. * If not set, Firmware will disable ageout time.
  707. *
  708. * Supported Feature: STA scan in DFS channels
  709. *
  710. * Usage: External
  711. *
  712. * </ini>
  713. */
  714. #define CFG_DFS_CHAN_AGEOUT_TIME CFG_INI_UINT("dfs_chan_ageout_time", \
  715. 0, 8, 0, CFG_VALUE_OR_DEFAULT, \
  716. "Set DFS Channel ageout time from host to firmware")
  717. /*
  718. * <ini>
  719. * sae_connect_retries - Bit mask to retry Auth and full connection on assoc
  720. * timeout to same AP and auth retries during roaming
  721. * @Min: 0x0
  722. * @Max: 0x53
  723. * @Default: 0x52
  724. *
  725. * This ini is used to set max auth retry in auth phase of roaming and initial
  726. * connection and max connection retry in case of assoc timeout. MAX Auth
  727. * retries are capped to 3, connection retries are capped to 2 and roam Auth
  728. * retry is capped to 1.
  729. * Default is 0x52 i.e. 1 roam auth retry, 2 auth retry and 2 full connection
  730. * retry.
  731. *
  732. * Bits Retry Type
  733. * BIT[0:2] AUTH retries
  734. * BIT[3:5] Connection reties
  735. * BIT[6:8] ROAM AUTH retries
  736. *
  737. * Some Possible values are as below
  738. * 0 - NO auth/roam Auth retry and NO full connection retry after
  739. * assoc timeout
  740. * 0x49 - 1 auth/roam auth retry and 1 full connection retry
  741. * 0x52 - 1 roam auth retry, 2 auth retry and 2 full connection retry
  742. * 0x1 /0x2 - 0 roam auth retry, 1 or 2 auth retry respectively and NO full
  743. * connection retry
  744. * 0x8 /0x10 - 0 roam auth retry,NO auth retry and 1 or 2 full connection retry
  745. * respectively.
  746. * 0x4A - 1 roam auth retry,2 auth retry and 1 full connection retry
  747. * 0x51 - 1 auth/roam auth retry and 2 full connection retry
  748. *
  749. * Related: None
  750. *
  751. * Supported Feature: STA SAE
  752. *
  753. * Usage: External
  754. *
  755. * </ini>
  756. */
  757. #define CFG_SAE_CONNECION_RETRIES CFG_INI_UINT("sae_connect_retries", \
  758. 0, 0x53, 0x52, CFG_VALUE_OR_DEFAULT, \
  759. "Bit mask to retry Auth and full connection on assoc timeout to same AP for SAE connection")
  760. /*
  761. * <ini>
  762. *
  763. * wls_6ghz_capable - WiFi Location Service(WLS) is 6Ghz capable
  764. * @Min: 0 (WLS 6Ghz non-capable)
  765. * @Max: 1 (WLS 6Ghz capable)
  766. * @Default: 0 (WLS 6Ghz non-capable)
  767. *
  768. * Related: None
  769. *
  770. * Supported Feature: General
  771. *
  772. * Usage: Internal
  773. *
  774. * </ini>
  775. */
  776. #define CFG_WLS_6GHZ_CAPABLE CFG_INI_BOOL( \
  777. "wls_6ghz_capable", \
  778. 0, \
  779. "WiFi Location Service(WLS) is 6Ghz capable or not")
  780. /*
  781. * <ini>
  782. *
  783. * monitor_mode_conc - Monitor mode concurrency supported
  784. * @Min: 0
  785. * @Max: 1
  786. * @Default: 0
  787. *
  788. * Related: None
  789. *
  790. * Monitor mode concurrency supported
  791. * 0 - No concurrency supported
  792. * 1 - Allow STA scan + Monitor mode concurrency
  793. *
  794. * Supported Feature: General
  795. *
  796. * Usage: External
  797. *
  798. * </ini>
  799. */
  800. #define CFG_MONITOR_MODE_CONCURRENCY CFG_INI_UINT( \
  801. "monitor_mode_concurrency", \
  802. MONITOR_MODE_CONC_NO_SUPPORT, \
  803. MONITOR_MODE_CONC_MAX, \
  804. MONITOR_MODE_CONC_NO_SUPPORT, \
  805. CFG_VALUE_OR_DEFAULT, \
  806. "Monitor mode concurrency supported")
  807. #ifdef FEATURE_WDS
  808. /*
  809. * <ini>
  810. *
  811. * wds_mode - wds mode supported
  812. * @Min: 0
  813. * @Max: 1
  814. * @Default: 0
  815. *
  816. * Related: None
  817. *
  818. * wds mode supported
  819. * 0 - wds mode disabled
  820. * 1 - wds repeater mode
  821. *
  822. * Supported Feature: General
  823. *
  824. * Usage: External
  825. *
  826. * </ini>
  827. */
  828. #define CFG_WDS_MODE CFG_INI_UINT( \
  829. "wds_mode", \
  830. WLAN_WDS_MODE_DISABLED, \
  831. WLAN_WDS_MODE_MAX, \
  832. WLAN_WDS_MODE_DISABLED, \
  833. CFG_VALUE_OR_DEFAULT, \
  834. "wds mode supported")
  835. #define CFG_WDS_MODE_ALL CFG(CFG_WDS_MODE)
  836. #else
  837. #define CFG_WDS_MODE_ALL
  838. #endif
  839. /*
  840. * <ini>
  841. * tx_retry_multiplier - TX retry multiplier
  842. * @Min: 0
  843. * @Max: 500
  844. * @Default: 0
  845. *
  846. * This ini is used to indicate percentage to max retry limit to fw
  847. * which can further be used by fw to multiply counter by
  848. * tx_retry_multiplier percent.
  849. *
  850. * Supported Feature: STA/SAP
  851. *
  852. * Usage: External
  853. *
  854. * </ini>
  855. */
  856. #define CFG_TX_RETRY_MULTIPLIER CFG_INI_UINT( \
  857. "tx_retry_multiplier", \
  858. 0, \
  859. 500, \
  860. 0, \
  861. CFG_VALUE_OR_DEFAULT, \
  862. "percentage of max retry limit")
  863. /*
  864. * <ini>
  865. * mgmt_frame_hw_tx_retry_count - Set hw tx retry count for mgmt action
  866. * frame
  867. * @Min: N/A
  868. * @Max: N/A
  869. * @Default: N/A
  870. *
  871. * Set mgmt action frame hw tx retry count, string format looks like below:
  872. * frame_hw_tx_retry_count="<frame type>,<retry count>,..."
  873. * frame type is enum value of mlme_cfg_frame_type.
  874. * Retry count max value is 127.
  875. * For example:
  876. * frame_hw_tx_retry_count="0,64,2,32"
  877. * The above input string means:
  878. * For p2p go negotiation request fame, hw retry count 64
  879. * For p2p provision discovery request, hw retry count 32
  880. *
  881. * Related: None.
  882. *
  883. * Supported Feature: STA/P2P
  884. *
  885. * Usage: External
  886. *
  887. * </ini>
  888. */
  889. #define MGMT_FRM_HW_TX_RETRY_COUNT_STR_LEN (64)
  890. #define CFG_MGMT_FRAME_HW_TX_RETRY_COUNT CFG_INI_STRING( \
  891. "mgmt_frame_hw_tx_retry_count", \
  892. 0, \
  893. MGMT_FRM_HW_TX_RETRY_COUNT_STR_LEN, \
  894. "", \
  895. "Set mgmt action frame hw tx retry count")
  896. #define CFG_GENERIC_ALL \
  897. CFG(CFG_ENABLE_DEBUG_PACKET_LOG) \
  898. CFG(CFG_PMF_SA_QUERY_MAX_RETRIES) \
  899. CFG(CFG_PMF_SA_QUERY_RETRY_INTERVAL) \
  900. CFG(CFG_ENABLE_RTT_MAC_RANDOMIZATION) \
  901. CFG(CFG_RTT3_ENABLE) \
  902. CFG(CFG_11H_SUPPORT_ENABLED) \
  903. CFG(CFG_11D_SUPPORT_ENABLED) \
  904. CFG(CFG_BAND_CAPABILITY) \
  905. CFG(CFG_PREVENT_LINK_DOWN) \
  906. CFG(CFG_SELECT_5GHZ_MARGIN) \
  907. CFG(CFG_ENABLE_MEM_DEEP_SLEEP) \
  908. CFG(CFG_ENABLE_CCK_TX_FIR_OVERRIDE) \
  909. CFG(CFG_ENABLE_CRASH_INJECT) \
  910. CFG(CFG_ENABLE_LPASS_SUPPORT) \
  911. CFG(CFG_ENABLE_SELF_RECOVERY) \
  912. CFG(CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP) \
  913. CFG(CFG_DISABLE_4WAY_HS_OFFLOAD) \
  914. CFG(CFG_SAP_DOT11MC) \
  915. CFG(CFG_ENABLE_FATAL_EVENT_TRIGGER) \
  916. CFG(CFG_SUB_20_CHANNEL_WIDTH) \
  917. CFG(CFG_OPTIMIZE_CA_EVENT) \
  918. CFG(CFG_CRASH_FW_TIMEOUT) \
  919. CFG(CFG_DROPPED_PKT_DISCONNECT_THRESHOLD) \
  920. CFG(CFG_ITO_REPEAT_COUNT) \
  921. CFG(CFG_ENABLE_BEACON_RECEPTION_STATS) \
  922. CFG(CFG_MGMT_RETRY_MAX) \
  923. CFG(CFG_BMISS_SKIP_FULL_SCAN) \
  924. CFG(CFG_ENABLE_RING_BUFFER) \
  925. CFG(CFG_DFS_CHAN_AGEOUT_TIME) \
  926. CFG(CFG_SAE_CONNECION_RETRIES) \
  927. CFG(CFG_WLS_6GHZ_CAPABLE) \
  928. CFG(CFG_MONITOR_MODE_CONCURRENCY) \
  929. CFG(CFG_RF_TEST_MODE_SUPP_ENABLED) \
  930. CFG_WDS_MODE_ALL \
  931. CFG(CFG_TX_RETRY_MULTIPLIER) \
  932. CFG(CFG_MGMT_FRAME_HW_TX_RETRY_COUNT)
  933. #endif /* __CFG_MLME_GENERIC_H */