aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/backlight
diff options
context:
space:
mode:
authorJingoo Han <jg1.han@samsung.com>2013-11-12 18:09:30 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2013-11-12 22:09:19 -0500
commite8796d9f4fde228478ccf953c3f97a58f8e34e48 (patch)
tree6bf6c2d039648d8ab0224336bb86998aebf3754a /drivers/video/backlight
parent8358741ab72a6a15165d1a855304c81beee74240 (diff)
backlight: ltv350qv: use devm_lcd_device_register()
Use 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>
Diffstat (limited to 'drivers/video/backlight')
-rw-r--r--drivers/video/backlight/ltv350qv.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/video/backlight/ltv350qv.c b/drivers/video/backlight/ltv350qv.c
index ed1b39268131..383f550e165e 100644
--- a/drivers/video/backlight/ltv350qv.c
+++ b/drivers/video/backlight/ltv350qv.c
@@ -242,7 +242,8 @@ static int ltv350qv_probe(struct spi_device *spi)
242 if (!lcd->buffer) 242 if (!lcd->buffer)
243 return -ENOMEM; 243 return -ENOMEM;
244 244
245 ld = lcd_device_register("ltv350qv", &spi->dev, lcd, &ltv_ops); 245 ld = devm_lcd_device_register(&spi->dev, "ltv350qv", &spi->dev, lcd,
246 &ltv_ops);
246 if (IS_ERR(ld)) 247 if (IS_ERR(ld))
247 return PTR_ERR(ld); 248 return PTR_ERR(ld);
248 249
@@ -250,15 +251,11 @@ static int ltv350qv_probe(struct spi_device *spi)
250 251
251 ret = ltv350qv_power(lcd, FB_BLANK_UNBLANK); 252 ret = ltv350qv_power(lcd, FB_BLANK_UNBLANK);
252 if (ret) 253 if (ret)
253 goto out_unregister; 254 return ret;
254 255
255 spi_set_drvdata(spi, lcd); 256 spi_set_drvdata(spi, lcd);
256 257
257 return 0; 258 return 0;
258
259out_unregister:
260 lcd_device_unregister(ld);
261 return ret;
262} 259}
263 260
264static int ltv350qv_remove(struct spi_device *spi) 261static int ltv350qv_remove(struct spi_device *spi)
@@ -266,8 +263,6 @@ static int ltv350qv_remove(struct spi_device *spi)
266 struct ltv350qv *lcd = spi_get_drvdata(spi); 263 struct ltv350qv *lcd = spi_get_drvdata(spi);
267 264
268 ltv350qv_power(lcd, FB_BLANK_POWERDOWN); 265 ltv350qv_power(lcd, FB_BLANK_POWERDOWN);
269 lcd_device_unregister(lcd->ld);
270
271 return 0; 266 return 0;
272} 267}
273 268