700d354332c9af5055dc9323fb1dc90cde209d6a
[openwrt/staging/chunkeey.git] / target / linux / bcm53xx / patches-3.18 / 182-USB-bcma-use-devm_kzalloc.patch
1 From 93724affb195149df6f7630901d878f6e273fa02 Mon Sep 17 00:00:00 2001
2 From: Hauke Mehrtens <hauke@hauke-m.de>
3 Date: Thu, 11 Jun 2015 22:57:37 +0200
4 Subject: [PATCH] USB: bcma: use devm_kzalloc
5
6 Instead of manually handling the frees use devm. There was also a free
7 missing in the unregister call which is not needed with devm.
8
9 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
10 ---
11 drivers/usb/host/bcma-hcd.c | 11 ++++-------
12 1 file changed, 4 insertions(+), 7 deletions(-)
13
14 --- a/drivers/usb/host/bcma-hcd.c
15 +++ b/drivers/usb/host/bcma-hcd.c
16 @@ -225,7 +225,8 @@ static int bcma_hcd_probe(struct bcma_de
17 if (dma_set_mask_and_coherent(dev->dma_dev, DMA_BIT_MASK(32)))
18 return -EOPNOTSUPP;
19
20 - usb_dev = kzalloc(sizeof(struct bcma_hcd_device), GFP_KERNEL);
21 + usb_dev = devm_kzalloc(&dev->dev, sizeof(struct bcma_hcd_device),
22 + GFP_KERNEL);
23 if (!usb_dev)
24 return -ENOMEM;
25
26 @@ -239,10 +240,8 @@ static int bcma_hcd_probe(struct bcma_de
27 ohci_addr = 0x18009000;
28
29 usb_dev->ohci_dev = bcma_hcd_create_pdev(dev, true, ohci_addr);
30 - if (IS_ERR(usb_dev->ohci_dev)) {
31 - err = PTR_ERR(usb_dev->ohci_dev);
32 - goto err_free_usb_dev;
33 - }
34 + if (IS_ERR(usb_dev->ohci_dev))
35 + return PTR_ERR(usb_dev->ohci_dev);
36
37 usb_dev->ehci_dev = bcma_hcd_create_pdev(dev, false, dev->addr);
38 if (IS_ERR(usb_dev->ehci_dev)) {
39 @@ -255,8 +254,6 @@ static int bcma_hcd_probe(struct bcma_de
40
41 err_unregister_ohci_dev:
42 platform_device_unregister(usb_dev->ohci_dev);
43 -err_free_usb_dev:
44 - kfree(usb_dev);
45 return err;
46 }
47