qcacmn: init mon_intr_id_lmac_map in interrupt mode
Currently mon_intr_id_lmac_map is set only in poll mode Which is only in Global Monitor mode. In case of dynamic switch from STA to Monitor Mode This can cause issue while removing monitor mode Initialize mon_intr_id_lmac_map in interrupt mode also and add sanity check for mon_intr_id_lmac_map value in monitor ring flush. Change-Id: Ic7dae948078661e376541b30aa70e4e12ca9d24f CRs-Fixed: 3037952
This commit is contained in:

committed by
Madan Koyyalamudi

parent
8e18b21f89
commit
cfa44c7843
@@ -2972,6 +2972,7 @@ static QDF_STATUS dp_soc_interrupt_attach(struct cdp_soc_t *txrx_soc)
|
||||
int i = 0;
|
||||
int num_irq = 0;
|
||||
int rx_err_ring_intr_ctxt_id = HIF_MAX_GROUP;
|
||||
int lmac_id = 0;
|
||||
|
||||
qdf_mem_set(&soc->mon_intr_id_lmac_map,
|
||||
sizeof(soc->mon_intr_id_lmac_map), DP_MON_INVALID_LMAC_ID);
|
||||
@@ -3062,6 +3063,11 @@ static QDF_STATUS dp_soc_interrupt_attach(struct cdp_soc_t *txrx_soc)
|
||||
|
||||
if (rx_err_ring_mask)
|
||||
rx_err_ring_intr_ctxt_id = i;
|
||||
|
||||
if (dp_is_mon_mask_valid(soc, &soc->intr_ctx[i])) {
|
||||
soc->mon_intr_id_lmac_map[lmac_id] = i;
|
||||
lmac_id++;
|
||||
}
|
||||
}
|
||||
|
||||
hif_configure_ext_group_interrupts(soc->hif_handle);
|
||||
|
Reference in New Issue
Block a user