Re: [PATCH 5/8] extcon: max77693: Use devm_extcon_dev_register()

Krzysztof Kozlowski
2014-04-16T11:23:14Z

On śro, 2014-04-16 at 19:27 +0900, Sangjung Woo wrote:
> Use the resource-managed extcon device register function (i.e.
> devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device
> is attached with this function, that extcon device is automatically unregistered
> on driver detach. That reduces tiresome managing code.
>
> Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
> ---
> drivers/extcon/extcon-max77693.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)

Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

Best regards,
Krzysztof

>
> diff --git a/drivers/extcon/extcon-max77693.c b/drivers/extcon/extcon-max77693.c
> index 39cd095..f0f18e2 100644
> --- a/drivers/extcon/extcon-max77693.c
> +++ b/drivers/extcon/extcon-max77693.c
> @@ -1185,7 +1185,7 @@ static int max77693_muic_probe(struct platform_device *pdev)
> info->edev->name = DEV_NAME;
> info->edev->dev.parent = &pdev->dev;
> info->edev->supported_cable = max77693_extcon_cable;
> - ret = extcon_dev_register(info->edev);
> + ret = devm_extcon_dev_register(&pdev->dev, info->edev);
> if (ret) {
> dev_err(&pdev->dev, "failed to register extcon device\n");
> goto err_irq;
> @@ -1267,7 +1267,7 @@ static int max77693_muic_probe(struct platform_device *pdev)
> MAX77693_MUIC_REG_ID, &id);
> if (ret < 0) {
> dev_err(&pdev->dev, "failed to read revision number\n");
> - goto err_extcon;
> + goto err_irq;
> }
> dev_info(info->dev, "device ID : 0x%x\n", id);
>
> @@ -1288,8 +1288,6 @@ static int max77693_muic_probe(struct platform_device *pdev)
>
> return ret;
>
> -err_extcon:
> - extcon_dev_unregister(info->edev);
> err_irq:
> while (--i >= 0)
> free_irq(muic_irqs[i].virq, info);
> @@ -1305,7 +1303,6 @@ static int max77693_muic_remove(struct platform_device *pdev)
> free_irq(muic_irqs[i].virq, info);
> cancel_work_sync(&info->irq_work);
> input_unregister_device(info->dock);
> - extcon_dev_unregister(info->edev);
>
> return 0;
> }