فهرست منبع

[MMC] wbsd: convert to the new platfrom device interface

platform_device_register_simple() is going away, switch to
using platfrom_device_alloc() + platform_device_add(). Also
make sure that wbsd_driver gets unregistered when wbsd_init
fails.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Pierre Ossman <drzeus@drzeus.cx>
Dmitry Torokhov 19 سال پیش
والد
کامیت
21500bb32a
1فایلهای تغییر یافته به همراه14 افزوده شده و 4 حذف شده
  1. 14 4
      drivers/mmc/wbsd.c

+ 14 - 4
drivers/mmc/wbsd.c

@@ -2087,10 +2087,20 @@ static int __init wbsd_drv_init(void)
 		if (result < 0)
 			return result;
 
-		wbsd_device = platform_device_register_simple(DRIVER_NAME, -1,
-			NULL, 0);
-		if (IS_ERR(wbsd_device))
-			return PTR_ERR(wbsd_device);
+		wbsd_device = platform_device_alloc(DRIVER_NAME, -1);
+		if (!wbsd_device)
+		{
+			platform_driver_unregister(&wbsd_driver);
+			return -ENOMEM;
+		}
+
+		result = platform_device_add(wbsd_device);
+		if (result)
+		{
+			platform_device_put(wbsd_device);
+			platform_driver_unregister(&wbsd_driver);
+			return result;
+		}
 	}
 
 	return 0;