qcacmn: Cleanup duplicate fields in vdev_mlme

Add change to cleanup duplicate fields of
of vdev_mlme, which are also in mlme_channel_param
and their dependencies while updating
vdev_start_param. Cleanup unused mlme_cfg_ids.

Change-Id: Ie32971283a337f04692c0c0bc7f41fff75c090c3
CRs-Fixed: 2407953
This commit is contained in:
Naga
2019-03-27 12:37:39 +05:30
committed by nshrivas
parent cc43b53e87
commit 9dad9767b1
7 changed files with 40 additions and 39 deletions

View File

@@ -261,6 +261,8 @@ struct wlan_vdev_create_params {
* @ch_maxpower: Maximum tx power in dBm.
* @ch_freq_seg1: Channel Center frequeny for VHT80/160 and HE80/160.
* @ch_freq_seg2: Second channel Center frequency applicable for 80+80MHz mode.
* @ch_cfreq1: channel center frequency for primary
* @ch_cfreq2: channel center frequency for secondary
* @ch_width: Channel width.
* @ch_phymode: Channel phymode.
*/
@@ -272,6 +274,8 @@ struct wlan_channel {
int8_t ch_maxpower;
uint8_t ch_freq_seg1;
uint8_t ch_freq_seg2;
uint32_t ch_cfreq1;
uint32_t ch_cfreq2;
enum phy_ch_width ch_width;
enum wlan_phymode ch_phymode;
};

View File

@@ -510,6 +510,17 @@ static inline bool utils_is_dfs_ch(struct wlan_objmgr_pdev *pdev, uint32_t chan)
{
return wlan_reg_is_dfs_ch(pdev, chan);
}
/**
* utils_is_dfs_cfreq2_ch() - is channel dfs cfreq2.
* @pdev: pdev handler.
*
* is channel dfs.
*
* Return: True if channel dfs cfreq2, else false.
*/
bool utils_is_dfs_cfreq2_ch(struct wlan_objmgr_pdev *pdev);
/**
* utils_dfs_reg_update_nol_ch() - set nol channel
*

View File

@@ -1183,4 +1183,17 @@ QDF_STATUS utils_dfs_get_disable_radar_marking(struct wlan_objmgr_pdev *pdev,
}
qdf_export_symbol(utils_dfs_get_disable_radar_marking);
bool utils_is_dfs_cfreq2_ch(struct wlan_objmgr_pdev *pdev)
{
struct wlan_dfs *dfs;
dfs = wlan_pdev_get_dfs_obj(pdev);
if (!dfs)
return false;
return WLAN_IS_CHAN_DFS_CFREQ2(dfs->dfs_curchan);
}
qdf_export_symbol(utils_is_dfs_cfreq2_ch);
#endif

View File

@@ -118,7 +118,6 @@ struct vdev_mlme_proto_bss_color {
* @implicit_bf: Implicit BF support
* @sounding_dimension: Beamformer number of sounding dimension
* @bfee_sts_cap: beam formee STA capability
* @en_2gvht: 256 qam status
* @allow_vht: vht capability status
*/
struct vdev_mlme_vht_info {
@@ -130,7 +129,6 @@ struct vdev_mlme_vht_info {
uint8_t implicit_bf;
uint8_t sounding_dimension;
uint8_t bfee_sts_cap;
uint8_t en_2gvht;
bool allow_vht;
};
@@ -186,6 +184,7 @@ struct vdev_mlme_proto {
* @maxpower: Max power
* @maxregpower: max regulatory power
* @antennamax: max antenna
* @reg_class_id: reg domain class id
* @ampdu: ampdu limit
* @amsdu: amsdu limit
* @ssid: service set identifier
@@ -195,18 +194,8 @@ struct vdev_mlme_proto {
* @rx_decap_type: rx decap type
* @tx_decap_type: tx decap type
* @disable_hw_ack: disable ha ack flag
* @chan_flags: channel flags
* @chan_flags_ext: extended channel flags
* @cfreq0: channel frequency index0
* @cfreq1: channel frequency index1
* @dfs_set: DFS status flag
* @dfs_set_cfreq2: DFS status channel index
* @is_chan_passive: channel passive indication flag
* @reg_class_id: reg domain class id
* @is_11ax_stub_enabled: 11AX stub status indication flag
* @nss_2g: 2G spatial streams
* @nss_5g: 5G spatial streams
* @bssid: bssid
* @phy_mode: phy mode
*/
struct vdev_mlme_mgmt_generic {
uint32_t rts_threshold;
@@ -220,6 +209,7 @@ struct vdev_mlme_mgmt_generic {
uint8_t maxpower;
uint8_t maxregpower;
uint8_t antennamax;
uint8_t reg_class_id;
uint8_t ampdu;
uint8_t amsdu;
char ssid[WLAN_SSID_MAX_LEN + 1];
@@ -229,17 +219,6 @@ struct vdev_mlme_mgmt_generic {
uint8_t rx_decap_type;
uint8_t tx_decap_type;
bool disable_hw_ack;
uint64_t chan_flags;
uint16_t chan_flags_ext;
uint32_t cfreq1;
uint32_t cfreq2;
bool dfs_set;
bool dfs_set_cfreq2;
bool is_chan_passive;
uint8_t reg_class_id;
uint8_t is_11ax_stub_enabled;
uint8_t nss_2g;
uint8_t nss_5g;
uint8_t bssid[QDF_MAC_ADDR_SIZE];
uint32_t phy_mode;
};

View File

@@ -32,6 +32,7 @@
#include <wlan_lmac_if_api.h>
#include <wlan_reg_services_api.h>
#include <wlan_dfs_tgt_api.h>
#include <wlan_dfs_utils_api.h>
#include <wlan_vdev_mgr_ucfg_api.h>
static QDF_STATUS vdev_mgr_create_param_update(
@@ -57,8 +58,8 @@ static QDF_STATUS vdev_mgr_create_param_update(
mbss = &mlme_obj->mgmt.mbss_11ax;
param->pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
param->vdev_id = wlan_vdev_get_id(vdev);
param->nss_2g = mlme_obj->mgmt.generic.nss_2g;
param->nss_5g = mlme_obj->mgmt.generic.nss_5g;
param->nss_2g = mlme_obj->proto.generic.nss_2g;
param->nss_5g = mlme_obj->proto.generic.nss_5g;
param->type = mlme_obj->mgmt.generic.type;
param->subtype = mlme_obj->mgmt.generic.subtype;
param->mbssid_flags = mbss->mbssid_flags;
@@ -143,15 +144,15 @@ static QDF_STATUS vdev_mgr_start_param_update(
param->channel.mhz = des_chan->ch_freq;
param->channel.half_rate = mlme_obj->mgmt.rate_info.half_rate;
param->channel.quarter_rate = mlme_obj->mgmt.rate_info.quarter_rate;
param->channel.dfs_set = mlme_obj->mgmt.generic.dfs_set;
param->channel.dfs_set_cfreq2 = mlme_obj->mgmt.generic.dfs_set_cfreq2;
param->channel.dfs_set = utils_is_dfs_ch(pdev, param->channel.chan_id);
param->channel.dfs_set_cfreq2 = utils_is_dfs_cfreq2_ch(pdev);
param->channel.is_chan_passive =
mlme_obj->mgmt.generic.is_chan_passive;
utils_is_dfs_ch(pdev, param->channel.chan_id);
param->channel.allow_ht = mlme_obj->proto.ht_info.allow_ht;
param->channel.allow_vht = mlme_obj->proto.vht_info.allow_vht;
param->channel.phy_mode = mlme_obj->mgmt.generic.phy_mode;
param->channel.cfreq1 = mlme_obj->mgmt.generic.cfreq1;
param->channel.cfreq2 = mlme_obj->mgmt.generic.cfreq2;
param->channel.cfreq1 = des_chan->ch_cfreq1;
param->channel.cfreq2 = des_chan->ch_cfreq2;
param->channel.maxpower = mlme_obj->mgmt.generic.maxpower;
param->channel.minpower = mlme_obj->mgmt.generic.minpower;
param->channel.maxregpower = mlme_obj->mgmt.generic.maxregpower;

View File

@@ -100,8 +100,7 @@ enum wlan_mlme_cfg_id {
WLAN_MLME_CFG_RATEMASK_LOWER32_2,
WLAN_MLME_CFG_BCN_TX_RATE,
WLAN_MLME_CFG_BCN_TX_RATE_CODE,
WLAN_MLME_CFG_2G_VHT,
WLAN_MLME_CFG_11AX_STUB,
WLAN_MLME_CFG_RATEMASK_CAPS,
WLAN_MLME_CFG_MAX
};

View File

@@ -511,12 +511,6 @@ void wlan_util_vdev_mlme_get_param(struct vdev_mlme_obj *vdev_mlme,
case WLAN_MLME_CFG_BCN_TX_RATE:
*value = mlme_mgmt->rate_info.bcn_tx_rate;
break;
case WLAN_MLME_CFG_2G_VHT:
*value = mlme_proto->vht_info.en_2gvht;
break;
case WLAN_MLME_CFG_11AX_STUB:
*value = mlme_mgmt->generic.is_11ax_stub_enabled;
break;
default:
break;
}