aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJingoo Han <jg1.han@samsung.com>2013-11-12 18:09:21 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2013-11-12 22:09:18 -0500
commit18d9dbce468135c07ab57d2a53b406b9d1e05f18 (patch)
tree0a0004a86b692337b31d07fcdf31bf957adcee80
parente924c2aadfbd18a38bcc805f32e5ffc1bdad4ad7 (diff)
backlight: max8925_bl: use devm_backlight_device_register()
Use devm_backlight_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/max8925_bl.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/drivers/video/backlight/max8925_bl.c b/drivers/video/backlight/max8925_bl.c
index 886e797f75f9..66fa08c920d2 100644
--- a/drivers/video/backlight/max8925_bl.c
+++ b/drivers/video/backlight/max8925_bl.c
@@ -163,7 +163,8 @@ static int max8925_backlight_probe(struct platform_device *pdev)
163 memset(&props, 0, sizeof(struct backlight_properties)); 163 memset(&props, 0, sizeof(struct backlight_properties));
164 props.type = BACKLIGHT_RAW; 164 props.type = BACKLIGHT_RAW;
165 props.max_brightness = MAX_BRIGHTNESS; 165 props.max_brightness = MAX_BRIGHTNESS;
166 bl = backlight_device_register("max8925-backlight", &pdev->dev, data, 166 bl = devm_backlight_device_register(&pdev->dev, "max8925-backlight",
167 &pdev->dev, data,
167 &max8925_backlight_ops, &props); 168 &max8925_backlight_ops, &props);
168 if (IS_ERR(bl)) { 169 if (IS_ERR(bl)) {
169 dev_err(&pdev->dev, "failed to register backlight\n"); 170 dev_err(&pdev->dev, "failed to register backlight\n");
@@ -188,20 +189,9 @@ static int max8925_backlight_probe(struct platform_device *pdev)
188 } 189 }
189 ret = max8925_set_bits(chip->i2c, data->reg_mode_cntl, 0xfe, value); 190 ret = max8925_set_bits(chip->i2c, data->reg_mode_cntl, 0xfe, value);
190 if (ret < 0) 191 if (ret < 0)
191 goto out_brt; 192 return ret;
192 backlight_update_status(bl); 193 backlight_update_status(bl);
193 return 0; 194 return 0;
194out_brt:
195 backlight_device_unregister(bl);
196 return ret;
197}
198
199static int max8925_backlight_remove(struct platform_device *pdev)
200{
201 struct backlight_device *bl = platform_get_drvdata(pdev);
202
203 backlight_device_unregister(bl);
204 return 0;
205} 195}
206 196
207static struct platform_driver max8925_backlight_driver = { 197static struct platform_driver max8925_backlight_driver = {
@@ -210,7 +200,6 @@ static struct platform_driver max8925_backlight_driver = {
210 .owner = THIS_MODULE, 200 .owner = THIS_MODULE,
211 }, 201 },
212 .probe = max8925_backlight_probe, 202 .probe = max8925_backlight_probe,
213 .remove = max8925_backlight_remove,
214}; 203};
215 204
216module_platform_driver(max8925_backlight_driver); 205module_platform_driver(max8925_backlight_driver);