qcacld-3.0: Fill nss chain params from legacy structure
Fill the cmn nss chains structure from the mlme nss chain params structure and send to fw Change-Id: I573b0df20be31af536107f0585e7fa825dc2b6b3 CRs-Fixed: 2349823
This commit is contained in:

committed by
nshrivas

parent
651abcd134
commit
2fc3b89d0b
@@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
#include <wlan_cmn.h>
|
#include <wlan_cmn.h>
|
||||||
#include <reg_services_public_struct.h>
|
#include <reg_services_public_struct.h>
|
||||||
|
#include <wmi_unified_param.h>
|
||||||
|
|
||||||
#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)
|
||||||
@@ -1025,18 +1026,6 @@ enum dot11p_mode {
|
|||||||
CFG_11P_CONCURRENT,
|
CFG_11P_CONCURRENT,
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* enum nss_chains_band_info - Band info for dynamic nss, chains change feature
|
|
||||||
* @NSS_CHAINS_BAND_2GHZ: 2.4Ghz band
|
|
||||||
* @NSS_CHAINS_BAND_5GHZ: 5Ghz band
|
|
||||||
* @NSS_CHAINS_BAND_MAX: Max bands supported
|
|
||||||
*/
|
|
||||||
enum nss_chains_band_info {
|
|
||||||
NSS_CHAINS_BAND_2GHZ = 0,
|
|
||||||
NSS_CHAINS_BAND_5GHZ,
|
|
||||||
NSS_CHAINS_BAND_MAX,
|
|
||||||
};
|
|
||||||
|
|
||||||
#define MAX_VDEV_NSS 2
|
#define MAX_VDEV_NSS 2
|
||||||
#define MAX_VDEV_CHAINS 2
|
#define MAX_VDEV_CHAINS 2
|
||||||
|
|
||||||
|
@@ -1706,15 +1706,46 @@ wma_vdev_nss_chain_params_send(uint8_t vdev_id,
|
|||||||
struct wlan_mlme_nss_chains *user_cfg)
|
struct wlan_mlme_nss_chains *user_cfg)
|
||||||
{
|
{
|
||||||
tp_wma_handle wma_handle = cds_get_context(QDF_MODULE_ID_WMA);
|
tp_wma_handle wma_handle = cds_get_context(QDF_MODULE_ID_WMA);
|
||||||
|
struct vdev_nss_chains vdev_user_cfg;
|
||||||
if (!wma_handle) {
|
if (!wma_handle) {
|
||||||
WMA_LOGE("%s: wma_handle is NULL", __func__);
|
WMA_LOGE("%s: wma_handle is NULL", __func__);
|
||||||
return QDF_STATUS_E_FAILURE;
|
return QDF_STATUS_E_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
vdev_user_cfg.disable_rx_mrc[NSS_CHAINS_BAND_2GHZ] =
|
||||||
|
user_cfg->disable_rx_mrc[NSS_CHAINS_BAND_2GHZ];
|
||||||
|
vdev_user_cfg.disable_tx_mrc[NSS_CHAINS_BAND_2GHZ] =
|
||||||
|
user_cfg->disable_tx_mrc[NSS_CHAINS_BAND_2GHZ];
|
||||||
|
vdev_user_cfg.disable_rx_mrc[NSS_CHAINS_BAND_5GHZ] =
|
||||||
|
user_cfg->disable_rx_mrc[NSS_CHAINS_BAND_5GHZ];
|
||||||
|
vdev_user_cfg.disable_tx_mrc[NSS_CHAINS_BAND_5GHZ] =
|
||||||
|
user_cfg->disable_tx_mrc[NSS_CHAINS_BAND_5GHZ];
|
||||||
|
|
||||||
|
vdev_user_cfg.num_rx_chains[NSS_CHAINS_BAND_2GHZ]
|
||||||
|
= user_cfg->num_rx_chains[NSS_CHAINS_BAND_2GHZ];
|
||||||
|
vdev_user_cfg.num_tx_chains[NSS_CHAINS_BAND_2GHZ]
|
||||||
|
= user_cfg->num_tx_chains[NSS_CHAINS_BAND_2GHZ];
|
||||||
|
vdev_user_cfg.num_rx_chains[NSS_CHAINS_BAND_5GHZ] =
|
||||||
|
user_cfg->num_rx_chains[NSS_CHAINS_BAND_5GHZ];
|
||||||
|
vdev_user_cfg.num_tx_chains[NSS_CHAINS_BAND_5GHZ] =
|
||||||
|
user_cfg->num_tx_chains[NSS_CHAINS_BAND_5GHZ];
|
||||||
|
|
||||||
|
vdev_user_cfg.rx_nss[NSS_CHAINS_BAND_2GHZ] =
|
||||||
|
user_cfg->rx_nss[NSS_CHAINS_BAND_2GHZ];
|
||||||
|
vdev_user_cfg.tx_nss[NSS_CHAINS_BAND_2GHZ] =
|
||||||
|
user_cfg->tx_nss[NSS_CHAINS_BAND_2GHZ];
|
||||||
|
vdev_user_cfg.rx_nss[NSS_CHAINS_BAND_5GHZ] =
|
||||||
|
user_cfg->rx_nss[NSS_CHAINS_BAND_5GHZ];
|
||||||
|
vdev_user_cfg.tx_nss[NSS_CHAINS_BAND_5GHZ] =
|
||||||
|
user_cfg->tx_nss[NSS_CHAINS_BAND_5GHZ];
|
||||||
|
|
||||||
|
vdev_user_cfg.num_tx_chains_11a = user_cfg->num_tx_chains_11a;
|
||||||
|
vdev_user_cfg.num_tx_chains_11b = user_cfg->num_tx_chains_11b;
|
||||||
|
vdev_user_cfg.num_tx_chains_11g = user_cfg->num_tx_chains_11g;
|
||||||
|
|
||||||
return wmi_unified_vdev_nss_chain_params_send(wma_handle->wmi_handle,
|
return wmi_unified_vdev_nss_chain_params_send(wma_handle->wmi_handle,
|
||||||
vdev_id,
|
vdev_id,
|
||||||
user_cfg);
|
&vdev_user_cfg);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user