aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ehci-w90x900.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/host/ehci-w90x900.c')
-rw-r--r--drivers/usb/host/ehci-w90x900.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/drivers/usb/host/ehci-w90x900.c b/drivers/usb/host/ehci-w90x900.c
index a9303aff125e..c305732e8634 100644
--- a/drivers/usb/host/ehci-w90x900.c
+++ b/drivers/usb/host/ehci-w90x900.c
@@ -42,27 +42,20 @@ static int usb_w90x900_probe(const struct hc_driver *driver,
42 int retval = 0, irq; 42 int retval = 0, irq;
43 unsigned long val; 43 unsigned long val;
44 44
45
46 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
47 if (!res) {
48 retval = -ENXIO;
49 goto err1;
50 }
51
52 hcd = usb_create_hcd(driver, &pdev->dev, "w90x900 EHCI"); 45 hcd = usb_create_hcd(driver, &pdev->dev, "w90x900 EHCI");
53 if (!hcd) { 46 if (!hcd) {
54 retval = -ENOMEM; 47 retval = -ENOMEM;
55 goto err1; 48 goto err1;
56 } 49 }
57 50
58 hcd->rsrc_start = res->start; 51 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
59 hcd->rsrc_len = resource_size(res);
60
61 hcd->regs = devm_ioremap_resource(&pdev->dev, res); 52 hcd->regs = devm_ioremap_resource(&pdev->dev, res);
62 if (IS_ERR(hcd->regs)) { 53 if (IS_ERR(hcd->regs)) {
63 retval = PTR_ERR(hcd->regs); 54 retval = PTR_ERR(hcd->regs);
64 goto err2; 55 goto err2;
65 } 56 }
57 hcd->rsrc_start = res->start;
58 hcd->rsrc_len = resource_size(res);
66 59
67 ehci = hcd_to_ehci(hcd); 60 ehci = hcd_to_ehci(hcd);
68 ehci->caps = hcd->regs; 61 ehci->caps = hcd->regs;
@@ -82,8 +75,10 @@ static int usb_w90x900_probe(const struct hc_driver *driver,
82 __raw_writel(val, ehci->regs+PHY1_CTR); 75 __raw_writel(val, ehci->regs+PHY1_CTR);
83 76
84 irq = platform_get_irq(pdev, 0); 77 irq = platform_get_irq(pdev, 0);
85 if (irq < 0) 78 if (irq < 0) {
79 retval = irq;
86 goto err2; 80 goto err2;
81 }
87 82
88 retval = usb_add_hcd(hcd, irq, IRQF_SHARED); 83 retval = usb_add_hcd(hcd, irq, IRQF_SHARED);
89 if (retval != 0) 84 if (retval != 0)