lkml.org 
[lkml]   [2016]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 7/7] leds: lm3533: 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.

    To be compatible with this change, remove an unnecessary label by
    replacing it with direct return statement.

    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 <amitoj1606@gmail.com>
    ---
    drivers/leds/leds-lm3533.c | 12 +++---------
    1 file changed, 3 insertions(+), 9 deletions(-)

    diff --git a/drivers/leds/leds-lm3533.c b/drivers/leds/leds-lm3533.c
    index 196dcb5..5b529dc 100644
    --- a/drivers/leds/leds-lm3533.c
    +++ b/drivers/leds/leds-lm3533.c
    @@ -698,7 +698,7 @@ static int lm3533_led_probe(struct platform_device *pdev)

    platform_set_drvdata(pdev, led);

    - ret = led_classdev_register(pdev->dev.parent, &led->cdev);
    + ret = devm_led_classdev_register(pdev->dev.parent, &led->cdev);
    if (ret) {
    dev_err(&pdev->dev, "failed to register LED %d\n", pdev->id);
    return ret;
    @@ -708,18 +708,13 @@ static int lm3533_led_probe(struct platform_device *pdev)

    ret = lm3533_led_setup(led, pdata);
    if (ret)
    - goto err_unregister;
    + return ret;

    ret = lm3533_ctrlbank_enable(&led->cb);
    if (ret)
    - goto err_unregister;
    + return ret;

    return 0;
    -
    -err_unregister:
    - led_classdev_unregister(&led->cdev);
    -
    - return ret;
    }

    static int lm3533_led_remove(struct platform_device *pdev)
    @@ -729,7 +724,6 @@ static int lm3533_led_remove(struct platform_device *pdev)
    dev_dbg(&pdev->dev, "%s\n", __func__);

    lm3533_ctrlbank_disable(&led->cb);
    - led_classdev_unregister(&led->cdev);

    return 0;
    }
    --
    1.9.1
    \
     
     \ /
      Last update: 2016-03-07 16:41    [W:5.529 / U:0.532 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site