[ARM] 5526/1: ep93xx: usb driver cleanup
authorHartley Sweeten <hartleys@visionengravers.com>
Thu, 28 May 2009 18:56:11 +0000 (19:56 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 29 May 2009 19:16:29 +0000 (20:16 +0100)
Cleanup the ohci-ep93xx driver.

1) Use the usb.h dbg() macro instead of pr_debug() so that
   the source filename is prefixed to the message and it is
   terminated with a linefeed.

2) Add error handling for the clk_get() call.

3) Update clkdev support so that the usb clock is matched by
   the dev_id instead of the con_id.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-ep93xx/clock.c
drivers/usb/host/ohci-ep93xx.c

index e8ebeaea6c48c78ed9eda599e512d0d152c73349..29f36b458a0f7a471190e932ad9d21d4e99615bd 100644 (file)
@@ -103,7 +103,7 @@ static struct clk_lookup clocks[] = {
        INIT_CK(NULL, "hclk", &clk_h),
        INIT_CK(NULL, "pclk", &clk_p),
        INIT_CK(NULL, "pll2", &clk_pll2),
-       INIT_CK(NULL, "usb_host", &clk_usb_host),
+       INIT_CK("ep93xx-ohci", NULL, &clk_usb_host),
        INIT_CK(NULL, "m2p0", &clk_m2p0),
        INIT_CK(NULL, "m2p1", &clk_m2p1),
        INIT_CK(NULL, "m2p2", &clk_m2p2),
index 7cf74f8c2db1ea832848acc540399bf9c5d582e7..b0dbf4157d29d5b26779f95e081e358beec4c86d 100644 (file)
@@ -47,7 +47,7 @@ static int usb_hcd_ep93xx_probe(const struct hc_driver *driver,
        struct usb_hcd *hcd;
 
        if (pdev->resource[1].flags != IORESOURCE_IRQ) {
-               pr_debug("resource[1] is not IORESOURCE_IRQ");
+               dbg("resource[1] is not IORESOURCE_IRQ");
                return -ENOMEM;
        }
 
@@ -65,12 +65,18 @@ static int usb_hcd_ep93xx_probe(const struct hc_driver *driver,
 
        hcd->regs = ioremap(hcd->rsrc_start, hcd->rsrc_len);
        if (hcd->regs == NULL) {
-               pr_debug("ioremap failed");
+               dbg("ioremap failed");
                retval = -ENOMEM;
                goto err2;
        }
 
-       usb_host_clock = clk_get(&pdev->dev, "usb_host");
+       usb_host_clock = clk_get(&pdev->dev, NULL);
+       if (IS_ERR(usb_host_clock)) {
+               dbg("clk_get failed");
+               retval = PTR_ERR(usb_host_clock);
+               goto err3;
+       }
+
        ep93xx_start_hc(&pdev->dev);
 
        ohci_hcd_init(hcd_to_ohci(hcd));
@@ -80,6 +86,7 @@ static int usb_hcd_ep93xx_probe(const struct hc_driver *driver,
                return retval;
 
        ep93xx_stop_hc(&pdev->dev);
+err3:
        iounmap(hcd->regs);
 err2:
        release_mem_region(hcd->rsrc_start, hcd->rsrc_len);