static void brcms_ops_flush(struct ieee80211_hw *hw, bool drop) { struct brcms_info *wl = hw->priv; no_printk("%s: drop = %s\n", __func__, drop ? "true" : "false"); /* wait for packet queue and dma fifos to run empty */ spin_lock_bh(&wl->lock); brcms_c_wait_for_tx_completion(wl->wlc, drop); spin_unlock_bh(&wl->lock); }
static void wl_ops_flush(struct ieee80211_hw *hw, bool drop) { struct wl_info *wl = HW_TO_WL(hw); no_printk("%s: drop = %s\n", __func__, drop ? "true" : "false"); /* wait for packet queue and dma fifos to run empty */ WL_LOCK(wl); wlc_wait_for_tx_completion(wl->wlc, drop); WL_UNLOCK(wl); }
static void brcms_ops_flush(struct ieee80211_hw *hw, u32 queues, bool drop) { struct brcms_info *wl = hw->priv; int ret; no_printk("%s: drop = %s\n", __func__, drop ? "true" : "false"); ret = wait_event_timeout(wl->tx_flush_wq, brcms_tx_flush_completed(wl), msecs_to_jiffies(BRCMS_FLUSH_TIMEOUT)); brcms_dbg_mac80211(wl->wlc->hw->d11core, "ret=%d\n", jiffies_to_msecs(ret)); }