Skip to content

Commit 375446d

Browse files
musicakcjanaszewski
authored andcommitted
leds: 88pm860x: Use devm_led_classdev_register
Switch to resource-managed function devm_led_classdev_register instead of led_classdev_register and remove unneeded led_classdev_unregister. Also, remove platform_set_drvdata in probe function and the remove function, pm860x_led_remove as it is now has nothing to do. The Coccinelle semantic patch used to make this change is as follows: //<smpl> @platform@ identifier p, probefn, removefn; @@ struct platform_driver p = { .probe = probefn, .remove = removefn, }; @prb@ identifier platform.probefn, pdev; expression e; @@ probefn(struct platform_device *pdev, ...) { ... e = - led_classdev_register + devm_led_classdev_register (...); ... ?- led_classdev_unregister(...); ... } @remove depends on prb@ identifier platform.removefn; @@ removefn(...) { ... ?- led_classdev_unregister(...); ... } //</smpl> Signed-off-by: Amitoj Kaur Chawla <[email protected]> Signed-off-by: Jacek Anaszewski <[email protected]>
1 parent e0442d7 commit 375446d

File tree

1 file changed

+1
-11
lines changed

1 file changed

+1
-11
lines changed

drivers/leds/leds-88pm860x.c

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,6 @@ static int pm860x_led_probe(struct platform_device *pdev)
195195
sprintf(data->name, "led1-blue");
196196
break;
197197
}
198-
platform_set_drvdata(pdev, data);
199198
data->chip = chip;
200199
data->i2c = (chip->id == CHIP_PM8606) ? chip->client : chip->companion;
201200
data->port = pdev->id;
@@ -208,7 +207,7 @@ static int pm860x_led_probe(struct platform_device *pdev)
208207
data->cdev.brightness_set_blocking = pm860x_led_set;
209208
mutex_init(&data->lock);
210209

211-
ret = led_classdev_register(chip->dev, &data->cdev);
210+
ret = devm_led_classdev_register(chip->dev, &data->cdev);
212211
if (ret < 0) {
213212
dev_err(&pdev->dev, "Failed to register LED: %d\n", ret);
214213
return ret;
@@ -217,21 +216,12 @@ static int pm860x_led_probe(struct platform_device *pdev)
217216
return 0;
218217
}
219218

220-
static int pm860x_led_remove(struct platform_device *pdev)
221-
{
222-
struct pm860x_led *data = platform_get_drvdata(pdev);
223-
224-
led_classdev_unregister(&data->cdev);
225-
226-
return 0;
227-
}
228219

229220
static struct platform_driver pm860x_led_driver = {
230221
.driver = {
231222
.name = "88pm860x-led",
232223
},
233224
.probe = pm860x_led_probe,
234-
.remove = pm860x_led_remove,
235225
};
236226

237227
module_platform_driver(pm860x_led_driver);

0 commit comments

Comments
 (0)