qcacmn: changes to support lithium nss offload

Changes include
1. nss_cfg parameter to dp_soc.
2. nss_enabled field for pdev.
3. cdp api to enabled nss offload config.
4. skip rx ring configuration when nss enabled.
5. skip timter /interrupt configuration if
   nss is enabled.
6. peer map/unmap event hander.

Change-Id: Ic4a919b6b7e846e18cb15ebcb94f8736a751ecb5
This commit is contained in:
Bharat Kumar M
2017-05-08 17:41:42 +05:30
committed by snandini
parent 9e22d3d99e
commit 9a5d537249
7 changed files with 136 additions and 10 deletions

View File

@@ -157,6 +157,7 @@ struct wlan_cfg_dp_soc_ctxt {
int int_ce_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
bool lro_enabled;
bool rx_hash;
int nss_cfg;
};
/**
@@ -172,6 +173,7 @@ struct wlan_cfg_dp_pdev_ctxt {
int dma_mon_dest_ring_size;
int dma_mon_status_ring_size;
int num_mac_rings;
int nss_enabled;
};
/**
@@ -396,3 +398,23 @@ bool wlan_cfg_is_rx_hash_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->rx_hash;
}
int wlan_cfg_get_dp_pdev_nss_enabled(struct wlan_cfg_dp_pdev_ctxt *cfg)
{
return cfg->nss_enabled;
}
void wlan_cfg_set_dp_pdev_nss_enabled(struct wlan_cfg_dp_pdev_ctxt *cfg, int nss_enabled)
{
cfg->nss_enabled = nss_enabled;
}
int wlan_cfg_get_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->nss_cfg;
}
void wlan_cfg_set_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt *cfg, int nss_cfg)
{
cfg->nss_cfg = nss_cfg;
}