qcacmn: qcacmn: Add Monitor 1.0 support for WCN6450
Currently in monitor mode, links are released to WBM through the SW2WBM_RELEASE ring and WBM will feed the links back to RXDMA through the WBM2RXDMA_LINK_RING. WCN6450 uses SOFTUMAC architecture where WBM is not present. Hence the WBM2RXDMA_LINK_RING is repurposed to SW2RXDMA_LINK_RING where host will directly release the links to RXDMA using this ring. Change-Id: I110f607e38c4c2ab10eb1bd7b1f5a7bce2f03692 CRs-Fixed: 3493368
This commit is contained in:

committed by
Rahul Choudhary

parent
748fe0b6d7
commit
39ed82e609
@@ -26,6 +26,23 @@
|
||||
#include <dp_mon.h>
|
||||
#endif
|
||||
|
||||
#ifdef WLAN_FEATURE_DP_EVENT_HISTORY
|
||||
static inline bool dp_is_mon_mask_valid(struct dp_soc *soc,
|
||||
struct dp_intr *intr_ctx)
|
||||
{
|
||||
if (intr_ctx->rx_mon_ring_mask)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
#else
|
||||
static inline bool dp_is_mon_mask_valid(struct dp_soc *soc,
|
||||
struct dp_intr *intr_ctx)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef QCA_HOST_MODE_WIFI_DISABLED
|
||||
|
||||
/**
|
||||
@@ -651,11 +668,24 @@ static inline QDF_STATUS dp_soc_srng_alloc(struct dp_soc *soc)
|
||||
static inline QDF_STATUS dp_soc_attach_poll(struct cdp_soc_t *txrx_soc)
|
||||
{
|
||||
struct dp_soc *soc = (struct dp_soc *)txrx_soc;
|
||||
uint32_t lmac_id = 0;
|
||||
int i;
|
||||
|
||||
qdf_mem_set(&soc->mon_intr_id_lmac_map,
|
||||
sizeof(soc->mon_intr_id_lmac_map), DP_MON_INVALID_LMAC_ID);
|
||||
soc->intr_mode = DP_INTR_POLL;
|
||||
|
||||
for (i = 0; i < wlan_cfg_get_num_contexts(soc->wlan_cfg_ctx); i++) {
|
||||
soc->intr_ctx[i].rx_mon_ring_mask =
|
||||
wlan_cfg_get_rx_mon_ring_mask(soc->wlan_cfg_ctx, i);
|
||||
|
||||
if (dp_is_mon_mask_valid(soc, &soc->intr_ctx[i])) {
|
||||
hif_event_history_init(soc->hif_handle, i);
|
||||
soc->mon_intr_id_lmac_map[lmac_id] = i;
|
||||
lmac_id++;
|
||||
}
|
||||
}
|
||||
|
||||
qdf_timer_init(soc->osdev, &soc->int_timer,
|
||||
dp_interrupt_timer, (void *)soc,
|
||||
QDF_TIMER_TYPE_WAKE_APPS);
|
||||
|
Reference in New Issue
Block a user