32a17653de591ed934c75ecdb5742b9b6fbd3786
[openwrt/staging/mkresin.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 diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
15 index 853bf9d..d7ea50d 100644
16 --- a/drivers/usb/host/bcma-hcd.c
17 +++ b/drivers/usb/host/bcma-hcd.c
18 @@ -225,7 +225,8 @@ static int bcma_hcd_probe(struct bcma_device *dev)
19 if (dma_set_mask_and_coherent(dev->dma_dev, DMA_BIT_MASK(32)))
20 return -EOPNOTSUPP;
21
22 - usb_dev = kzalloc(sizeof(struct bcma_hcd_device), GFP_KERNEL);
23 + usb_dev = devm_kzalloc(&dev->dev, sizeof(struct bcma_hcd_device),
24 + GFP_KERNEL);
25 if (!usb_dev)
26 return -ENOMEM;
27
28 @@ -239,10 +240,8 @@ static int bcma_hcd_probe(struct bcma_device *dev)
29 ohci_addr = 0x18009000;
30
31 usb_dev->ohci_dev = bcma_hcd_create_pdev(dev, true, ohci_addr);
32 - if (IS_ERR(usb_dev->ohci_dev)) {
33 - err = PTR_ERR(usb_dev->ohci_dev);
34 - goto err_free_usb_dev;
35 - }
36 + if (IS_ERR(usb_dev->ohci_dev))
37 + return PTR_ERR(usb_dev->ohci_dev);
38
39 usb_dev->ehci_dev = bcma_hcd_create_pdev(dev, false, dev->addr);
40 if (IS_ERR(usb_dev->ehci_dev)) {
41 @@ -255,8 +254,6 @@ static int bcma_hcd_probe(struct bcma_device *dev)
42
43 err_unregister_ohci_dev:
44 platform_device_unregister(usb_dev->ohci_dev);
45 -err_free_usb_dev:
46 - kfree(usb_dev);
47 return err;
48 }
49
50 --
51 1.8.4.5
52