aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia/pxa2xx_base.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pcmcia/pxa2xx_base.c')
-rw-r--r--drivers/pcmcia/pxa2xx_base.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/pcmcia/pxa2xx_base.c b/drivers/pcmcia/pxa2xx_base.c
index 0e35acb1366b..8a91106056fc 100644
--- a/drivers/pcmcia/pxa2xx_base.c
+++ b/drivers/pcmcia/pxa2xx_base.c
@@ -297,7 +297,16 @@ static int pxa2xx_drv_pcmcia_probe(struct platform_device *dev)
297 297
298static int pxa2xx_drv_pcmcia_remove(struct platform_device *dev) 298static int pxa2xx_drv_pcmcia_remove(struct platform_device *dev)
299{ 299{
300 return soc_common_drv_pcmcia_remove(&dev->dev); 300 struct skt_dev_info *sinfo = platform_get_drvdata(dev);
301 int i;
302
303 platform_set_drvdata(dev, NULL);
304
305 for (i = 0; i < sinfo->nskt; i++)
306 soc_pcmcia_remove_one(&sinfo->skt[i]);
307
308 kfree(sinfo);
309 return 0;
301} 310}
302 311
303static int pxa2xx_drv_pcmcia_suspend(struct device *dev) 312static int pxa2xx_drv_pcmcia_suspend(struct device *dev)