|
@@ -649,17 +649,17 @@ static int wilc_wlan_initialize(struct net_device *dev, struct wilc_vif *vif)
|
|
|
goto fail_locks;
|
|
goto fail_locks;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (wl->gpio_irq && init_irq(dev)) {
|
|
|
|
|
- ret = -EIO;
|
|
|
|
|
- goto fail_locks;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
ret = wlan_initialize_threads(dev);
|
|
ret = wlan_initialize_threads(dev);
|
|
|
if (ret < 0) {
|
|
if (ret < 0) {
|
|
|
ret = -EIO;
|
|
ret = -EIO;
|
|
|
goto fail_wilc_wlan;
|
|
goto fail_wilc_wlan;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ if (wl->gpio_irq && init_irq(dev)) {
|
|
|
|
|
+ ret = -EIO;
|
|
|
|
|
+ goto fail_threads;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
if (!wl->dev_irq_num &&
|
|
if (!wl->dev_irq_num &&
|
|
|
wl->hif_func->enable_interrupt &&
|
|
wl->hif_func->enable_interrupt &&
|
|
|
wl->hif_func->enable_interrupt(wl)) {
|
|
wl->hif_func->enable_interrupt(wl)) {
|
|
@@ -715,7 +715,7 @@ fail_irq_enable:
|
|
|
fail_irq_init:
|
|
fail_irq_init:
|
|
|
if (wl->dev_irq_num)
|
|
if (wl->dev_irq_num)
|
|
|
deinit_irq(dev);
|
|
deinit_irq(dev);
|
|
|
-
|
|
|
|
|
|
|
+fail_threads:
|
|
|
wlan_deinitialize_threads(dev);
|
|
wlan_deinitialize_threads(dev);
|
|
|
fail_wilc_wlan:
|
|
fail_wilc_wlan:
|
|
|
wilc_wlan_cleanup(dev);
|
|
wilc_wlan_cleanup(dev);
|