backlight: crbllcd_bl - Use platform_device_register_simple()
authorAkinobu Mita <akinobu.mita@gmail.com>
Mon, 17 Nov 2008 15:21:32 +0000 (15:21 +0000)
committerRichard Purdie <rpurdie@linux.intel.com>
Thu, 8 Jan 2009 12:37:28 +0000 (12:37 +0000)
Use platform_device_register_simple() and also fix error
handling when platform_device_alloc() fails (cr_backlight_driver
is left registered).

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
drivers/video/backlight/cr_bllcd.c

index 26add88..b9fe62b 100644 (file)
@@ -259,22 +259,18 @@ static int __init cr_backlight_init(void)
 {
        int ret = platform_driver_register(&cr_backlight_driver);
 
-       if (!ret) {
-               crp = platform_device_alloc("cr_backlight", -1);
-               if (!crp)
-                       return -ENOMEM;
+       if (ret)
+               return ret;
 
-               ret = platform_device_add(crp);
-
-               if (ret) {
-                       platform_device_put(crp);
-                       platform_driver_unregister(&cr_backlight_driver);
-               }
+       crp = platform_device_register_simple("cr_backlight", -1, NULL, 0);
+       if (IS_ERR(crp)) {
+               platform_driver_unregister(&cr_backlight_driver);
+               return PTR_ERR(crp);
        }
 
        printk("Carillo Ranch Backlight Driver Initialized.\n");
 
-       return ret;
+       return 0;
 }
 
 static void __exit cr_backlight_exit(void)