qcacld-3.0: Add MLME CFG items of EDCA parameters
Add the EDCA cfg parameters: 1. WNI_CFG_EDCA_ANI_ACBK_LOCAL 2. WNI_CFG_EDCA_ANI_ACBE_LOCAL 3. WNI_CFG_EDCA_ANI_ACVI_LOCAL 4. WNI_CFG_EDCA_ANI_ACVO_LOCAL 5. WNI_CFG_EDCA_ANI_ACBK 6. WNI_CFG_EDCA_ANI_ACBE 7. WNI_CFG_EDCA_ANI_ACVI 8. WNI_CFG_EDCA_ANI_ACVO 9. WNI_CFG_EDCA_WME_ACBK_LOCAL 10. WNI_CFG_EDCA_WME_ACBE_LOCAL 11. WNI_CFG_EDCA_WME_ACVI_LOCAL 12. WNI_CFG_EDCA_WME_ACVO_LOCAL 13. WNI_CFG_EDCA_WME_ACBK 14. WNI_CFG_EDCA_WME_ACBE 15. WNI_CFG_EDCA_WME_ACVI 16. WNI_CFG_EDCA_WME_ACVO 17. WNI_CFG_EDCA_ETSI_ACBE_LOCAL 18. WNI_CFG_EDCA_ETSI_ACBK_LOCAL 19. WNI_CFG_EDCA_ETSI_ACVI_LOCAL 20. WNI_CFG_EDCA_ETSI_ACVO_LOCAL 21. WNI_CFG_EDCA_ETSI_ACBE 22. WNI_CFG_EDCA_ETSI_ACBK 23. WNI_CFG_EDCA_ETSI_ACVI 24. WNI_CFG_EDCA_ETSI_ACVO Change-Id: I10ba5c2b8c63bd3fb19540e999c39f3fdf53197b CRs-Fixed: 2315482
This commit is contained in:

committed by
Nitesh Shrivastav

parent
2e29c7972b
commit
5f45a5aaea
@@ -144,6 +144,142 @@ static void mlme_init_generic_cfg(struct wlan_objmgr_psoc *psoc,
|
|||||||
mlme_init_pmf_cfg(psoc, gen);
|
mlme_init_pmf_cfg(psoc, gen);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void mlme_init_edca_ani_cfg(struct wlan_mlme_edca_params *edca_params)
|
||||||
|
{
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACBK_LOCAL),
|
||||||
|
edca_params->ani_acbk_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acbk_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACBE_LOCAL),
|
||||||
|
edca_params->ani_acbe_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acbe_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACVI_LOCAL),
|
||||||
|
edca_params->ani_acvi_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acvi_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACVO_LOCAL),
|
||||||
|
edca_params->ani_acvo_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acvo_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACBK),
|
||||||
|
edca_params->ani_acbk_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acbk_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACBE),
|
||||||
|
edca_params->ani_acbe_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acbe_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACVI),
|
||||||
|
edca_params->ani_acvi_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acvi_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ANI_ACVO),
|
||||||
|
edca_params->ani_acvo_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->ani_acvo_b.len);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void mlme_init_edca_wme_cfg(struct wlan_mlme_edca_params *edca_params)
|
||||||
|
{
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACBK_LOCAL),
|
||||||
|
edca_params->wme_acbk_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acbk_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACBE_LOCAL),
|
||||||
|
edca_params->wme_acbe_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acbe_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACVI_LOCAL),
|
||||||
|
edca_params->wme_acvi_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acvi_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACVO_LOCAL),
|
||||||
|
edca_params->wme_acvo_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acvo_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACBK),
|
||||||
|
edca_params->wme_acbk_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acbk_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACBE),
|
||||||
|
edca_params->wme_acbe_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acbe_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACVI),
|
||||||
|
edca_params->wme_acvi_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acvi_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_WME_ACVO),
|
||||||
|
edca_params->wme_acvo_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->wme_acvo_b.len);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void mlme_init_edca_etsi_cfg(struct wlan_mlme_edca_params *edca_params)
|
||||||
|
{
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACBK_LOCAL),
|
||||||
|
edca_params->etsi_acbk_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acbk_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACBE_LOCAL),
|
||||||
|
edca_params->etsi_acbe_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acbe_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACVI_LOCAL),
|
||||||
|
edca_params->etsi_acvi_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acvi_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACVO_LOCAL),
|
||||||
|
edca_params->etsi_acvo_l.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acvo_l.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACBK),
|
||||||
|
edca_params->etsi_acbk_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acbk_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACBE),
|
||||||
|
edca_params->etsi_acbe_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acbe_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACVI),
|
||||||
|
edca_params->etsi_acvi_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acvi_b.len);
|
||||||
|
|
||||||
|
qdf_uint8_array_parse(cfg_default(CFG_EDCA_ETSI_ACVO),
|
||||||
|
edca_params->etsi_acvo_b.data,
|
||||||
|
CFG_EDCA_DATA_LEN,
|
||||||
|
&edca_params->etsi_acvo_b.len);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void mlme_init_edca_params(struct wlan_mlme_edca_params *edca_params)
|
||||||
|
{
|
||||||
|
mlme_init_edca_ani_cfg(edca_params);
|
||||||
|
mlme_init_edca_wme_cfg(edca_params);
|
||||||
|
mlme_init_edca_etsi_cfg(edca_params);
|
||||||
|
}
|
||||||
|
|
||||||
static void mlme_init_ht_cap_in_cfg(struct wlan_objmgr_psoc *psoc,
|
static void mlme_init_ht_cap_in_cfg(struct wlan_objmgr_psoc *psoc,
|
||||||
struct wlan_mlme_ht_caps *ht_caps)
|
struct wlan_mlme_ht_caps *ht_caps)
|
||||||
{
|
{
|
||||||
@@ -732,6 +868,7 @@ QDF_STATUS mlme_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
|
|||||||
|
|
||||||
mlme_cfg = &mlme_obj->cfg;
|
mlme_cfg = &mlme_obj->cfg;
|
||||||
mlme_init_generic_cfg(psoc, &mlme_cfg->gen);
|
mlme_init_generic_cfg(psoc, &mlme_cfg->gen);
|
||||||
|
mlme_init_edca_params(&mlme_cfg->edca_params);
|
||||||
mlme_init_ht_cap_in_cfg(psoc, &mlme_cfg->ht_caps);
|
mlme_init_ht_cap_in_cfg(psoc, &mlme_cfg->ht_caps);
|
||||||
mlme_init_mbo_cfg(psoc, &mlme_cfg->mbo_cfg);
|
mlme_init_mbo_cfg(psoc, &mlme_cfg->mbo_cfg);
|
||||||
mlme_init_qos_cfg(psoc, &mlme_cfg->qos_mlme_params);
|
mlme_init_qos_cfg(psoc, &mlme_cfg->qos_mlme_params);
|
||||||
|
@@ -24,6 +24,7 @@
|
|||||||
#include "qdf_types.h"
|
#include "qdf_types.h"
|
||||||
|
|
||||||
#include "cfg_mlme_chainmask.h"
|
#include "cfg_mlme_chainmask.h"
|
||||||
|
#include "cfg_mlme_edca_params.h"
|
||||||
#include "cfg_mlme_generic.h"
|
#include "cfg_mlme_generic.h"
|
||||||
#include "cfg_mlme_ht_caps.h"
|
#include "cfg_mlme_ht_caps.h"
|
||||||
#include "cfg_mlme_he_caps.h"
|
#include "cfg_mlme_he_caps.h"
|
||||||
@@ -42,6 +43,7 @@
|
|||||||
/* Please Maintain Alphabetic Order here */
|
/* Please Maintain Alphabetic Order here */
|
||||||
#define CFG_MLME_ALL \
|
#define CFG_MLME_ALL \
|
||||||
CFG_CHAINMASK_ALL \
|
CFG_CHAINMASK_ALL \
|
||||||
|
CFG_EDCA_PARAMS_ALL \
|
||||||
CFG_GENERIC_ALL \
|
CFG_GENERIC_ALL \
|
||||||
CFG_HT_CAPS_ALL \
|
CFG_HT_CAPS_ALL \
|
||||||
CFG_HE_CAPS_ALL \
|
CFG_HE_CAPS_ALL \
|
||||||
|
292
mlme/dispatcher/inc/cfg_mlme_edca_params.h
Normal file
292
mlme/dispatcher/inc/cfg_mlme_edca_params.h
Normal file
@@ -0,0 +1,292 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2011-2018 The Linux Foundation. All rights reserved.
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, and/or distribute this software for
|
||||||
|
* any purpose with or without fee is hereby granted, provided that the
|
||||||
|
* above copyright notice and this permission notice appear in all
|
||||||
|
* copies.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||||
|
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||||
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||||
|
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||||
|
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||||
|
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DOC: This file contains centralized definitions of converged configuration.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __CFG_MLME_EDCA__PARAM_H
|
||||||
|
#define __CFG_MLME_EDCA__PARAM_H
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACBK_LOCAL "0x0, 0x7, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0x1f, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_ANI_ACBK_LOCAL_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACBK_LOCAL CFG_STRING( \
|
||||||
|
"edca_ani_acbk_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACBK_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ANI_ACBK_LOCAL, \
|
||||||
|
"EDCA ANI ACBK LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACBE_LOCAL "0x0, 0x2, 0x0, 0xf, 0x3, 0xff, 0x64, 0x0, 0x1f, 0x3, 0xff, 0x64, 0x0, 0xf, 0x3, 0xff, 0x64"
|
||||||
|
#define STR_EDCA_ANI_ACBE_LOCAL_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACBE_LOCAL CFG_STRING( \
|
||||||
|
"edca_ani_acbe_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACBE_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ANI_ACBE_LOCAL, \
|
||||||
|
"EDCA ANI ACBE LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACVI_LOCAL "0x0, 0x2, 0x0, 0x7, 0x0, 0xf, 0xc8, 0x0, 0xf, 0x0, 0x1f, 0xbc, 0x0, 0x7, 0x0, 0xf, 0xc8"
|
||||||
|
#define STR_EDCA_ANI_ACVI_LOCAL_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACVI_LOCAL CFG_STRING( \
|
||||||
|
"edca_ani_acvi_local",\
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACVI_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ANI_ACVI_LOCAL, \
|
||||||
|
"EDCA ANI ACVI LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACVO_LOCAL "0x0, 0x2, 0x0, 0x3, 0x0, 0x7, 0x64, 0x0, 0x7, 0x0, 0xf, 0x66, 0x0, 0x3, 0x0, 0x7, 0x64"
|
||||||
|
#define STR_EDCA_ANI_ACVO_LOCAL_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACVO_LOCAL CFG_STRING( \
|
||||||
|
"edca_ani_acvo_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACVO_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ANI_ACVO_LOCAL, \
|
||||||
|
"EDCA ANI ACVO LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACBK "0x0, 0x7, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0x1f, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_ANI_ACBK_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACBK CFG_STRING( \
|
||||||
|
"edca_ani_acbk", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACBK_LEN, \
|
||||||
|
STR_EDCA_ANI_ACBK, \
|
||||||
|
"EDCA ANI ACBK BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACBE "0x0, 0x2, 0x0, 0xf, 0x3, 0xff, 0x64, 0x0, 0x1f, 0x3, 0xff, 0x64, 0x0, 0xf, 0x3, 0xff, 0x64"
|
||||||
|
#define STR_EDCA_ANI_ACBE_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACBE CFG_STRING( \
|
||||||
|
"edca_ani_acbe", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACBE_LEN, \
|
||||||
|
STR_EDCA_ANI_ACBE, \
|
||||||
|
"EDCA ANI ACBE BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACVI "0x0, 0x2, 0x0, 0x7, 0x0, 0xf, 0xc8, 0x0, 0xf, 0x0, 0x1f, 0xbc, 0x0, 0x7, 0x0, 0xf, 0xc8"
|
||||||
|
#define STR_EDCA_ANI_ACVI_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACVI CFG_STRING( \
|
||||||
|
"edca_ani_acvi", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACVI_LEN, \
|
||||||
|
STR_EDCA_ANI_ACVI, \
|
||||||
|
"EDCA ANI ACVI BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_ANI_ACVO "0x0, 0x2, 0x0, 0x3, 0x0, 0x7, 0x64, 0x0, 0x7, 0x0, 0xf, 0x66, 0x0, 0x3, 0x0, 0x7, 0x64"
|
||||||
|
#define STR_EDCA_ANI_ACVO_LEN (sizeof(STR_EDCA_ANI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ANI_ACVO CFG_STRING( \
|
||||||
|
"edca_ani_acvo", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ANI_ACVO_LEN, \
|
||||||
|
STR_EDCA_ANI_ACVO, \
|
||||||
|
"EDCA ANI ACVO BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACBK_LOCAL "0x0, 0x7, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0x1f, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_WME_ACBK_LOCAL_LEN (sizeof(STR_EDCA_WME_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACBK_LOCAL CFG_STRING( \
|
||||||
|
"edca_wme_acbk_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACBK_LOCAL_LEN, \
|
||||||
|
STR_EDCA_WME_ACBK_LOCAL, \
|
||||||
|
"EDCA WME ACBK LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACBE_LOCAL "0x0, 0x3, 0x0, 0xf, 0x0, 0x3f, 0x0, 0x0, 0x1f, 0x3, 0xff, 0x0, 0x0, 0xf, 0x0, 0x3f, 0x0"
|
||||||
|
#define STR_EDCA_WME_ACBE_LOCAL_LEN (sizeof(STR_EDCA_WME_ACBE_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACBE_LOCAL CFG_STRING( \
|
||||||
|
"edca_wme_acbe_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACBE_LOCAL_LEN, \
|
||||||
|
STR_EDCA_WME_ACBE_LOCAL, \
|
||||||
|
"EDCA WME ACBE LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACVI_LOCAL "0x0, 0x1, 0x0, 0x7, 0x0, 0xf, 0x5e, 0x0, 0x7, 0x0, 0xf, 0xbc, 0x0, 0x7, 0x0, 0xf, 0x5e"
|
||||||
|
#define STR_EDCA_WME_ACVI_LOCAL_LEN (sizeof(STR_EDCA_WME_ACVI_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACVI_LOCAL CFG_STRING( \
|
||||||
|
"edca_wme_acvi_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACVI_LOCAL_LEN, \
|
||||||
|
STR_EDCA_WME_ACVI_LOCAL, \
|
||||||
|
"EDCA WME ACVI LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACVO_LOCAL "0x0, 0x1, 0x0, 0x3, 0x0, 0x7, 0x2f, 0x0, 0x3, 0x0, 0x7, 0x66, 0x0, 0x3, 0x0, 0x7, 0x2f"
|
||||||
|
#define STR_EDCA_WME_ACVO_LOCAL_LEN (sizeof(STR_EDCA_WME_ACVO_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACVO_LOCAL CFG_STRING( \
|
||||||
|
"edca_wme_acvo_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACVO_LOCAL_LEN, \
|
||||||
|
STR_EDCA_WME_ACVO_LOCAL, \
|
||||||
|
"EDCA WME ACVO LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACBK "0x0, 0x7, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_WME_ACBK_LEN (sizeof(STR_EDCA_WME_ACBK) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACBK CFG_STRING( \
|
||||||
|
"edca_wme_acbk", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACBK_LEN, \
|
||||||
|
STR_EDCA_WME_ACBK, \
|
||||||
|
"EDCA WME ACBK BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACBE "0x0, 0x3, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_WME_ACBE_LEN (sizeof(STR_EDCA_WME_ACBE) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACBE CFG_STRING( \
|
||||||
|
"edca_wme_acbe", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACBE_LEN, \
|
||||||
|
STR_EDCA_WME_ACBE, \
|
||||||
|
"EDCA WME ACBE BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACVI "0x0, 0x2, 0x0, 0x7, 0x0, 0xf, 0x5e, 0x0, 0x7, 0x0, 0xf, 0xbc, 0x0, 0x7, 0x0, 0xf, 0x5e"
|
||||||
|
#define STR_EDCA_WME_ACVI_LEN (sizeof(STR_EDCA_WME_ACVI) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACVI CFG_STRING( \
|
||||||
|
"edca_wme_acvi", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACVI_LEN, \
|
||||||
|
STR_EDCA_WME_ACVI, \
|
||||||
|
"EDCA WME ACVI BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_WME_ACVO "0x0, 0x2, 0x0, 0x3, 0x0, 0x7, 0x2f, 0x0, 0x3, 0x0, 0x7, 0x66, 0x0, 0x3, 0x0, 0x7, 0x2f"
|
||||||
|
#define STR_EDCA_WME_ACVO_LEN (sizeof(STR_EDCA_WME_ACVO) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_WME_ACVO CFG_STRING( \
|
||||||
|
"edca_wme_acvo", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_WME_ACVO_LEN, \
|
||||||
|
STR_EDCA_WME_ACVO, \
|
||||||
|
"EDCA WME ACVO BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACBK_LOCAL "0x0, 0x7, 0x0, 0xf, 0x3, 0xff, 0xbb, 0x0, 0x1f, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_ETSI_ACBK_LOCAL_LEN (sizeof(STR_EDCA_ETSI_ACBK_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACBK_LOCAL CFG_STRING( \
|
||||||
|
"edca_etsi_acbk_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACBK_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACBK_LOCAL, \
|
||||||
|
"EDCA ETSI ACBK LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACBE_LOCAL "0x0, 0x3, 0x0, 0xf, 0x0, 0x3f, 0xbb, 0x0, 0x1f, 0x3, 0xff, 0x0, 0x0, 0xf, 0x0, 0x3f, 0x0"
|
||||||
|
#define STR_EDCA_ETSI_ACBE_LOCAL_LEN (sizeof(STR_EDCA_ETSI_ACBE_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACBE_LOCAL CFG_STRING( \
|
||||||
|
"edca_etsi_acbe_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACBE_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACBE_LOCAL, \
|
||||||
|
"EDCA ETSI ACBE LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACVI_LOCAL "0x0, 0x1, 0x0, 0x7, 0x0, 0xf, 0x7d, 0x0, 0x7, 0x0, 0xf, 0xbc, 0x0, 0x7, 0x0, 0xf, 0x5e"
|
||||||
|
#define STR_EDCA_ETSI_ACVI_LOCAL_LEN (sizeof(STR_EDCA_ETSI_ACVI_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACVI_LOCAL CFG_STRING( \
|
||||||
|
"edca_etsi_acvi_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACVI_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACVI_LOCAL, \
|
||||||
|
"EDCA ETSI ACVI LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACVO_LOCAL "0x0, 0x1, 0x0, 0x3, 0x0, 0x7, 0x3e, 0x0, 0x3, 0x0, 0x7, 0x66, 0x0, 0x3, 0x0, 0x7, 0x2f"
|
||||||
|
#define STR_EDCA_ETSI_ACVO_LOCAL_LEN (sizeof(STR_EDCA_ETSI_ACVO_LOCAL) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACVO_LOCAL CFG_STRING( \
|
||||||
|
"edca_etsi_acvo_local", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACVO_LOCAL_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACVO_LOCAL, \
|
||||||
|
"EDCA ETSI ACVO LOCAL")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACBK "0x0, 0x7, 0x0, 0xf, 0x3, 0xff, 0xbb, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_ETSI_ACBK_LEN (sizeof(STR_EDCA_ETSI_ACBK) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACBK CFG_STRING( \
|
||||||
|
"edca_etsi_acbk", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACBK_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACBK, \
|
||||||
|
"EDCA ETSI ACBK BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACBE "0x0, 0x3, 0x0, 0xf, 0x3, 0xff, 0xbb, 0x0, 0xf, 0x3, 0xff, 0x0, 0x0, 0xf, 0x3, 0xff, 0x0"
|
||||||
|
#define STR_EDCA_ETSI_ACBE_LEN (sizeof(STR_EDCA_ETSI_ACBE) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACBE CFG_STRING( \
|
||||||
|
"edca_etsi_acbe", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACBE_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACBE, \
|
||||||
|
"EDCA ETSI ACBE BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACVI "0x0, 0x2, 0x0, 0x7, 0x0, 0xf, 0x7d, 0x0, 0x7, 0x0, 0xf, 0xbc, 0x0, 0x7, 0x0, 0xf, 0x5e"
|
||||||
|
#define STR_EDCA_ETSI_ACVI_LEN (sizeof(STR_EDCA_ETSI_ACVI) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACVI CFG_STRING( \
|
||||||
|
"edca_etsi_acvi", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACVI_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACVI, \
|
||||||
|
"EDCA ETSI ACVI BROADCAST")
|
||||||
|
|
||||||
|
#define STR_EDCA_ETSI_ACVO "0x0, 0x2, 0x0, 0x3, 0x0, 0x7, 0x3e, 0x0, 0x3, 0x0, 0x7, 0x66, 0x0, 0x3, 0x0, 0x7, 0x2f"
|
||||||
|
#define STR_EDCA_ETSI_ACVO_LEN (sizeof(STR_EDCA_ETSI_ACVO) - 1)
|
||||||
|
|
||||||
|
#define CFG_EDCA_ETSI_ACVO CFG_STRING( \
|
||||||
|
"edca_etsi_acvo", \
|
||||||
|
0, \
|
||||||
|
STR_EDCA_ETSI_ACVO_LEN, \
|
||||||
|
STR_EDCA_ETSI_ACVO, \
|
||||||
|
"EDCA ETSI ACVO BROADCAST")
|
||||||
|
|
||||||
|
#define CFG_EDCA_PARAMS_ALL \
|
||||||
|
CFG(CFG_EDCA_ANI_ACBK_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ANI_ACBE_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ANI_ACVI_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ANI_ACVO_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ANI_ACBK) \
|
||||||
|
CFG(CFG_EDCA_ANI_ACBE) \
|
||||||
|
CFG(CFG_EDCA_ANI_ACVI) \
|
||||||
|
CFG(CFG_EDCA_ANI_ACVO) \
|
||||||
|
CFG(CFG_EDCA_WME_ACBK_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_WME_ACBE_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_WME_ACVI_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_WME_ACVO_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_WME_ACBK) \
|
||||||
|
CFG(CFG_EDCA_WME_ACBE) \
|
||||||
|
CFG(CFG_EDCA_WME_ACVI) \
|
||||||
|
CFG(CFG_EDCA_WME_ACVO) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACBK_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACBE_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACVI_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACVO_LOCAL) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACBK) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACBE) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACVI) \
|
||||||
|
CFG(CFG_EDCA_ETSI_ACVO)
|
||||||
|
|
||||||
|
#endif /* __CFG_MLME_EDCA__PARAM_H */
|
@@ -28,6 +28,131 @@
|
|||||||
#define CFG_PMKID_MODES_OKC (0x1)
|
#define CFG_PMKID_MODES_OKC (0x1)
|
||||||
#define CFG_PMKID_MODES_PMKSA_CACHING (0x2)
|
#define CFG_PMKID_MODES_PMKSA_CACHING (0x2)
|
||||||
|
|
||||||
|
#define CFG_EDCA_DATA_LEN 17
|
||||||
|
|
||||||
|
/**
|
||||||
|
* struct mlme_cfg_str - generic structure for all mlme CFG string items
|
||||||
|
*
|
||||||
|
* @len: length of the string
|
||||||
|
* @data: uint8_t array to store values
|
||||||
|
*/
|
||||||
|
struct mlme_cfg_str {
|
||||||
|
qdf_size_t len;
|
||||||
|
uint8_t data[CFG_EDCA_DATA_LEN];
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* enum e_edca_type - to index edca params for edca profile
|
||||||
|
* EDCA profile AC unicast/bcast
|
||||||
|
* @edca_ani_acbe_local: ani BE unicast
|
||||||
|
* @edca_ani_acbk_local: ani BK unicast
|
||||||
|
* @edca_ani_acvi_local: ani VI unicast
|
||||||
|
* @edca_ani_acvo_local: ani VO unicast
|
||||||
|
* @edca_ani_acbe_bcast: ani BE bcast
|
||||||
|
* @edca_ani_acbk_bcast: ani BK bcast
|
||||||
|
* @edca_ani_acvi_bcast: ani VI bcast
|
||||||
|
* @edca_ani_acvo_bcast: ani VO bcast
|
||||||
|
* @edca_wme_acbe_local: wme BE unicast
|
||||||
|
* @edca_wme_acbk_local: wme BK unicast
|
||||||
|
* @edca_wme_acvi_local: wme VI unicast
|
||||||
|
* @edca_wme_acvo_local: wme VO unicast
|
||||||
|
* @edca_wme_acbe_bcast: wme BE bcast
|
||||||
|
* @edca_wme_acbk_bcast: wme BK bcast
|
||||||
|
* @edca_wme_acvi_bcast: wme VI bcast
|
||||||
|
* @edca_wme_acvo_bcast: wme VO bcast
|
||||||
|
* @edca_etsi_acbe_local: etsi BE unicast
|
||||||
|
* @edca_etsi_acbk_local: etsi BK unicast
|
||||||
|
* @edca_etsi_acvi_local: etsi VI unicast
|
||||||
|
* @edca_etsi_acvo_local: etsi VO unicast
|
||||||
|
* @edca_etsi_acbe_bcast: etsi BE bcast
|
||||||
|
* @edca_etsi_acbk_bcast: etsi BK bcast
|
||||||
|
* @edca_etsi_acvi_bcast: etsi VI bcast
|
||||||
|
* @edca_etsi_acvo_bcast: etsi VO bcast
|
||||||
|
*/
|
||||||
|
enum e_edca_type {
|
||||||
|
edca_ani_acbe_local,
|
||||||
|
edca_ani_acbk_local,
|
||||||
|
edca_ani_acvi_local,
|
||||||
|
edca_ani_acvo_local,
|
||||||
|
edca_ani_acbe_bcast,
|
||||||
|
edca_ani_acbk_bcast,
|
||||||
|
edca_ani_acvi_bcast,
|
||||||
|
edca_ani_acvo_bcast,
|
||||||
|
edca_wme_acbe_local,
|
||||||
|
edca_wme_acbk_local,
|
||||||
|
edca_wme_acvi_local,
|
||||||
|
edca_wme_acvo_local,
|
||||||
|
edca_wme_acbe_bcast,
|
||||||
|
edca_wme_acbk_bcast,
|
||||||
|
edca_wme_acvi_bcast,
|
||||||
|
edca_wme_acvo_bcast,
|
||||||
|
edca_etsi_acbe_local,
|
||||||
|
edca_etsi_acbk_local,
|
||||||
|
edca_etsi_acvi_local,
|
||||||
|
edca_etsi_acvo_local,
|
||||||
|
edca_etsi_acbe_bcast,
|
||||||
|
edca_etsi_acbk_bcast,
|
||||||
|
edca_etsi_acvi_bcast,
|
||||||
|
edca_etsi_acvo_bcast
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* struct mlme_edca_params - EDCA pramaters related config items
|
||||||
|
*
|
||||||
|
* @ani_acbk_l: EDCA parameters for ANI local access category background
|
||||||
|
* @ani_acbe_l: EDCA parameters for ANI local access category best effort
|
||||||
|
* @ani_acvi_l: EDCA parameters for ANI local access category video
|
||||||
|
* @ani_acvo_l: EDCA parameters for ANI local access category voice
|
||||||
|
* @ani_acbk_b: EDCA parameters for ANI bcast access category background
|
||||||
|
* @ani_acbe_b: EDCA parameters for ANI bcast access category best effort
|
||||||
|
* @ani_acvi_b: EDCA parameters for ANI bcast access category video
|
||||||
|
* @ani_acvo_b: EDCA parameters for ANI bcast access category voice
|
||||||
|
* @wme_acbk_l: EDCA parameters for WME local access category background
|
||||||
|
* @wme_acbe_l: EDCA parameters for WME local access category best effort
|
||||||
|
* @wme_acvi_l: EDCA parameters for WME local access category video
|
||||||
|
* @wme_acvo_l: EDCA parameters for WME local access category voice
|
||||||
|
* @wme_acbk_b: EDCA parameters for WME bcast access category background
|
||||||
|
* @wme_acbe_b: EDCA parameters for WME bcast access category best effort
|
||||||
|
* @wme_acvi_b: EDCA parameters for WME bcast access category video
|
||||||
|
* @wme_acvo_b: EDCA parameters for WME bcast access category voice
|
||||||
|
* @etsi_acbk_l: EDCA parameters for ETSI local access category background
|
||||||
|
* @etsi_acbe_l: EDCA parameters for ETSI local access category best effort
|
||||||
|
* @etsi_acvi_l: EDCA parameters for ETSI local access category video
|
||||||
|
* @etsi_acvo_l: EDCA parameters for ETSI local access category voice
|
||||||
|
* @etsi_acbk_b: EDCA parameters for ETSI bcast access category background
|
||||||
|
* @etsi_acbe_b: EDCA parameters for ETSI bcast access category best effort
|
||||||
|
* @etsi_acvi_b: EDCA parameters for ETSI bcast access category video
|
||||||
|
* @etsi_acvo_b: EDCA parameters for ETSI bcast access category voice
|
||||||
|
*/
|
||||||
|
struct wlan_mlme_edca_params {
|
||||||
|
struct mlme_cfg_str ani_acbk_l;
|
||||||
|
struct mlme_cfg_str ani_acbe_l;
|
||||||
|
struct mlme_cfg_str ani_acvi_l;
|
||||||
|
struct mlme_cfg_str ani_acvo_l;
|
||||||
|
struct mlme_cfg_str ani_acbk_b;
|
||||||
|
struct mlme_cfg_str ani_acbe_b;
|
||||||
|
struct mlme_cfg_str ani_acvi_b;
|
||||||
|
struct mlme_cfg_str ani_acvo_b;
|
||||||
|
|
||||||
|
struct mlme_cfg_str wme_acbk_l;
|
||||||
|
struct mlme_cfg_str wme_acbe_l;
|
||||||
|
struct mlme_cfg_str wme_acvi_l;
|
||||||
|
struct mlme_cfg_str wme_acvo_l;
|
||||||
|
struct mlme_cfg_str wme_acbk_b;
|
||||||
|
struct mlme_cfg_str wme_acbe_b;
|
||||||
|
struct mlme_cfg_str wme_acvi_b;
|
||||||
|
struct mlme_cfg_str wme_acvo_b;
|
||||||
|
|
||||||
|
struct mlme_cfg_str etsi_acbk_l;
|
||||||
|
struct mlme_cfg_str etsi_acbe_l;
|
||||||
|
struct mlme_cfg_str etsi_acvi_l;
|
||||||
|
struct mlme_cfg_str etsi_acvo_l;
|
||||||
|
struct mlme_cfg_str etsi_acbk_b;
|
||||||
|
struct mlme_cfg_str etsi_acbe_b;
|
||||||
|
struct mlme_cfg_str etsi_acvi_b;
|
||||||
|
struct mlme_cfg_str etsi_acvo_b;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct mlme_ht_capabilities_info - HT Capabilities Info
|
* struct mlme_ht_capabilities_info - HT Capabilities Info
|
||||||
* @l_sig_tx_op_protection: L-SIG TXOP Protection Mechanism support
|
* @l_sig_tx_op_protection: L-SIG TXOP Protection Mechanism support
|
||||||
@@ -660,6 +785,7 @@ struct wlan_mlme_oce {
|
|||||||
* @scoring: BSS Scoring related CFG Items
|
* @scoring: BSS Scoring related CFG Items
|
||||||
*/
|
*/
|
||||||
struct wlan_mlme_cfg {
|
struct wlan_mlme_cfg {
|
||||||
|
struct wlan_mlme_edca_params edca_params;
|
||||||
struct wlan_mlme_generic gen;
|
struct wlan_mlme_generic gen;
|
||||||
struct wlan_mlme_ht_caps ht_caps;
|
struct wlan_mlme_ht_caps ht_caps;
|
||||||
struct wlan_mlme_he_caps he_caps;
|
struct wlan_mlme_he_caps he_caps;
|
||||||
|
Reference in New Issue
Block a user