Commit 81574fc6 authored by Jingoo Han's avatar Jingoo Han Committed by Greg Kroah-Hartman

USB: ohci-octeon: Use devm_ioremap_resource()

Use devm_ioremap_resource() to make cleanup paths simpler.
Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
Acked-by: default avatarDavid Daney <david.daney@cavium.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 09796be1
...@@ -138,20 +138,12 @@ static int ohci_octeon_drv_probe(struct platform_device *pdev) ...@@ -138,20 +138,12 @@ static int ohci_octeon_drv_probe(struct platform_device *pdev)
hcd->rsrc_start = res_mem->start; hcd->rsrc_start = res_mem->start;
hcd->rsrc_len = resource_size(res_mem); hcd->rsrc_len = resource_size(res_mem);
if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, reg_base = devm_ioremap_resource(&pdev->dev, res_mem);
OCTEON_OHCI_HCD_NAME)) { if (IS_ERR(reg_base)) {
dev_err(&pdev->dev, "request_mem_region failed\n"); ret = PTR_ERR(reg_base);
ret = -EBUSY;
goto err1; goto err1;
} }
reg_base = ioremap(hcd->rsrc_start, hcd->rsrc_len);
if (!reg_base) {
dev_err(&pdev->dev, "ioremap failed\n");
ret = -ENOMEM;
goto err2;
}
ohci_octeon_hw_start(); ohci_octeon_hw_start();
hcd->regs = reg_base; hcd->regs = reg_base;
...@@ -168,7 +160,7 @@ static int ohci_octeon_drv_probe(struct platform_device *pdev) ...@@ -168,7 +160,7 @@ static int ohci_octeon_drv_probe(struct platform_device *pdev)
ret = usb_add_hcd(hcd, irq, IRQF_SHARED); ret = usb_add_hcd(hcd, irq, IRQF_SHARED);
if (ret) { if (ret) {
dev_dbg(&pdev->dev, "failed to add hcd with err %d\n", ret); dev_dbg(&pdev->dev, "failed to add hcd with err %d\n", ret);
goto err3; goto err2;
} }
device_wakeup_enable(hcd->self.controller); device_wakeup_enable(hcd->self.controller);
...@@ -177,12 +169,9 @@ static int ohci_octeon_drv_probe(struct platform_device *pdev) ...@@ -177,12 +169,9 @@ static int ohci_octeon_drv_probe(struct platform_device *pdev)
return 0; return 0;
err3: err2:
ohci_octeon_hw_stop(); ohci_octeon_hw_stop();
iounmap(hcd->regs);
err2:
release_mem_region(hcd->rsrc_start, hcd->rsrc_len);
err1: err1:
usb_put_hcd(hcd); usb_put_hcd(hcd);
return ret; return ret;
...@@ -195,8 +184,6 @@ static int ohci_octeon_drv_remove(struct platform_device *pdev) ...@@ -195,8 +184,6 @@ static int ohci_octeon_drv_remove(struct platform_device *pdev)
usb_remove_hcd(hcd); usb_remove_hcd(hcd);
ohci_octeon_hw_stop(); ohci_octeon_hw_stop();
iounmap(hcd->regs);
release_mem_region(hcd->rsrc_start, hcd->rsrc_len);
usb_put_hcd(hcd); usb_put_hcd(hcd);
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment