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

backlight: cr_bllcd: use devm_{backlight,lcd}_device_register()

Use devm_backlight_device_register() and devm_lcd_device_register() to
make cleanup paths simpler.

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
289a65e4 10645a1d

+5 -8
+5 -8
drivers/video/backlight/cr_bllcd.c
··· 195 195 196 196 memset(&props, 0, sizeof(struct backlight_properties)); 197 197 props.type = BACKLIGHT_RAW; 198 - bdp = backlight_device_register("cr-backlight", &pdev->dev, NULL, 199 - &cr_backlight_ops, &props); 198 + bdp = devm_backlight_device_register(&pdev->dev, "cr-backlight", 199 + &pdev->dev, NULL, &cr_backlight_ops, 200 + &props); 200 201 if (IS_ERR(bdp)) { 201 202 pci_dev_put(lpc_dev); 202 203 return PTR_ERR(bdp); 203 204 } 204 205 205 - ldp = lcd_device_register("cr-lcd", &pdev->dev, NULL, &cr_lcd_ops); 206 + ldp = devm_lcd_device_register(&pdev->dev, "cr-lcd", &pdev->dev, NULL, 207 + &cr_lcd_ops); 206 208 if (IS_ERR(ldp)) { 207 - backlight_device_unregister(bdp); 208 209 pci_dev_put(lpc_dev); 209 210 return PTR_ERR(ldp); 210 211 } ··· 216 215 217 216 crp = devm_kzalloc(&pdev->dev, sizeof(*crp), GFP_KERNEL); 218 217 if (!crp) { 219 - lcd_device_unregister(ldp); 220 - backlight_device_unregister(bdp); 221 218 pci_dev_put(lpc_dev); 222 219 return -ENOMEM; 223 220 } ··· 240 241 crp->cr_backlight_device->props.max_brightness = 0; 241 242 cr_backlight_set_intensity(crp->cr_backlight_device); 242 243 cr_lcd_set_power(crp->cr_lcd_device, FB_BLANK_POWERDOWN); 243 - backlight_device_unregister(crp->cr_backlight_device); 244 - lcd_device_unregister(crp->cr_lcd_device); 245 244 pci_dev_put(lpc_dev); 246 245 247 246 return 0;