Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 16e711f9 authored by Kalle Valo's avatar Kalle Valo Committed by John W. Linville
Browse files

wl1251: use workqueue provided by mac80211



wl1251 should use workqueue created by mac80211 to not block the events
workqueue too long.

Signed-off-by: default avatarKalle Valo <kalle.valo@nokia.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 4a818922
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -375,7 +375,7 @@ static int wl1251_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
	 * before that, the tx_work will not be initialized!
	 */

	schedule_work(&wl->tx_work);
	ieee80211_queue_work(wl->hw, &wl->tx_work);

	/*
	 * The workqueue is slow to process the tx_queue and we need stop
+1 −1
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ static void wl1251_sdio_interrupt(struct sdio_func *func)
	wl1251_debug(DEBUG_IRQ, "IRQ");

	/* FIXME should be synchronous for sdio */
	schedule_work(&wl->irq_work);
	ieee80211_queue_work(wl->hw, &wl->irq_work);
}

static const struct sdio_device_id wl1251_devices[] = {
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ static irqreturn_t wl1251_irq(int irq, void *cookie)

	wl = cookie;

	schedule_work(&wl->irq_work);
	ieee80211_queue_work(wl->hw, &wl->irq_work);

	return IRQ_HANDLED;
}