qcacld-3.0: Add wps params to mlme component

Add wps params in respect to CFG
convergence

Change-Id: I462e3e1b3f60c7ec65a7cdf5e3bc7b69c28a5d79
CRs-Fixed: 2326841
This commit is contained in:
gaurank kathpalia
2018-09-14 21:55:32 +05:30
committed by nshrivas
parent 89ea765a96
commit 1f7b526563
4 changed files with 147 additions and 2 deletions

View File

@@ -1246,6 +1246,23 @@ static void mlme_init_wmm_in_cfg(struct wlan_objmgr_psoc *psoc,
cfg_get(psoc, CFG_QOS_WMM_UAPSD_VO_SUS_INTV);
}
static void mlme_init_wps_params_cfg(struct wlan_objmgr_psoc *psoc,
struct wlan_mlme_wps_params *wps_params)
{
wps_params->enable_wps = cfg_default(CFG_WPS_ENABLE);
wps_params->wps_cfg_method = cfg_default(CFG_WPS_CFG_METHOD);
wps_params->wps_device_password_id =
cfg_default(CFG_WPS_DEVICE_PASSWORD_ID);
wps_params->wps_device_sub_category =
cfg_default(CFG_WPS_DEVICE_SUB_CATEGORY);
wps_params->wps_primary_device_category =
cfg_default(CFG_WPS_PRIMARY_DEVICE_CATEGORY);
wps_params->wps_primary_device_oui =
cfg_default(CFG_WPS_PIMARY_DEVICE_OUI);
wps_params->wps_state = cfg_default(CFG_WPS_STATE);
wps_params->wps_version = cfg_default(CFG_WPS_VERSION);
}
QDF_STATUS mlme_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
{
struct wlan_mlme_psoc_obj *mlme_obj;
@@ -1282,6 +1299,7 @@ QDF_STATUS mlme_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
mlme_init_threshold_cfg(psoc, &mlme_cfg->threshold);
mlme_init_oce_cfg(psoc, &mlme_cfg->oce);
mlme_init_wep_cfg(&mlme_cfg->wep_params);
mlme_init_wps_params_cfg(psoc, &mlme_cfg->wps_params);
return status;
}

View File

@@ -22,7 +22,7 @@
#include "cfg_define.h"
#include "cfg_converged.h"
#include "qdf_types.h"
#include "cfg_mlme_wps_params.h"
#include "cfg_mlme_chainmask.h"
#include "cfg_mlme_edca_params.h"
#include "cfg_mlme_generic.h"
@@ -73,6 +73,7 @@
CFG_THRESHOLD_ALL \
CFG_TIMEOUT_ALL \
CFG_VHT_CAPS_ALL \
CFG_WEP_PARAMS_ALL
CFG_WEP_PARAMS_ALL \
CFG_WPS_ALL
#endif /* __CFG_MLME_H */

View File

@@ -0,0 +1,101 @@
/*
* Copyright (c) 2012-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_WPS_PARAMS_H
#define __CFG_MLME_WPS_PARAMS_H
#define CFG_WPS_ENABLE CFG_UINT( \
"enable_wps", \
0, \
255, \
0, \
CFG_VALUE_OR_DEFAULT, \
"enable wps")
#define CFG_WPS_STATE CFG_UINT( \
"wps_state", \
0, \
255, \
1, \
CFG_VALUE_OR_DEFAULT, \
"wps_state")
#define CFG_WPS_VERSION CFG_UINT( \
"wps_version", \
0, \
255, \
16, \
CFG_VALUE_OR_DEFAULT, \
"wps version")
#define CFG_WPS_CFG_METHOD CFG_UINT( \
"wps_cfg_method", \
0, \
4294967295, \
8, \
CFG_VALUE_OR_DEFAULT, \
"wps cfg method")
#define CFG_WPS_PRIMARY_DEVICE_CATEGORY CFG_UINT( \
"wps_primary_device_category", \
0, \
65535, \
1, \
CFG_VALUE_OR_DEFAULT, \
"wps primary device category")
#define CFG_WPS_PIMARY_DEVICE_OUI CFG_UINT( \
"wps_primary_device_oui", \
0, \
4294967295, \
5304836, \
CFG_VALUE_OR_DEFAULT, \
"wps primary device oui")
#define CFG_WPS_DEVICE_SUB_CATEGORY CFG_UINT( \
"wps_device_sub_category", \
0, \
65535, \
1, \
CFG_VALUE_OR_DEFAULT, \
"wps device sub category")
#define CFG_WPS_DEVICE_PASSWORD_ID CFG_UINT( \
"wps_device_password_id", \
0, \
4294967295, \
0, \
CFG_VALUE_OR_DEFAULT, \
"wps device password id")
#define CFG_WPS_ALL \
CFG(CFG_WPS_ENABLE) \
CFG(CFG_WPS_STATE) \
CFG(CFG_WPS_VERSION) \
CFG(CFG_WPS_CFG_METHOD) \
CFG(CFG_WPS_PRIMARY_DEVICE_CATEGORY) \
CFG(CFG_WPS_PIMARY_DEVICE_OUI) \
CFG(CFG_WPS_DEVICE_SUB_CATEGORY) \
CFG(CFG_WPS_DEVICE_PASSWORD_ID)
#endif /* __CFG_MLME_WPS_PARAMS_H */

View File

@@ -309,6 +309,29 @@ struct wlan_mlme_ht_caps {
struct mlme_ht_capabilities_info ht_cap_info;
};
/*
* struct wlan_mlme_wps_params - All wps based related cfg items
*
* @enable_wps - to enable wps
* @wps_state - current wps state
* @wps_version - wps version
* @wps_cfg_method - wps config method
* @wps_primary_device_category - wps primary device category
* @wps_primary_device_oui - primary device OUI
* @wps_device_sub_category - device sub category
* @wps_device_password_id - password id of device
*/
struct wlan_mlme_wps_params {
uint8_t enable_wps;
uint8_t wps_state;
uint8_t wps_version;
uint32_t wps_cfg_method;
uint32_t wps_primary_device_category;
uint32_t wps_primary_device_oui;
uint16_t wps_device_sub_category;
uint32_t wps_device_password_id;
};
/**
* struct wlan_mlme_ - HT Capabilities related config items
* @ht_cap_info: HT capabilities Info Structure
@@ -1213,6 +1236,7 @@ struct wlan_mlme_wep_cfg {
* @feature_flags: Feature flag config items
* @wep_params: WEP related config items
* @wmm_params: WMM related CFG & INI Items
* @wps_params: WPS related CFG itmes
*/
struct wlan_mlme_cfg {
struct wlan_mlme_chainmask chainmask_cfg;
@@ -1239,6 +1263,7 @@ struct wlan_mlme_cfg {
struct wlan_mlme_feature_flag feature_flags;
struct wlan_mlme_wep_cfg wep_params;
struct wlan_mlme_wmm_params wmm_params;
struct wlan_mlme_wps_params wps_params;
};
#endif