lkml.org 
[lkml]   [2014]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] usb: host: ohci-tmio: Use managed interfaces for resource allocation
On Sun, 29 Jun 2014, Himangi Saraogi wrote:

> This patch moves resources allocated using ioremap or
> dma_declare_coherent_memory to the corresponding managed interface. The
> function calls to free the allocated resources are removed in the probe
> and remove functions as they are no longer required. Also, some labels
> are done away with and a new label err added to make it less specific to
> the context.
>
> Signed-off-by: Himangi Saraogi <himangi774@gmail.com>
> Acked-by: Julia Lawall <julia.lawall@lip6.fr>
> ---
> drivers/usb/host/ohci-tmio.c | 36 ++++++++++++------------------------
> 1 file changed, 12 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/usb/host/ohci-tmio.c b/drivers/usb/host/ohci-tmio.c
> index bb40958..1a6034f 100644
> --- a/drivers/usb/host/ohci-tmio.c
> +++ b/drivers/usb/host/ohci-tmio.c
> @@ -203,10 +203,8 @@ static int ohci_hcd_tmio_drv_probe(struct platform_device *dev)
> return -EINVAL;
>
> hcd = usb_create_hcd(&ohci_tmio_hc_driver, &dev->dev, dev_name(&dev->dev));
> - if (!hcd) {
> - ret = -ENOMEM;
> - goto err_usb_create_hcd;
> - }
> + if (!hcd)
> + return -ENOMEM;
>
> hcd->rsrc_start = regs->start;
> hcd->rsrc_len = resource_size(regs);
> @@ -215,30 +213,31 @@ static int ohci_hcd_tmio_drv_probe(struct platform_device *dev)
>
> spin_lock_init(&tmio->lock);
>
> - tmio->ccr = ioremap(config->start, resource_size(config));
> + tmio->ccr = devm_ioremap(&dev->dev, config->start,
> + resource_size(config));

You should use devm_ioremap_resource() rather than devm_ioremap().

...

> @@ -259,16 +258,8 @@ err_add_hcd:
> tmio_stop_hc(dev);
> if (cell->disable)
> cell->disable(dev);
> -err_enable:
> - dma_release_declared_memory(&dev->dev);
> -err_dma_declare:
> - iounmap(hcd->regs);
> -err_ioremap_regs:
> - iounmap(tmio->ccr);
> -err_ioremap_ccr:
> - usb_put_hcd(hcd);
> -err_usb_create_hcd:
> -
> +err:
> + usb_put_hcr(hcd);

There is no function named "usb_put_hcr()". Did you try to compile
this patch?

Alan Stern



\
 
 \ /
  Last update: 2014-06-30 17:41    [W:0.047 / U:5.596 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site