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

backlight: platform_lcd: use devm_lcd_device_register()

Use devm_lcd_device_register() to make cleanup paths simpler, and remove
unnecessary remove().

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Jingoo Han and committed by
Linus Torvalds
1f9ca1ee e8796d9f

+3 -17
+3 -17
drivers/video/backlight/platform_lcd.c
··· 101 101 102 102 plcd->us = dev; 103 103 plcd->pdata = pdata; 104 - plcd->lcd = lcd_device_register(dev_name(dev), dev, 105 - plcd, &platform_lcd_ops); 104 + plcd->lcd = devm_lcd_device_register(&pdev->dev, dev_name(dev), dev, 105 + plcd, &platform_lcd_ops); 106 106 if (IS_ERR(plcd->lcd)) { 107 107 dev_err(dev, "cannot register lcd device\n"); 108 - err = PTR_ERR(plcd->lcd); 109 - goto err; 108 + return PTR_ERR(plcd->lcd); 110 109 } 111 110 112 111 platform_set_drvdata(pdev, plcd); 113 112 platform_lcd_set_power(plcd->lcd, FB_BLANK_NORMAL); 114 - 115 - return 0; 116 - 117 - err: 118 - return err; 119 - } 120 - 121 - static int platform_lcd_remove(struct platform_device *pdev) 122 - { 123 - struct platform_lcd *plcd = platform_get_drvdata(pdev); 124 - 125 - lcd_device_unregister(plcd->lcd); 126 113 127 114 return 0; 128 115 } ··· 155 168 .of_match_table = of_match_ptr(platform_lcd_of_match), 156 169 }, 157 170 .probe = platform_lcd_probe, 158 - .remove = platform_lcd_remove, 159 171 }; 160 172 161 173 module_platform_driver(platform_lcd_driver);