Signed-off-by: Lucas Tanure <tanure@xxxxxxxxx> --- drivers/usb/misc/apple-mfi-fastcharge.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/drivers/usb/misc/apple-mfi-fastcharge.c b/drivers/usb/misc/apple-mfi-fastcharge.c index 9de0171b5177..de86e389a008 100644 --- a/drivers/usb/misc/apple-mfi-fastcharge.c +++ b/drivers/usb/misc/apple-mfi-fastcharge.c @@ -178,16 +178,13 @@ static int mfi_fc_probe(struct usb_device *udev) { struct power_supply_config battery_cfg = {}; struct mfi_device *mfi = NULL; - int err; if (!mfi_fc_match(udev)) return -ENODEV; - mfi = kzalloc(sizeof(struct mfi_device), GFP_KERNEL); - if (!mfi) { - err = -ENOMEM; - goto error; - } + mfi = devm_kzalloc(&udev->dev, sizeof(*mfi), GFP_KERNEL); + if (!mfi) + return -ENOMEM; battery_cfg.drv_data = mfi; @@ -197,8 +194,7 @@ static int mfi_fc_probe(struct usb_device *udev) &battery_cfg); if (IS_ERR(mfi->battery)) { dev_err(&udev->dev, "Can't register battery\n"); - err = PTR_ERR(mfi->battery); - goto error; + return PTR_ERR(mfi->battery); } mfi->udev = usb_get_dev(udev); @@ -206,9 +202,6 @@ static int mfi_fc_probe(struct usb_device *udev) return 0; -error: - kfree(mfi); - return err; } static void mfi_fc_disconnect(struct usb_device *udev) @@ -220,7 +213,7 @@ static void mfi_fc_disconnect(struct usb_device *udev) power_supply_unregister(mfi->battery); dev_set_drvdata(&udev->dev, NULL); usb_put_dev(mfi->udev); - kfree(mfi); + devm_kfree(&udev->dev, mfi); } static struct usb_device_driver mfi_fc_driver = { -- 2.29.2