.notifier_call = dev_state_ev_handler
};
-#define wilc_wlan_deinit(nic) { if (&g_linux_wlan->oup != NULL) \
- if (g_linux_wlan->oup.wlan_cleanup != NULL) \
- g_linux_wlan->oup.wlan_cleanup(); }
-
#define IRQ_WAIT 1
#define IRQ_NO_WAIT 0
/*
wilc_wlan_stop();
PRINT_D(INIT_DBG, "Deinitializing WILC Wlan\n");
- wilc_wlan_deinit(nic);
+ wilc_wlan_cleanup();
#if (defined WILC_SDIO) && (!defined WILC_SDIO_IRQ_GPIO)
#if defined(PLAT_ALLWINNER_A20) || defined(PLAT_ALLWINNER_A23) || defined(PLAT_ALLWINNER_A31)
PRINT_D(INIT_DBG, "Disabling IRQ 2\n");
while ((core_11b_ready() && (READY_CHECK_THRESHOLD > (trials++)))) {
PRINT_D(INIT_DBG, "11b core not ready yet: %u\n", trials);
- wilc_wlan_deinit(nic);
+ wilc_wlan_cleanup();
wilc_wlan_global_reset();
sdio_unregister_driver(&wilc_bus);
_fail_threads_:
wlan_deinitialize_threads(g_linux_wlan);
_fail_wilc_wlan_:
- wilc_wlan_deinit(g_linux_wlan);
+ wilc_wlan_cleanup();
_fail_locks_:
wlan_deinit_locks(g_linux_wlan);
PRINT_ER("WLAN Iinitialization FAILED\n");
return ret;
}
-static void wilc_wlan_cleanup(void)
+void wilc_wlan_cleanup(void)
{
wilc_wlan_dev_t *p = (wilc_wlan_dev_t *)&g_wlan;
struct txq_entry_t *tqe;
/**
* export functions
**/
- oup->wlan_cleanup = wilc_wlan_cleanup;
oup->wlan_cfg_set = wilc_wlan_cfg_set;
oup->wlan_cfg_get = wilc_wlan_cfg_get;
oup->wlan_cfg_get_value = wilc_wlan_cfg_get_val;
#define WILC_TX_ERR_NO_BUF (-2)
typedef struct {
- void (*wlan_cleanup)(void);
int (*wlan_cfg_set)(int, u32, u8 *, u32, int, u32);
int (*wlan_cfg_get)(int, u32, int, u32);
int (*wlan_cfg_get_value)(u32, u8 *, u32);