Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

backlight: progear_bl - Use platform_device_register_simple()

Use platform_device_register_simple() and also fix error
handling when platform_device_alloc() fails (progearbl_driver
is left registered).

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>

authored by

Akinobu Mita and committed by
Richard Purdie
6cd6f35a 3bcdcc0e

+8 -12
+8 -12
drivers/video/backlight/progear_bl.c
··· 119 119 { 120 120 int ret = platform_driver_register(&progearbl_driver); 121 121 122 - if (!ret) { 123 - progearbl_device = platform_device_alloc("progear-bl", -1); 124 - if (!progearbl_device) 125 - return -ENOMEM; 126 - 127 - ret = platform_device_add(progearbl_device); 128 - 129 - if (ret) { 130 - platform_device_put(progearbl_device); 131 - platform_driver_unregister(&progearbl_driver); 132 - } 122 + if (ret) 123 + return ret; 124 + progearbl_device = platform_device_register_simple("progear-bl", -1, 125 + NULL, 0); 126 + if (IS_ERR(progearbl_device)) { 127 + platform_driver_unregister(&progearbl_driver); 128 + return PTR_ERR(progearbl_device); 133 129 } 134 130 135 - return ret; 131 + return 0; 136 132 } 137 133 138 134 static void __exit progearbl_exit(void)