[PATCH RESEND 03/12] staging: wilc1000: wilc_wlan_txq_remove_from_head: add new argument dev
From: Glen Lee <hidden>
Date: 2015-10-29 03:16:06
Subsystem:
staging subsystem, the rest · Maintainers:
Greg Kroah-Hartman, Linus Torvalds
Add new argument dev and use it instead of g_linux_wlan, and pass argument dev to the function as well. Signed-off-by: Glen Lee <redacted> --- drivers/staging/wilc1000/wilc_wlan.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/drivers/staging/wilc1000/wilc_wlan.c b/drivers/staging/wilc1000/wilc_wlan.c
index 6c7cbd1..5dcc4d2 100644
--- a/drivers/staging/wilc1000/wilc_wlan.c
+++ b/drivers/staging/wilc1000/wilc_wlan.c@@ -159,13 +159,19 @@ static void wilc_wlan_txq_remove(struct txq_entry_t *tqe) } -static struct txq_entry_t *wilc_wlan_txq_remove_from_head(void) +static struct txq_entry_t * +wilc_wlan_txq_remove_from_head(struct net_device *dev) { struct txq_entry_t *tqe; wilc_wlan_dev_t *p = &g_wlan; unsigned long flags; + perInterface_wlan_t *nic; + struct wilc *wilc; - spin_lock_irqsave(&g_linux_wlan->txq_spinlock, flags); + nic = netdev_priv(dev); + wilc = nic->wilc; + + spin_lock_irqsave(&wilc->txq_spinlock, flags); if (p->txq_head) { tqe = p->txq_head; p->txq_head = tqe->next;
@@ -180,7 +186,7 @@ static struct txq_entry_t *wilc_wlan_txq_remove_from_head(void) } else { tqe = NULL; } - spin_unlock_irqrestore(&g_linux_wlan->txq_spinlock, flags); + spin_unlock_irqrestore(&wilc->txq_spinlock, flags); return tqe; }
@@ -1035,7 +1041,7 @@ int wilc_wlan_handle_txq(struct net_device *dev, u32 *pu32TxqCount) offset = 0; i = 0; do { - tqe = wilc_wlan_txq_remove_from_head(); + tqe = wilc_wlan_txq_remove_from_head(dev); if (tqe != NULL && (vmm_table[i] != 0)) { u32 header, buffer_offset;
@@ -1668,7 +1674,7 @@ void wilc_wlan_cleanup(struct net_device *dev) p->quit = 1; do { - tqe = wilc_wlan_txq_remove_from_head(); + tqe = wilc_wlan_txq_remove_from_head(dev); if (tqe == NULL) break; if (tqe->tx_complete_func)
--
1.9.1