[PATCH] cr_bllcd: use platform_device_register_simple()

From: Akinobu Mita
Date: Sun Sep 21 2008 - 10:39:45 EST


This change also fixes error handling when platform_device_alloc() fails.
(When platform_device_alloc() failed, it returns error without
unregistering cr_backlight_driver)

Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
Cc: Thomas Hellstrom <thomas@xxxxxxxxxxxxxxxxxxxx>
Cc: Alan Hourihane <alanh@xxxxxxxxxxxxxxxxxxxx>
Cc: Richard Purdie <rpurdie@xxxxxxxxx>
---
drivers/video/backlight/cr_bllcd.c | 20 ++++++++------------
1 file changed, 8 insertions(+), 12 deletions(-)

Index: 2.6-git/drivers/video/backlight/cr_bllcd.c
===================================================================
--- 2.6-git.orig/drivers/video/backlight/cr_bllcd.c
+++ 2.6-git/drivers/video/backlight/cr_bllcd.c
@@ -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;
-
- ret = platform_device_add(crp);
-
- if (ret) {
- platform_device_put(crp);
- platform_driver_unregister(&cr_backlight_driver);
- }
+ if (ret)
+ return ret;
+
+ 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)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/