lkml.org 
[lkml]   [2008]   [Sep]   [21]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
DateSun, 21 Sep 2008 23:36:58 +0900
FromAkinobu Mita <>
Subject[PATCH] hp680_bl: use platform_device_register_simple()
This change also fixes error handling when platform_device_alloc() fails.
(When platform_device_alloc() failed, it returns error without
unregistering hp680_bl_driver)

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Andriy Skulysh <askulysh@gmail.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
---
 drivers/video/backlight/hp680_bl.c |   20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)
Index: 2.6-git/drivers/video/backlight/hp680_bl.c
===================================================================
--- 2.6-git.orig/drivers/video/backlight/hp680_bl.c
+++ 2.6-git/drivers/video/backlight/hp680_bl.c
@@ -151,19 +151,15 @@ static int __init hp680bl_init(void)
 	int ret;
 
 	ret = platform_driver_register(&hp680bl_driver);
-	if (!ret) {
-		hp680bl_device = platform_device_alloc("hp680-bl", -1);
-		if (!hp680bl_device)
-			return -ENOMEM;
-
-		ret = platform_device_add(hp680bl_device);
-
-		if (ret) {
-			platform_device_put(hp680bl_device);
-			platform_driver_unregister(&hp680bl_driver);
-		}
+	if (ret)
+		return ret;
+	hp680bl_device = platform_device_register_simple("hp680-bl", -1,
+							NULL, 0);
+	if (IS_ERR(hp680bl_device)) {
+		platform_driver_unregister(&hp680bl_driver);
+		return PTR_ERR(hp680bl_device);
 	}
-	return ret;
+	return 0;
 }
 
 static void __exit hp680bl_exit(void)

\
 
 \ /
  Last update: 2008-09-21 16:39    [from the cache]
©2003-2008