As done with the other comedi driver types, register the
comedi_driver first then the pcmcia_driver. Also, make sure
the pcmcia_driver registration succeeds and unregister the
comedi_driver if it fails.

Signed-off-by: H Hartley Sweeten <[email protected]>
Cc: Ian Abbott <[email protected]>
Cc: Frank Mori Hess <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
---
 drivers/staging/comedi/drivers/das08_cs.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/comedi/drivers/das08_cs.c 
b/drivers/staging/comedi/drivers/das08_cs.c
index 14dfc81..493078a 100644
--- a/drivers/staging/comedi/drivers/das08_cs.c
+++ b/drivers/staging/comedi/drivers/das08_cs.c
@@ -239,11 +239,18 @@ static int __init das08_cs_init_module(void)
 {
        int ret;
 
-       ret = pcmcia_register_driver(&das08_cs_driver);
+       ret = comedi_driver_register(&driver_das08_cs);
        if (ret < 0)
                return ret;
 
-       return comedi_driver_register(&driver_das08_cs);
+       ret = pcmcia_register_driver(&das08_cs_driver);
+       if (ret < 0) {
+               comedi_driver_unregister(&driver_das08_cs);
+               return ret;
+       }
+
+       return 0;
+
 }
 module_init(das08_cs_init_module);
 
-- 
1.7.11

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to