diff options
author | Jingoo Han <jg1.han@samsung.com> | 2013-11-12 18:09:31 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-11-12 22:09:19 -0500 |
commit | 1f9ca1eee8e93cacf1bff11dc3fdd01b7fd80cd7 (patch) | |
tree | 053e15390169af8071480212c34fbd77bb2338f2 | |
parent | e8796d9f4fde228478ccf953c3f97a58f8e34e48 (diff) |
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>
-rw-r--r-- | drivers/video/backlight/platform_lcd.c | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/drivers/video/backlight/platform_lcd.c b/drivers/video/backlight/platform_lcd.c index cc0f0675366e..d01884d4f1bf 100644 --- a/drivers/video/backlight/platform_lcd.c +++ b/drivers/video/backlight/platform_lcd.c | |||
@@ -101,30 +101,17 @@ static int platform_lcd_probe(struct platform_device *pdev) | |||
101 | 101 | ||
102 | plcd->us = dev; | 102 | plcd->us = dev; |
103 | plcd->pdata = pdata; | 103 | plcd->pdata = pdata; |
104 | plcd->lcd = lcd_device_register(dev_name(dev), dev, | 104 | plcd->lcd = devm_lcd_device_register(&pdev->dev, dev_name(dev), dev, |
105 | plcd, &platform_lcd_ops); | 105 | plcd, &platform_lcd_ops); |
106 | if (IS_ERR(plcd->lcd)) { | 106 | if (IS_ERR(plcd->lcd)) { |
107 | dev_err(dev, "cannot register lcd device\n"); | 107 | dev_err(dev, "cannot register lcd device\n"); |
108 | err = PTR_ERR(plcd->lcd); | 108 | return PTR_ERR(plcd->lcd); |
109 | goto err; | ||
110 | } | 109 | } |
111 | 110 | ||
112 | platform_set_drvdata(pdev, plcd); | 111 | platform_set_drvdata(pdev, plcd); |
113 | platform_lcd_set_power(plcd->lcd, FB_BLANK_NORMAL); | 112 | platform_lcd_set_power(plcd->lcd, FB_BLANK_NORMAL); |
114 | 113 | ||
115 | return 0; | 114 | 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 | |||
127 | return 0; | ||
128 | } | 115 | } |
129 | 116 | ||
130 | #ifdef CONFIG_PM_SLEEP | 117 | #ifdef CONFIG_PM_SLEEP |
@@ -168,7 +155,6 @@ static struct platform_driver platform_lcd_driver = { | |||
168 | .of_match_table = of_match_ptr(platform_lcd_of_match), | 155 | .of_match_table = of_match_ptr(platform_lcd_of_match), |
169 | }, | 156 | }, |
170 | .probe = platform_lcd_probe, | 157 | .probe = platform_lcd_probe, |
171 | .remove = platform_lcd_remove, | ||
172 | }; | 158 | }; |
173 | 159 | ||
174 | module_platform_driver(platform_lcd_driver); | 160 | module_platform_driver(platform_lcd_driver); |