1
0
Fork 0

backlight: ld9040: 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>
hifive-unleashed-5.1
Jingoo Han 2013-11-12 15:09:33 -08:00 committed by Linus Torvalds
parent ebc41e43b2
commit 7a78e1b24b
1 changed files with 6 additions and 15 deletions

View File

@ -716,7 +716,8 @@ static int ld9040_probe(struct spi_device *spi)
return ret;
}
ld = lcd_device_register("ld9040", &spi->dev, lcd, &ld9040_lcd_ops);
ld = devm_lcd_device_register(&spi->dev, "ld9040", &spi->dev, lcd,
&ld9040_lcd_ops);
if (IS_ERR(ld))
return PTR_ERR(ld);
@ -726,12 +727,10 @@ static int ld9040_probe(struct spi_device *spi)
props.type = BACKLIGHT_RAW;
props.max_brightness = MAX_BRIGHTNESS;
bd = backlight_device_register("ld9040-bl", &spi->dev,
lcd, &ld9040_backlight_ops, &props);
if (IS_ERR(bd)) {
ret = PTR_ERR(bd);
goto out_unregister_lcd;
}
bd = devm_backlight_device_register(&spi->dev, "ld9040-bl", &spi->dev,
lcd, &ld9040_backlight_ops, &props);
if (IS_ERR(bd))
return PTR_ERR(bd);
bd->props.brightness = MAX_BRIGHTNESS;
lcd->bd = bd;
@ -757,11 +756,6 @@ static int ld9040_probe(struct spi_device *spi)
dev_info(&spi->dev, "ld9040 panel driver has been probed.\n");
return 0;
out_unregister_lcd:
lcd_device_unregister(lcd->ld);
return ret;
}
static int ld9040_remove(struct spi_device *spi)
@ -769,9 +763,6 @@ static int ld9040_remove(struct spi_device *spi)
struct ld9040 *lcd = spi_get_drvdata(spi);
ld9040_power(lcd, FB_BLANK_POWERDOWN);
backlight_device_unregister(lcd->bd);
lcd_device_unregister(lcd->ld);
return 0;
}