From: Felipe Balbi Date: Thu, 21 Jan 2010 13:33:57 +0000 (+0200) Subject: USB: musb: unmap base if we can't probe X-Git-Tag: v2.6.34-rc1~215^2~56 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=da5108e1a350c84b185b5f11aa58fea93a204fe0;p=karo-tx-linux.git USB: musb: unmap base if we can't probe when probe() fails, we should iounmap() the mapped address. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 3e9b3b0e9c0d..de7b3770f6ee 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c @@ -2110,6 +2110,7 @@ static int __init musb_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; int irq = platform_get_irq(pdev, 0); + int status; struct resource *iomem; void __iomem *base; @@ -2127,7 +2128,12 @@ static int __init musb_probe(struct platform_device *pdev) /* clobbered by use_dma=n */ orig_dma_mask = dev->dma_mask; #endif - return musb_init_controller(dev, irq, base); + + status = musb_init_controller(dev, irq, base); + if (status < 0) + iounmap(base); + + return status; } static int __exit musb_remove(struct platform_device *pdev)