wlan_mlme_api.h 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690
  1. /*
  2. * Copyright (c) 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: declare public APIs exposed by the mlme component
  20. */
  21. #ifndef _WLAN_MLME_API_H_
  22. #define _WLAN_MLME_API_H_
  23. #include <wlan_mlme_public_struct.h>
  24. #include <wlan_objmgr_psoc_obj.h>
  25. #include <wlan_cmn.h>
  26. #include "sme_api.h"
  27. /**
  28. * wlan_mlme_get_cfg_str() - Copy the uint8_t array for a particular CFG
  29. * @dst: pointer to the destination buffer.
  30. * @cfg_str: pointer to the cfg string structure
  31. * @len: length to be copied
  32. *
  33. * Return: QDF_STATUS_SUCCESS or QDF_STATUS_E_FAILURE
  34. */
  35. QDF_STATUS wlan_mlme_get_cfg_str(uint8_t *dst, struct mlme_cfg_str *cfg_str,
  36. qdf_size_t *len);
  37. /**
  38. * wlan_mlme_set_cfg_str() - Set values for a particular CFG
  39. * @src: pointer to the source buffer.
  40. * @dst_cfg_str: pointer to the cfg string structure to be modified
  41. * @len: length to be written
  42. *
  43. * Return: QDF_STATUS_SUCCESS or QDF_STATUS_E_FAILURE
  44. */
  45. QDF_STATUS wlan_mlme_set_cfg_str(uint8_t *src, struct mlme_cfg_str *dst_cfg_str,
  46. qdf_size_t len);
  47. /**
  48. * wlan_mlme_get_edca_params() - get the EDCA parameters corresponding to the
  49. * edca profile access category
  50. * @edca_params: pointer to mlme edca parameters structure
  51. * @data: data to which the parameter is to be copied
  52. * @edca_ac: edca ac type enum passed to get the cfg value
  53. *
  54. * Return QDF_STATUS_SUCCESS or QDF_STATUS_E_FAILURE
  55. *
  56. */
  57. QDF_STATUS wlan_mlme_get_edca_params(struct wlan_mlme_edca_params *edca_params,
  58. uint8_t *data, enum e_edca_type edca_ac);
  59. /*
  60. * mlme_get_wep_key() - get the wep key to process during auth frame
  61. * @wep_params: cfg wep parameters structure
  62. * @wep_key_id: default key number
  63. * @default_key: default key to be copied
  64. * @key_len: length of the key to copy
  65. *
  66. * Return QDF_STATUS
  67. */
  68. QDF_STATUS mlme_get_wep_key(struct wlan_mlme_wep_cfg *wep_params,
  69. enum wep_key_id wep_keyid, uint8_t *default_key,
  70. qdf_size_t key_len);
  71. /**
  72. * mlme_set_wep_key() - set the wep keys during auth
  73. * @wep_params: cfg wep parametrs structure
  74. * @wep_key_id: default key number that needs to be copied
  75. * @key_to_set: destination buffer to be copied
  76. * @len: size to be copied
  77. */
  78. QDF_STATUS mlme_set_wep_key(struct wlan_mlme_wep_cfg *wep_params,
  79. enum wep_key_id wep_keyid, uint8_t *key_to_set,
  80. qdf_size_t len);
  81. /**
  82. * wlan_mlme_get_ht_cap_info() - Get the HT cap info config
  83. * @psoc: pointer to psoc object
  84. * @value: pointer to the value which will be filled for the caller
  85. *
  86. * Return: QDF Status
  87. */
  88. QDF_STATUS wlan_mlme_get_ht_cap_info(struct wlan_objmgr_psoc *psoc,
  89. struct mlme_ht_capabilities_info
  90. *ht_cap_info);
  91. /**
  92. * wlan_mlme_get_manufacturer_name() - get manufacturer name
  93. * @psoc: pointer to psoc object
  94. * @pbuf: pointer of the buff which will be filled for the caller
  95. * @plen: pointer of max buffer length
  96. * actual length will be returned at this address
  97. * This function gets manufacturer name
  98. *
  99. * Return: QDF_STATUS_SUCCESS - in case of success
  100. */
  101. QDF_STATUS
  102. wlan_mlme_get_manufacturer_name(struct wlan_objmgr_psoc *psoc,
  103. uint8_t *pbuf, uint32_t *plen);
  104. /**
  105. * wlan_mlme_get_model_number() - get model number
  106. * @psoc: pointer to psoc object
  107. * @pbuf: pointer of the buff which will be filled for the caller
  108. * @plen: pointer of max buffer length
  109. * actual length will be returned at this address
  110. * This function gets model number
  111. *
  112. * Return: QDF_STATUS_SUCCESS - in case of success
  113. */
  114. QDF_STATUS
  115. wlan_mlme_get_model_number(struct wlan_objmgr_psoc *psoc,
  116. uint8_t *pbuf, uint32_t *plen);
  117. /**
  118. * wlan_mlme_get_model_name() - get model name
  119. * @psoc: pointer to psoc object
  120. * @pbuf: pointer of the buff which will be filled for the caller
  121. * @plen: pointer of max buffer length
  122. * actual length will be returned at this address
  123. * This function gets model name
  124. *
  125. * Return: QDF_STATUS_SUCCESS - in case of success
  126. */
  127. QDF_STATUS
  128. wlan_mlme_get_model_name(struct wlan_objmgr_psoc *psoc,
  129. uint8_t *pbuf, uint32_t *plen);
  130. /**
  131. * wlan_mlme_get_manufacture_product_name() - get manufacture product name
  132. * @psoc: pointer to psoc object
  133. * @pbuf: pointer of the buff which will be filled for the caller
  134. * @plen: pointer of max buffer length
  135. * actual length will be returned at this address
  136. * This function gets manufacture product name
  137. *
  138. * Return: QDF_STATUS_SUCCESS - in case of success
  139. */
  140. QDF_STATUS
  141. wlan_mlme_get_manufacture_product_name(struct wlan_objmgr_psoc *psoc,
  142. uint8_t *pbuf, uint32_t *plen);
  143. /**
  144. * wlan_mlme_get_manufacture_product_version() - get manufacture product version
  145. * @psoc: pointer to psoc object
  146. * @pbuf: pointer of the buff which will be filled for the caller
  147. * @plen: pointer of max buffer length
  148. * actual length will be returned at this address
  149. * This function gets manufacture product version
  150. *
  151. * Return: QDF_STATUS_SUCCESS - in case of success
  152. */
  153. QDF_STATUS
  154. wlan_mlme_get_manufacture_product_version(struct wlan_objmgr_psoc *psoc,
  155. uint8_t *pbuf, uint32_t *plen);
  156. /**
  157. * wlan_mlme_set_ht_cap_info() - Set the HT cap info config
  158. * @psoc: pointer to psoc object
  159. * @value: Value that needs to be set from the caller
  160. *
  161. * Return: QDF Status
  162. */
  163. QDF_STATUS wlan_mlme_set_ht_cap_info(struct wlan_objmgr_psoc *psoc,
  164. struct mlme_ht_capabilities_info
  165. ht_cap_info);
  166. /**
  167. * wlan_mlme_get_band_capability() - Get the Band capability config
  168. * @psoc: pointer to psoc object
  169. * @band_capability: Pointer to the variable from caller
  170. *
  171. * Return: QDF Status
  172. */
  173. QDF_STATUS wlan_mlme_get_band_capability(struct wlan_objmgr_psoc *psoc,
  174. uint8_t *band_capability);
  175. /**
  176. * wlan_mlme_set_band_capability() - Set the Band capability config
  177. * @psoc: pointer to psoc object
  178. * @band_capability: Value to be set from the caller
  179. *
  180. * Return: QDF Status
  181. */
  182. QDF_STATUS wlan_mlme_set_band_capability(struct wlan_objmgr_psoc *psoc,
  183. uint8_t band_capability);
  184. /**
  185. * wlan_mlme_get_prevent_link_down_cfg() - Get the prevent link down config
  186. * @psoc: pointer to psoc object
  187. * @prevent_link_down: Pointer to the variable from caller
  188. *
  189. * Return: QDF Status
  190. */
  191. QDF_STATUS wlan_mlme_get_prevent_link_down_cfg(struct wlan_objmgr_psoc *psoc,
  192. bool *prevent_link_down);
  193. /**
  194. * wlan_mlme_get_select_5ghz_margin_cfg() - Get the select 5Ghz margin config
  195. * @psoc: pointer to psoc object
  196. * @select_5ghz_margin: Pointer to the variable from caller
  197. *
  198. * Return: QDF Status
  199. */
  200. QDF_STATUS wlan_mlme_get_select_5ghz_margin_cfg(struct wlan_objmgr_psoc *psoc,
  201. uint8_t *select_5ghz_margin);
  202. /**
  203. * wlan_mlme_get_crash_inject_cfg() - Get the crash inject config
  204. * @psoc: pointer to psoc object
  205. * @crash_inject: Pointer to the variable from caller
  206. *
  207. * Return: QDF Status
  208. */
  209. QDF_STATUS wlan_mlme_get_crash_inject_cfg(struct wlan_objmgr_psoc *psoc,
  210. bool *crash_inject);
  211. /**
  212. * wlan_mlme_get_lpass_support() - Get the LPASS Support config
  213. * @psoc: pointer to psoc object
  214. * @lpass_support: Pointer to the variable from caller
  215. *
  216. * Return: QDF Status
  217. */
  218. QDF_STATUS wlan_mlme_get_lpass_support(struct wlan_objmgr_psoc *psoc,
  219. bool *lpass_support);
  220. /**
  221. * wlan_mlme_get_acs_with_more_param() - Get the acs_with_more_param flag
  222. * @psoc: pointer to psoc object
  223. * @value: Value that needs to be set from the caller
  224. *
  225. * Return: QDF Status
  226. */
  227. QDF_STATUS wlan_mlme_get_acs_with_more_param(struct wlan_objmgr_psoc *psoc,
  228. bool *value);
  229. /**
  230. * wlan_mlme_get_auto_channel_weight() - Get the auto channel weight
  231. * @psoc: pointer to psoc object
  232. * @value: Value that needs to be set from the caller
  233. *
  234. * Return: QDF Status
  235. */
  236. QDF_STATUS wlan_mlme_get_auto_channel_weight(struct wlan_objmgr_psoc *psoc,
  237. uint32_t *value);
  238. /**
  239. * wlan_mlme_get_vendor_acs_support() - Get the vendor based channel selece
  240. * @psoc: pointer to psoc object
  241. * @value: Value that needs to be set from the caller
  242. *
  243. * Return: QDF Status
  244. */
  245. QDF_STATUS wlan_mlme_get_vendor_acs_support(struct wlan_objmgr_psoc *psoc,
  246. bool *value);
  247. /**
  248. * wlan_mlme_get_acs_support_for_dfs_ltecoex() - Get the flag for
  249. * acs support for dfs ltecoex
  250. * @psoc: pointer to psoc object
  251. * @value: Value that needs to be set from the caller
  252. *
  253. * Return: QDF Status
  254. */
  255. QDF_STATUS
  256. wlan_mlme_get_acs_support_for_dfs_ltecoex(struct wlan_objmgr_psoc *psoc,
  257. bool *value);
  258. /**
  259. * wlan_mlme_get_external_acs_policy() - Get the flag for external acs policy
  260. *
  261. * @psoc: pointer to psoc object
  262. * @value: Value that needs to be set from the caller
  263. *
  264. * Return: QDF Status
  265. */
  266. QDF_STATUS
  267. wlan_mlme_get_external_acs_policy(struct wlan_objmgr_psoc *psoc,
  268. bool *value);
  269. /**
  270. *
  271. * wlan_mlme_get_sap_inactivity_override() - Check if sap max inactivity
  272. * override flag is set.
  273. * @psoc: pointer to psoc object
  274. * @sme_config - Sme config struct
  275. *
  276. * Return: QDF Status
  277. */
  278. void wlan_mlme_get_sap_inactivity_override(struct wlan_objmgr_psoc *psoc,
  279. bool *value);
  280. /**
  281. * wlan_mlme_get_ignore_peer_ht_mode() - Get the ignore peer ht opmode flag
  282. * @psoc: pointer to psoc object
  283. * @value: Value that needs to be set from the caller
  284. *
  285. * Return: QDF Status
  286. */
  287. QDF_STATUS wlan_mlme_get_ignore_peer_ht_mode(struct wlan_objmgr_psoc *psoc,
  288. bool *value);
  289. /**
  290. * wlan_mlme_get_tx_chainmask_cck() - Get the tx_chainmask_cfg value
  291. *
  292. * @psoc: pointer to psoc object
  293. * @value: Value that needs to be set from the caller
  294. *
  295. * Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
  296. */
  297. QDF_STATUS wlan_mlme_get_tx_chainmask_cck(struct wlan_objmgr_psoc *psoc,
  298. bool *value);
  299. /**
  300. * wlan_mlme_get_tx_chainmask_1ss() - Get the tx_chainmask_1ss value
  301. *
  302. * @psoc: pointer to psoc object
  303. * @value: Value that needs to be set from the caller
  304. *
  305. * Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
  306. */
  307. QDF_STATUS wlan_mlme_get_tx_chainmask_1ss(struct wlan_objmgr_psoc *psoc,
  308. uint8_t *value);
  309. /**
  310. * wlan_mlme_get_num_11b_tx_chains() - Get the number of 11b only tx chains
  311. *
  312. * @psoc: pointer to psoc object
  313. * @value: Value that needs to be set from the caller
  314. *
  315. * Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
  316. */
  317. QDF_STATUS wlan_mlme_get_num_11b_tx_chains(struct wlan_objmgr_psoc *psoc,
  318. uint16_t *value);
  319. /**
  320. * wlan_mlme_get_num_11ag_tx_chains() - get the total number of 11a/g tx chains
  321. *
  322. * @psoc: pointer to psoc object
  323. * @value: Value that needs to be set from the caller
  324. *
  325. * Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
  326. */
  327. QDF_STATUS wlan_mlme_get_num_11ag_tx_chains(struct wlan_objmgr_psoc *psoc,
  328. uint16_t *value);
  329. /**
  330. * wlan_mlme_configure_chain_mask() - configure chainmask parameters
  331. *
  332. * @psoc: pointer to psoc object
  333. * @session_id: vdev_id
  334. *
  335. * Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
  336. */
  337. QDF_STATUS wlan_mlme_configure_chain_mask(struct wlan_objmgr_psoc *psoc,
  338. uint8_t session_id);
  339. /**
  340. * wlan_mlme_set_sap_listen_interval() - Set the sap listen interval
  341. * @psoc: pointer to psoc object
  342. * @value: Value that needs to be set from the caller
  343. *
  344. * Return: QDF Status
  345. */
  346. QDF_STATUS wlan_mlme_set_sap_listen_interval(struct wlan_objmgr_psoc *psoc,
  347. int value);
  348. /**
  349. * wlan_mlme_set_assoc_sta_limit() - Set the assoc sta limit
  350. * @psoc: pointer to psoc object
  351. * @value: Value that needs to be set from the caller
  352. *
  353. * Return: QDF Status
  354. */
  355. QDF_STATUS wlan_mlme_set_assoc_sta_limit(struct wlan_objmgr_psoc *psoc,
  356. int value);
  357. /**
  358. * wlan_mlme_set_rmc_action_period_freq() - Set the rmc action period frequency
  359. * @psoc: pointer to psoc object
  360. * @value: Value that needs to be set from the caller
  361. *
  362. * Return: QDF Status
  363. */
  364. QDF_STATUS wlan_mlme_set_rmc_action_period_freq(struct wlan_objmgr_psoc *psoc,
  365. int value);
  366. /**
  367. * wlan_mlme_set_sap_get_peer_info() - get the sap get peer info
  368. * @psoc: pointer to psoc object
  369. * @value: Value that needs to be set from the caller
  370. *
  371. * Return: QDF Status
  372. */
  373. QDF_STATUS wlan_mlme_get_sap_get_peer_info(struct wlan_objmgr_psoc *psoc,
  374. bool *value);
  375. /**
  376. * wlan_mlme_get_sap_allow_all_channels() - get the value of sap allow all
  377. * channels
  378. * @psoc: pointer to psoc object
  379. * @value: Value that needs to be set from the caller
  380. *
  381. * Return: QDF Status
  382. */
  383. QDF_STATUS wlan_mlme_get_sap_allow_all_channels(struct wlan_objmgr_psoc *psoc,
  384. bool *value);
  385. /**
  386. * wlan_mlme_get_sap_allow_all_channels() - get the value sap max peers
  387. * @psoc: pointer to psoc object
  388. * @value: Value that needs to be set from the caller
  389. *
  390. * Return: QDF Status
  391. */
  392. QDF_STATUS wlan_mlme_get_sap_max_peers(struct wlan_objmgr_psoc *psoc,
  393. int *value);
  394. /**
  395. * wlan_mlme_set_sap_max_peers() - set the value sap max peers
  396. * @psoc: pointer to psoc object
  397. * @value: Value that needs to be set from the caller
  398. *
  399. * Return: QDF Status
  400. */
  401. QDF_STATUS wlan_mlme_set_sap_max_peers(struct wlan_objmgr_psoc *psoc,
  402. int value);
  403. /**
  404. * wlan_mlme_get_sap_max_offload_peers() - get the value sap max offload peers
  405. * @psoc: pointer to psoc object
  406. * @value: Value that needs to be set from the caller
  407. *
  408. * Return: QDF Status
  409. */
  410. QDF_STATUS wlan_mlme_get_sap_max_offload_peers(struct wlan_objmgr_psoc *psoc,
  411. int *value);
  412. /**
  413. * wlan_mlme_get_sap_max_offload_reorder_buffs() - get the value sap max offload
  414. * reorder buffs.
  415. * @psoc: pointer to psoc object
  416. * @value: Value that needs to be set from the caller
  417. *
  418. * Return: QDF Status
  419. */
  420. QDF_STATUS wlan_mlme_get_sap_max_offload_reorder_buffs(struct wlan_objmgr_psoc
  421. *psoc, int *value);
  422. /**
  423. * wlan_mlme_get_sap_chn_switch_bcn_count() - get the value sap max channel
  424. * switch beacon count
  425. * @psoc: pointer to psoc object
  426. * @value: Value that needs to be set from the caller
  427. *
  428. * Return: QDF Status
  429. */
  430. QDF_STATUS wlan_mlme_get_sap_chn_switch_bcn_count(struct wlan_objmgr_psoc *psoc,
  431. int *value);
  432. /**
  433. * wlan_mlme_get_sap_chn_switch_mode() - get the sap channel
  434. * switch mode
  435. * @psoc: pointer to psoc object
  436. * @value: Value that needs to be set from the caller
  437. *
  438. * Return: QDF Status
  439. */
  440. QDF_STATUS wlan_mlme_get_sap_chn_switch_mode(struct wlan_objmgr_psoc *psoc,
  441. bool *value);
  442. /**
  443. * wlan_mlme_get_sap_internal_restart() - get the sap internal
  444. * restart
  445. * @psoc: pointer to psoc object
  446. * @value: Value that needs to be set from the caller
  447. *
  448. * Return: QDF Status
  449. */
  450. QDF_STATUS wlan_mlme_get_sap_internal_restart(struct wlan_objmgr_psoc *psoc,
  451. bool *value);
  452. /**
  453. * wlan_mlme_get_sap_reduced_beacon_interval() - get the sap reduced
  454. * beacon interval
  455. * @psoc: pointer to psoc object
  456. * @value: Value that needs to be set from the caller
  457. *
  458. * Return: QDF Status
  459. */
  460. QDF_STATUS wlan_mlme_get_sap_reduced_beacon_interval(struct wlan_objmgr_psoc
  461. *psoc, int *value);
  462. /**
  463. * wlan_mlme_get_sap_chan_switch_rate_enabled() - get the sap rate hostapd
  464. * enabled beacon interval
  465. * @psoc: pointer to psoc object
  466. * @value: Value that needs to be set from the caller
  467. *
  468. * Return: QDF Status
  469. */
  470. QDF_STATUS wlan_mlme_get_sap_chan_switch_rate_enabled(struct wlan_objmgr_psoc
  471. *psoc, bool *value);
  472. /**
  473. * wlan_mlme_get_oce_sta_enabled_info() - Get the OCE feature enable
  474. * info for STA
  475. * @psoc: pointer to psoc object
  476. * @value: pointer to the value which will be filled for the caller
  477. *
  478. * Return: QDF Status
  479. */
  480. QDF_STATUS wlan_mlme_get_oce_sta_enabled_info(struct wlan_objmgr_psoc *psoc,
  481. bool *value);
  482. /**
  483. * wlan_mlme_get_oce_sap_enabled_info() - Get the OCE feature enable
  484. * info for SAP
  485. * @psoc: pointer to psoc object
  486. * @value: pointer to the value which will be filled for the caller
  487. *
  488. * Return: QDF Status
  489. */
  490. QDF_STATUS wlan_mlme_get_oce_sap_enabled_info(struct wlan_objmgr_psoc *psoc,
  491. bool *value);
  492. /**
  493. * wlan_mlme_get_rts_threshold() - Get the RTS threshold config
  494. * @psoc: pointer to psoc object
  495. * @value: pointer to the value which will be filled for the caller
  496. *
  497. * Return: QDF Status
  498. */
  499. QDF_STATUS wlan_mlme_get_rts_threshold(struct wlan_objmgr_psoc *psoc,
  500. uint32_t *value);
  501. /**
  502. * wlan_mlme_set_rts_threshold() - Set the RTS threshold config
  503. * @psoc: pointer to psoc object
  504. * @value: Value that needs to be set from the caller
  505. *
  506. * Return: QDF Status
  507. */
  508. QDF_STATUS wlan_mlme_set_rts_threshold(struct wlan_objmgr_psoc *psoc,
  509. uint32_t value);
  510. /**
  511. * wlan_mlme_get_frag_threshold() - Get the Fragmentation threshold
  512. * config
  513. * @psoc: pointer to psoc object
  514. * @value: pointer to the value which will be filled for the caller
  515. *
  516. * Return: QDF Status
  517. */
  518. QDF_STATUS wlan_mlme_get_frag_threshold(struct wlan_objmgr_psoc *psoc,
  519. uint32_t *value);
  520. /**
  521. * wlan_mlme_set_frag_threshold() - Set the Fragmentation threshold
  522. * config
  523. * @psoc: pointer to psoc object
  524. * @value: Value that needs to be set from the caller
  525. *
  526. * Return: QDF Status
  527. */
  528. QDF_STATUS wlan_mlme_set_frag_threshold(struct wlan_objmgr_psoc *psoc,
  529. uint32_t value);
  530. /**
  531. * wlan_mlme_get_fils_enabled_info() - Get the fils enable info for driver
  532. * @psoc: pointer to psoc object
  533. * @value: pointer to the value which will be filled for the caller
  534. *
  535. * Return: QDF Status
  536. */
  537. QDF_STATUS wlan_mlme_get_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
  538. bool *value);
  539. /**
  540. * wlan_mlme_set_fils_enabled_info() - Set the fils enable info for driver
  541. * @psoc: pointer to psoc object
  542. * @value: value that needs to be set from the caller
  543. *
  544. * Return: QDF Status
  545. */
  546. QDF_STATUS wlan_mlme_set_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
  547. bool value);
  548. /**
  549. * wlan_mlme_get_wmm_dir_ac_vo() - Get TSPEC direction
  550. * for VO
  551. * @psoc: pointer to psoc object
  552. * @value: Value that needs to be set from the caller
  553. *
  554. * Return: QDF Status
  555. */
  556. QDF_STATUS
  557. wlan_mlme_get_wmm_dir_ac_vo(struct wlan_objmgr_psoc *psoc,
  558. uint8_t *value);
  559. /**
  560. * wlan_mlme_get_wmm_nom_msdu_size_ac_vo() - Get normal
  561. * MSDU size for VO
  562. * @psoc: pointer to psoc object
  563. * @value: Value that needs to be set from the caller
  564. *
  565. * Return: QDF Status
  566. */
  567. QDF_STATUS
  568. wlan_mlme_get_wmm_nom_msdu_size_ac_vo(struct wlan_objmgr_psoc *psoc,
  569. uint16_t *value);
  570. /**
  571. * wlan_mlme_get_wmm_mean_data_rate_ac_vo() - mean data rate for VO
  572. * @psoc: pointer to psoc object
  573. * @value: Value that needs to be set from the caller
  574. *
  575. * Return: QDF Status
  576. */
  577. QDF_STATUS
  578. wlan_mlme_get_wmm_mean_data_rate_ac_vo(struct wlan_objmgr_psoc *psoc,
  579. uint32_t *value);
  580. /**
  581. * wlan_mlme_get_wmm_min_phy_rate_ac_vo() - min PHY
  582. * rate for VO
  583. * @psoc: pointer to psoc object
  584. * @value: Value that needs to be set from the caller
  585. *
  586. * Return: QDF Status
  587. */
  588. QDF_STATUS
  589. wlan_mlme_get_wmm_min_phy_rate_ac_vo(struct wlan_objmgr_psoc *psoc,
  590. uint32_t *value);
  591. /**
  592. * wlan_mlme_get_wmm_sba_ac_vo() - surplus bandwidth allowance for VO
  593. * @psoc: pointer to psoc object
  594. * @value: Value that needs to be set from the caller
  595. *
  596. * Return: QDF Status
  597. */
  598. QDF_STATUS
  599. wlan_mlme_get_wmm_sba_ac_vo(struct wlan_objmgr_psoc *psoc, uint16_t *value);
  600. /**
  601. * wlan_mlme_set_enable_bcast_probe_rsp() - Set enable bcast probe resp info
  602. * @psoc: pointer to psoc object
  603. * @value: value that needs to be set from the caller
  604. *
  605. * Return: QDF Status
  606. */
  607. QDF_STATUS wlan_mlme_set_enable_bcast_probe_rsp(struct wlan_objmgr_psoc *psoc,
  608. bool value);
  609. /**
  610. * wlan_mlme_get_wmm_uapsd_vo_srv_intv() - Get Uapsd service
  611. * interval for voice
  612. * @psoc: pointer to psoc object
  613. * @value: pointer to the value which will be filled for the caller
  614. *
  615. * Return: QDF Status
  616. */
  617. QDF_STATUS
  618. wlan_mlme_get_wmm_uapsd_vo_srv_intv(struct wlan_objmgr_psoc *psoc,
  619. uint32_t *value);
  620. /**
  621. * wlan_mlme_get_wmm_uapsd_vo_sus_intv() - Get Uapsd suspension
  622. * interval for voice
  623. * @psoc: pointer to psoc object
  624. * @value: pointer to the value which will be filled for the caller
  625. *
  626. * Return: QDF Status
  627. */
  628. QDF_STATUS
  629. wlan_mlme_get_wmm_uapsd_vo_sus_intv(struct wlan_objmgr_psoc *psoc,
  630. uint32_t *value);
  631. #endif /* _WLAN_MLME_API_H_ */