diff options
Diffstat (limited to 'drivers/usb/musb/musb_core.c')
-rw-r--r-- | drivers/usb/musb/musb_core.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 3e9b3b0e9c0..de7b3770f6e 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) | |||
2110 | { | 2110 | { |
2111 | struct device *dev = &pdev->dev; | 2111 | struct device *dev = &pdev->dev; |
2112 | int irq = platform_get_irq(pdev, 0); | 2112 | int irq = platform_get_irq(pdev, 0); |
2113 | int status; | ||
2113 | struct resource *iomem; | 2114 | struct resource *iomem; |
2114 | void __iomem *base; | 2115 | void __iomem *base; |
2115 | 2116 | ||
@@ -2127,7 +2128,12 @@ static int __init musb_probe(struct platform_device *pdev) | |||
2127 | /* clobbered by use_dma=n */ | 2128 | /* clobbered by use_dma=n */ |
2128 | orig_dma_mask = dev->dma_mask; | 2129 | orig_dma_mask = dev->dma_mask; |
2129 | #endif | 2130 | #endif |
2130 | return musb_init_controller(dev, irq, base); | 2131 | |
2132 | status = musb_init_controller(dev, irq, base); | ||
2133 | if (status < 0) | ||
2134 | iounmap(base); | ||
2135 | |||
2136 | return status; | ||
2131 | } | 2137 | } |
2132 | 2138 | ||
2133 | static int __exit musb_remove(struct platform_device *pdev) | 2139 | static int __exit musb_remove(struct platform_device *pdev) |