qcacld-3.0: Add MLME CFG items and APIs

Add the basic infra for MLME CFG items and the APIs to be used from
other components.

Change-Id: I39654de8f7266089d574b85437a19e8d21f91249
CRs-Fixed: 2293825
这个提交包含在:
Vignesh Viswanathan
2018-05-24 15:53:58 +05:30
提交者 nshrivas
父节点 2455337736
当前提交 21c58cb8c3
修改 29 个文件,包含 782 行新增351 行删除

查看文件

@@ -0,0 +1,74 @@
/*
* Copyright (c) 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: define internal APIs related to the mlme component
*/
#include "cfg_ucfg_api.h"
#include "wlan_mlme_main.h"
#include "wlan_mlme_ucfg_api.h"
QDF_STATUS mlme_psoc_open(struct wlan_objmgr_psoc *psoc)
{
QDF_STATUS status;
status = mlme_cfg_on_psoc_enable(psoc);
if (!QDF_IS_STATUS_SUCCESS(status))
mlme_err("Failed to initialize MLME CFG");
return status;
}
void mlme_psoc_close(struct wlan_objmgr_psoc *psoc)
{
/* Clear the MLME CFG Structure */
}
QDF_STATUS wlan_mlme_get_ht_cap_info(struct wlan_objmgr_psoc *psoc,
struct mlme_ht_capabilities_info
*ht_cap_info)
{
struct wlan_mlme_psoc_obj *mlme_obj;
mlme_obj = mlme_get_psoc_obj(psoc);
if (!mlme_obj) {
mlme_err("Failed to get MLME Obj");
return QDF_STATUS_E_FAILURE;
}
*ht_cap_info = mlme_obj->cfg.ht_caps.ht_cap_info;
return QDF_STATUS_SUCCESS;
}
QDF_STATUS wlan_mlme_set_ht_cap_info(struct wlan_objmgr_psoc *psoc,
struct mlme_ht_capabilities_info
ht_cap_info)
{
struct wlan_mlme_psoc_obj *mlme_obj;
mlme_obj = mlme_get_psoc_obj(psoc);
if (!mlme_obj) {
mlme_err("Failed to get MLME Obj");
return QDF_STATUS_E_FAILURE;
}
mlme_obj->cfg.ht_caps.ht_cap_info = ht_cap_info;
return QDF_STATUS_SUCCESS;
}