qcacld-3.0: Add support to get feature set info

Based on the new requirement, add support to get requested
feature set info from different feature components.

Change-Id: I1bfc097c8ae8c4ab678d4dc07b7932cf3272d851
CRs-Fixed: 3262868
This commit is contained in:
Ashish Kumar Dhanotiya
2022-07-26 15:07:58 +05:30
committed by Madan Koyyalamudi
父節點 7034ffe097
當前提交 2490a83a25
共有 14 個文件被更改,包括 628 次插入0 次删除

查看文件

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2020, The Linux Foundation. All rights reserved.
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. 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
@@ -25,6 +26,20 @@
#include "wlan_objmgr_vdev_obj.h"
#ifdef FEATURE_WLAN_TDLS
#ifdef FEATURE_SET
/**
* wlan_tdls_get_features_info() - Get tdls features info
* @psoc: psoc context
* @tdls_feature_set: TDLS feature set info structure
*
* Return: None
*/
void wlan_tdls_get_features_info(struct wlan_objmgr_psoc *psoc,
struct wlan_tdls_features *tdls_feature_set);
#endif
/**
* wlan_tdls_teardown_links() - notify TDLS module to teardown all TDLS links
* @psoc: psoc object

查看文件

@@ -1400,4 +1400,19 @@ struct tdls_link_teardown {
struct wlan_objmgr_psoc *psoc;
};
#ifdef FEATURE_SET
/**
* struct wlan_tdls_features - TDLS feature set struct
* @enable_tdls: enable/disable tdls
* @enable_tdls_offchannel: enable/disable tdls offchannel
* @max_tdls_peers: Max tdls Peers
* @enable_tdls_capability_enhance: enable tdls capability enhance
*/
struct wlan_tdls_features {
bool enable_tdls;
bool enable_tdls_offchannel;
bool max_tdls_peers;
bool enable_tdls_capability_enhance;
};
#endif
#endif

查看文件

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2020, The Linux Foundation. All rights reserved.
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. 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
@@ -27,6 +28,7 @@
#include "../../core/src/wlan_tdls_mgmt.h"
#include <wlan_objmgr_global_obj.h>
#include <wlan_objmgr_cmn.h>
#include "wlan_tdls_cfg_api.h"
static QDF_STATUS tdls_teardown_flush_cb(struct scheduler_msg *msg)
{
@@ -251,3 +253,18 @@ wlan_tdls_notify_sta_connect(uint8_t session_id,
tdls_notify_connect(&notify_info);
}
#ifdef FEATURE_SET
void wlan_tdls_get_features_info(struct wlan_objmgr_psoc *psoc,
struct wlan_tdls_features *tdls_feature_set)
{
cfg_tdls_get_support_enable(psoc, &tdls_feature_set->enable_tdls);
if (tdls_feature_set->enable_tdls) {
cfg_tdls_get_off_channel_enable(
psoc,
&tdls_feature_set->enable_tdls_offchannel);
tdls_feature_set->max_tdls_peers =
cfg_tdls_get_max_peer_count(psoc);
tdls_feature_set->enable_tdls_capability_enhance = true;
}
}
#endif