diff options
Diffstat (limited to 'drivers/pcmcia/pcmcia_resource.c')
-rw-r--r-- | drivers/pcmcia/pcmcia_resource.c | 13 |
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 | |||
942 | EXPORT_SYMBOL(pcmcia_request_window); | 942 | EXPORT_SYMBOL(pcmcia_request_window); |
943 | 943 | ||
944 | void pcmcia_disable_device(struct pcmcia_device *p_dev) { | 944 | void 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 | } |
956 | EXPORT_SYMBOL(pcmcia_disable_device); | 953 | EXPORT_SYMBOL(pcmcia_disable_device); |