usb: dwc3: core: switch event buffer allocation to devm_kzalloc()
authorFelipe Balbi <balbi@ti.com>
Thu, 11 Oct 2012 10:48:36 +0000 (13:48 +0300)
committerFelipe Balbi <balbi@ti.com>
Mon, 15 Oct 2012 11:58:55 +0000 (14:58 +0300)
The rest of the driver is using devm_kzalloc() where possible
and this patch is just making event buffer allocation follow
the example.

Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/dwc3/core.c

index b415c0c..8d543ea 100644 (file)
@@ -169,7 +169,6 @@ static void dwc3_free_one_event_buffer(struct dwc3 *dwc,
                struct dwc3_event_buffer *evt)
 {
        dma_free_coherent(dwc->dev, evt->length, evt->buf, evt->dma);
-       kfree(evt);
 }
 
 /**
@@ -185,7 +184,7 @@ dwc3_alloc_one_event_buffer(struct dwc3 *dwc, unsigned length)
 {
        struct dwc3_event_buffer        *evt;
 
-       evt = kzalloc(sizeof(*evt), GFP_KERNEL);
+       evt = devm_kzalloc(dwc->dev, sizeof(*evt), GFP_KERNEL);
        if (!evt)
                return ERR_PTR(-ENOMEM);
 
@@ -215,8 +214,6 @@ static void dwc3_free_event_buffers(struct dwc3 *dwc)
                if (evt)
                        dwc3_free_one_event_buffer(dwc, evt);
        }
-
-       kfree(dwc->ev_buffs);
 }
 
 /**
@@ -235,7 +232,8 @@ static int __devinit dwc3_alloc_event_buffers(struct dwc3 *dwc, unsigned length)
        num = DWC3_NUM_INT(dwc->hwparams.hwparams1);
        dwc->num_event_buffers = num;
 
-       dwc->ev_buffs = kzalloc(sizeof(*dwc->ev_buffs) * num, GFP_KERNEL);
+       dwc->ev_buffs = devm_kzalloc(dwc->dev, sizeof(*dwc->ev_buffs) * num,
+                       GFP_KERNEL);
        if (!dwc->ev_buffs) {
                dev_err(dwc->dev, "can't allocate event buffers array\n");
                return -ENOMEM;