wl1271: use workqueue provided by mac80211 instead of the default

Use the workqueue provided by the mac80211 stack instead of the system
default queue.

Modified to use new ieee_queue_work() as required by changes in the
stack.

Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com>
Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Juuso Oikarinen 2009-10-08 21:56:29 +03:00 коммит произвёл John W. Linville
Родитель 64a7f67287
Коммит a64b07e8c6
1 изменённых файлов: 3 добавлений и 3 удалений

Просмотреть файл

@ -107,7 +107,7 @@ static void wl1271_fw_status(struct wl1271 *wl, struct wl1271_fw_status *status)
/* if more blocks are available now, schedule some tx work */ /* if more blocks are available now, schedule some tx work */
if (total && !skb_queue_empty(&wl->tx_queue)) if (total && !skb_queue_empty(&wl->tx_queue))
schedule_work(&wl->tx_work); ieee80211_queue_work(wl->hw, &wl->tx_work);
/* update the host-chipset time offset */ /* update the host-chipset time offset */
wl->time_offset = jiffies_to_usecs(jiffies) - status->fw_localtime; wl->time_offset = jiffies_to_usecs(jiffies) - status->fw_localtime;
@ -205,7 +205,7 @@ static irqreturn_t wl1271_irq(int irq, void *cookie)
wl->elp_compl = NULL; wl->elp_compl = NULL;
} }
schedule_work(&wl->irq_work); ieee80211_queue_work(wl->hw, &wl->irq_work);
spin_unlock_irqrestore(&wl->wl_lock, flags); spin_unlock_irqrestore(&wl->wl_lock, flags);
return IRQ_HANDLED; return IRQ_HANDLED;
@ -480,7 +480,7 @@ static int wl1271_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
* before that, the tx_work will not be initialized! * 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 * The workqueue is slow to process the tx_queue and we need stop