From 32dd51bca67a511dc7afb5a95ee33a0f9a85f811 Mon Sep 17 00:00:00 2001 From: Glen Lee Date: Tue, 27 Oct 2015 18:27:52 +0900 Subject: [PATCH] staging: wilc1000: wlan_deinitialize_threads: change argument and use wilc This patch changes function parameter type struct wilc with struct net_device and use netdev private data member wilc instead of g_linux_wlan. Signed-off-by: Glen Lee Signed-off-by: Greg Kroah-Hartman --- drivers/staging/wilc1000/linux_wlan.c | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c index 412d5a0b20c0..b6244f93f8f5 100644 --- a/drivers/staging/wilc1000/linux_wlan.c +++ b/drivers/staging/wilc1000/linux_wlan.c @@ -96,7 +96,7 @@ static struct notifier_block g_dev_notifier = { static struct semaphore close_exit_sync; static int wlan_deinit_locks(struct net_device *dev); -static void wlan_deinitialize_threads(struct wilc *nic); +static void wlan_deinitialize_threads(struct net_device *dev); extern void WILC_WFI_monitor_rx(u8 *buff, u32 size); extern void WILC_WFI_p2p_rx(struct net_device *dev, u8 *buff, u32 size); @@ -919,7 +919,7 @@ void wilc1000_wlan_deinit(struct net_device *dev) up(&wl->txq_event); PRINT_D(INIT_DBG, "Deinitializing Threads\n"); - wlan_deinitialize_threads(wl); + wlan_deinitialize_threads(dev); PRINT_D(INIT_DBG, "Deinitializing IRQ\n"); deinit_irq(dev); @@ -1053,18 +1053,23 @@ _fail_2: return ret; } -static void wlan_deinitialize_threads(struct wilc *nic) +static void wlan_deinitialize_threads(struct net_device *dev) { + perInterface_wlan_t *nic; + struct wilc *wl; + + nic = netdev_priv(dev); + wl = nic->wilc; - g_linux_wlan->close = 1; + wl->close = 1; PRINT_D(INIT_DBG, "Deinitializing Threads\n"); - if (&g_linux_wlan->txq_event != NULL) - up(&g_linux_wlan->txq_event); + if (&wl->txq_event != NULL) + up(&wl->txq_event); - if (g_linux_wlan->txq_thread != NULL) { - kthread_stop(g_linux_wlan->txq_thread); - g_linux_wlan->txq_thread = NULL; + if (wl->txq_thread != NULL) { + kthread_stop(wl->txq_thread); + wl->txq_thread = NULL; } } @@ -1171,7 +1176,7 @@ _fail_irq_init_: deinit_irq(dev); #endif - wlan_deinitialize_threads(wl); + wlan_deinitialize_threads(dev); _fail_wilc_wlan_: wilc_wlan_cleanup(); _fail_locks_: -- 2.39.5