aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/pcmcia/pcnet_cs.c
diff options
context:
space:
mode:
authorDominik Brodowski <linux@dominikbrodowski.net>2006-01-15 03:32:39 -0500
committerDominik Brodowski <linux@dominikbrodowski.net>2006-03-31 10:15:50 -0500
commit5f2a71fcb7995633b335a1e380ac63a968e61320 (patch)
treed47f4227d314fc9f298b75c217fa78440004e6e7 /drivers/net/pcmcia/pcnet_cs.c
parent1de9cedfbdff1d8adb662cd3afc5bda66e393351 (diff)
[PATCH] pcmcia: add pcmcia_disable_device
pcmcia_disable_device(struct pcmcia_device *p_dev) performs the necessary cleanups upon device or driver removal: it calls the appropriate pcmcia_release_* functions, and can replace (most) of the current drivers' _release() functions. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'drivers/net/pcmcia/pcnet_cs.c')
-rw-r--r--drivers/net/pcmcia/pcnet_cs.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/drivers/net/pcmcia/pcnet_cs.c b/drivers/net/pcmcia/pcnet_cs.c
index b46e5f703efa..52f44bdff1f7 100644
--- a/drivers/net/pcmcia/pcnet_cs.c
+++ b/drivers/net/pcmcia/pcnet_cs.c
@@ -732,19 +732,14 @@ failed:
732 732
733static void pcnet_release(dev_link_t *link) 733static void pcnet_release(dev_link_t *link)
734{ 734{
735 pcnet_dev_t *info = PRIV(link->priv); 735 pcnet_dev_t *info = PRIV(link->priv);
736 736
737 DEBUG(0, "pcnet_release(0x%p)\n", link); 737 DEBUG(0, "pcnet_release(0x%p)\n", link);
738 738
739 if (info->flags & USE_SHMEM) { 739 if (info->flags & USE_SHMEM)
740 iounmap(info->base); 740 iounmap(info->base);
741 pcmcia_release_window(link->win);
742 }
743 pcmcia_release_configuration(link->handle);
744 pcmcia_release_io(link->handle, &link->io);
745 pcmcia_release_irq(link->handle, &link->irq);
746 741
747 link->state &= ~DEV_CONFIG; 742 pcmcia_disable_device(link->handle);
748} 743}
749 744
750/*====================================================================== 745/*======================================================================