aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/airo_cs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/airo_cs.c')
-rw-r--r--drivers/net/wireless/airo_cs.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/drivers/net/wireless/airo_cs.c b/drivers/net/wireless/airo_cs.c
index 489ef7f3d950..adb90b679d7d 100644
--- a/drivers/net/wireless/airo_cs.c
+++ b/drivers/net/wireless/airo_cs.c
@@ -437,11 +437,8 @@ static int airo_suspend(struct pcmcia_device *p_dev)
437 dev_link_t *link = dev_to_instance(p_dev); 437 dev_link_t *link = dev_to_instance(p_dev);
438 local_info_t *local = link->priv; 438 local_info_t *local = link->priv;
439 439
440 link->state |= DEV_SUSPEND; 440 if (link->state & DEV_CONFIG)
441 if (link->state & DEV_CONFIG) {
442 netif_device_detach(local->eth_dev); 441 netif_device_detach(local->eth_dev);
443 pcmcia_release_configuration(link->handle);
444 }
445 442
446 return 0; 443 return 0;
447} 444}
@@ -451,9 +448,7 @@ static int airo_resume(struct pcmcia_device *p_dev)
451 dev_link_t *link = dev_to_instance(p_dev); 448 dev_link_t *link = dev_to_instance(p_dev);
452 local_info_t *local = link->priv; 449 local_info_t *local = link->priv;
453 450
454 link->state &= ~DEV_SUSPEND; 451 if ((link->state & DEV_CONFIG) && (link->open)) {
455 if (link->state & DEV_CONFIG) {
456 pcmcia_request_configuration(link->handle, &link->conf);
457 reset_airo_card(local->eth_dev); 452 reset_airo_card(local->eth_dev);
458 netif_device_attach(local->eth_dev); 453 netif_device_attach(local->eth_dev);
459 } 454 }