]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/pcmcia/au1000_generic.c
Merge branch 'master'
[linux-2.6-omap-h63xx.git] / drivers / pcmcia / au1000_generic.c
index 470ef756252eb23067323fb8f8d354f553050cf9..87302c548c24d437fa0722a01d2d832c7a7bdf38 100644 (file)
@@ -42,7 +42,7 @@
 #include <linux/notifier.h>
 #include <linux/interrupt.h>
 #include <linux/spinlock.h>
-#include <linux/device.h>
+#include <linux/platform_device.h>
 
 #include <asm/io.h>
 #include <asm/irq.h>
@@ -490,7 +490,7 @@ int au1x00_drv_pcmcia_remove(struct device *dev)
                flush_scheduled_work();
                skt->ops->hw_shutdown(skt);
                au1x00_pcmcia_config_skt(skt, &dead_socket);
-               iounmap(skt->virt_io);
+               iounmap(skt->virt_io + (u32)mips_io_port_base);
                skt->virt_io = NULL;
        }
 
@@ -519,36 +519,15 @@ static int au1x00_drv_pcmcia_probe(struct device *dev)
 }
 
 
-static int au1x00_drv_pcmcia_suspend(struct device *dev, pm_message_t state, u32 level)
-{
-       int ret = 0;
-       if (level == SUSPEND_SAVE_STATE)
-               ret = pcmcia_socket_dev_suspend(dev, state);
-       return ret;
-}
-
-static int au1x00_drv_pcmcia_resume(struct device *dev, u32 level)
-{
-       int ret = 0;
-       if (level == RESUME_RESTORE_STATE)
-               ret = pcmcia_socket_dev_resume(dev);
-       return ret;
-}
-
-
 static struct device_driver au1x00_pcmcia_driver = {
        .probe          = au1x00_drv_pcmcia_probe,
        .remove         = au1x00_drv_pcmcia_remove,
        .name           = "au1x00-pcmcia",
        .bus            = &platform_bus_type,
-       .suspend        = au1x00_drv_pcmcia_suspend,
-       .resume         = au1x00_drv_pcmcia_resume
+       .suspend        = pcmcia_socket_dev_suspend,
+       .resume         = pcmcia_socket_dev_resume,
 };
 
-static struct platform_device au1x00_device = {
-       .name = "au1x00-pcmcia",
-       .id = 0,
-};
 
 /* au1x00_pcmcia_init()
  *
@@ -562,7 +541,6 @@ static int __init au1x00_pcmcia_init(void)
        int error = 0;
        if ((error = driver_register(&au1x00_pcmcia_driver)))
                return error;
-       platform_device_register(&au1x00_device);
        return error;
 }
 
@@ -573,7 +551,6 @@ static int __init au1x00_pcmcia_init(void)
 static void __exit au1x00_pcmcia_exit(void)
 {
        driver_unregister(&au1x00_pcmcia_driver);
-       platform_device_unregister(&au1x00_device);
 }
 
 module_init(au1x00_pcmcia_init);