]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/pcmcia/cs.c
Fix a const pointer error in the Conexant cx23418 MPEG encoder driver
[linux-2.6-omap-h63xx.git] / drivers / pcmcia / cs.c
index 56230dbd347aee88f9d6eb9fc1a32ec9642d7799..29276bd28295007212a73e89c4bc44cb6f0a0a2a 100644 (file)
@@ -652,6 +652,9 @@ static int pccardd(void *__skt)
                complete(&skt->thread_done);
                return 0;
        }
+       ret = pccard_sysfs_add_socket(&skt->dev);
+       if (ret)
+               dev_warn(&skt->dev, "err %d adding socket attributes\n", ret);
 
        add_wait_queue(&skt->thread_wait, &wait);
        complete(&skt->thread_done);
@@ -694,6 +697,7 @@ static int pccardd(void *__skt)
        remove_wait_queue(&skt->thread_wait, &wait);
 
        /* remove from the device core */
+       pccard_sysfs_remove_socket(&skt->dev);
        device_unregister(&skt->dev);
 
        return 0;
@@ -940,20 +944,13 @@ EXPORT_SYMBOL(pcmcia_socket_class);
 
 static int __init init_pcmcia_cs(void)
 {
-       int ret;
-
        init_completion(&pcmcia_unload);
-       ret = class_register(&pcmcia_socket_class);
-       if (ret)
-               return (ret);
-       return class_interface_register(&pccard_sysfs_interface);
+       return class_register(&pcmcia_socket_class);
 }
 
 static void __exit exit_pcmcia_cs(void)
 {
-       class_interface_unregister(&pccard_sysfs_interface);
        class_unregister(&pcmcia_socket_class);
-
        wait_for_completion(&pcmcia_unload);
 }