cfg_mlme_generic.h 19 KB

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