aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia/pcmcia_resource.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pcmcia/pcmcia_resource.c')
-rw-r--r--drivers/pcmcia/pcmcia_resource.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index ab0bbb6207b2..93ab9402d37f 100644
--- a/drivers/pcmcia/pcmcia_resource.c
+++ b/drivers/pcmcia/pcmcia_resource.c
@@ -942,15 +942,12 @@ int pcmcia_request_window(struct pcmcia_device **p_dev, win_req_t *req, window_h
942EXPORT_SYMBOL(pcmcia_request_window); 942EXPORT_SYMBOL(pcmcia_request_window);
943 943
944void pcmcia_disable_device(struct pcmcia_device *p_dev) { 944void pcmcia_disable_device(struct pcmcia_device *p_dev) {
945 if (!p_dev->instance)
946 return;
947
948 pcmcia_release_configuration(p_dev); 945 pcmcia_release_configuration(p_dev);
949 pcmcia_release_io(p_dev, &p_dev->instance->io); 946 pcmcia_release_io(p_dev, &p_dev->io);
950 pcmcia_release_irq(p_dev, &p_dev->instance->irq); 947 pcmcia_release_irq(p_dev, &p_dev->irq);
951 if (&p_dev->instance->win) 948 if (&p_dev->win)
952 pcmcia_release_window(p_dev->instance->win); 949 pcmcia_release_window(p_dev->win);
953 950
954 p_dev->instance->dev = NULL; 951 p_dev->dev_node = NULL;
955} 952}
956EXPORT_SYMBOL(pcmcia_disable_device); 953EXPORT_SYMBOL(pcmcia_disable_device);