Commit eb17ea3b authored by Sachin Kamat's avatar Sachin Kamat Committed by Gustavo Padovan

Bluetooth: Use devm_kzalloc in btmrvl_sdio.c file

devm_kzalloc() eliminates the need to free memory explicitly
thereby saving some cleanup code.
Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
Signed-off-by: default avatarGustavo Padovan <gustavo.padovan@collabora.co.uk>
parent 4f61cb18
...@@ -956,11 +956,9 @@ static int btmrvl_sdio_probe(struct sdio_func *func, ...@@ -956,11 +956,9 @@ static int btmrvl_sdio_probe(struct sdio_func *func,
BT_INFO("vendor=0x%x, device=0x%x, class=%d, fn=%d", BT_INFO("vendor=0x%x, device=0x%x, class=%d, fn=%d",
id->vendor, id->device, id->class, func->num); id->vendor, id->device, id->class, func->num);
card = kzalloc(sizeof(*card), GFP_KERNEL); card = devm_kzalloc(&func->dev, sizeof(*card), GFP_KERNEL);
if (!card) { if (!card)
ret = -ENOMEM; return -ENOMEM;
goto done;
}
card->func = func; card->func = func;
...@@ -974,8 +972,7 @@ static int btmrvl_sdio_probe(struct sdio_func *func, ...@@ -974,8 +972,7 @@ static int btmrvl_sdio_probe(struct sdio_func *func,
if (btmrvl_sdio_register_dev(card) < 0) { if (btmrvl_sdio_register_dev(card) < 0) {
BT_ERR("Failed to register BT device!"); BT_ERR("Failed to register BT device!");
ret = -ENODEV; return -ENODEV;
goto free_card;
} }
/* Disable the interrupts on the card */ /* Disable the interrupts on the card */
...@@ -1023,9 +1020,6 @@ static int btmrvl_sdio_probe(struct sdio_func *func, ...@@ -1023,9 +1020,6 @@ static int btmrvl_sdio_probe(struct sdio_func *func,
btmrvl_sdio_disable_host_int(card); btmrvl_sdio_disable_host_int(card);
unreg_dev: unreg_dev:
btmrvl_sdio_unregister_dev(card); btmrvl_sdio_unregister_dev(card);
free_card:
kfree(card);
done:
return ret; return ret;
} }
...@@ -1047,7 +1041,6 @@ static void btmrvl_sdio_remove(struct sdio_func *func) ...@@ -1047,7 +1041,6 @@ static void btmrvl_sdio_remove(struct sdio_func *func)
BT_DBG("unregester dev"); BT_DBG("unregester dev");
btmrvl_sdio_unregister_dev(card); btmrvl_sdio_unregister_dev(card);
btmrvl_remove_card(card->priv); btmrvl_remove_card(card->priv);
kfree(card);
} }
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment