cfg_mlme_generic.h 23 KB

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