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

backlight: ams369fg06: 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
ebc41e43 0524fc51

+7 -15
+7 -15
drivers/video/backlight/ams369fg06.c
··· 477 477 return -EINVAL; 478 478 } 479 479 480 - ld = lcd_device_register("ams369fg06", &spi->dev, lcd, 481 - &ams369fg06_lcd_ops); 480 + ld = devm_lcd_device_register(&spi->dev, "ams369fg06", &spi->dev, lcd, 481 + &ams369fg06_lcd_ops); 482 482 if (IS_ERR(ld)) 483 483 return PTR_ERR(ld); 484 484 ··· 488 488 props.type = BACKLIGHT_RAW; 489 489 props.max_brightness = MAX_BRIGHTNESS; 490 490 491 - bd = backlight_device_register("ams369fg06-bl", &spi->dev, lcd, 492 - &ams369fg06_backlight_ops, &props); 493 - if (IS_ERR(bd)) { 494 - ret = PTR_ERR(bd); 495 - goto out_lcd_unregister; 496 - } 491 + bd = devm_backlight_device_register(&spi->dev, "ams369fg06-bl", 492 + &spi->dev, lcd, 493 + &ams369fg06_backlight_ops, &props); 494 + if (IS_ERR(bd)) 495 + return PTR_ERR(bd); 497 496 498 497 bd->props.brightness = DEFAULT_BRIGHTNESS; 499 498 lcd->bd = bd; ··· 515 516 dev_info(&spi->dev, "ams369fg06 panel driver has been probed.\n"); 516 517 517 518 return 0; 518 - 519 - out_lcd_unregister: 520 - lcd_device_unregister(ld); 521 - return ret; 522 519 } 523 520 524 521 static int ams369fg06_remove(struct spi_device *spi) ··· 522 527 struct ams369fg06 *lcd = spi_get_drvdata(spi); 523 528 524 529 ams369fg06_power(lcd, FB_BLANK_POWERDOWN); 525 - backlight_device_unregister(lcd->bd); 526 - lcd_device_unregister(lcd->ld); 527 - 528 530 return 0; 529 531 } 530 532