diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index e9f7e11ea0..be6d2f7051 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -6573,6 +6573,13 @@ static void dp_flush_monitor_rings(struct dp_soc *soc) int budget; void *mon_dst_srng; + /* Reset monitor filters before reaping the ring*/ + qdf_spin_lock_bh(&pdev->mon_lock); + dp_mon_filter_reset_mon_mode(pdev); + if (dp_mon_filter_update(pdev) != QDF_STATUS_SUCCESS) + dp_info("failed to reset monitor filters"); + qdf_spin_unlock_bh(&pdev->mon_lock); + if (pdev->mon_chan_band == REG_BAND_UNKNOWN) return;