]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
[PATCH] ARM: OMAP: Fix USB host on 1510/5910
authorJonathan McDowell <noodles@earth.li>
Tue, 4 Apr 2006 14:40:09 +0000 (07:40 -0700)
committerTony Lindgren <tony@atomide.com>
Tue, 4 Apr 2006 14:40:09 +0000 (07:40 -0700)
The OMAP5910 datasheet says that the lb clock needs enabled for USB
to work, so it seems reasonable that this is required.

arch/arm/mach-omap1/board-ams-delta.c
drivers/usb/host/ohci-omap.c

index 6178f046f128c59e80165117d60036d7e5e950b9..664c3e2a70b0adee244cdb54faa4b5355187a8b9 100644 (file)
@@ -80,8 +80,15 @@ static struct omap_uart_config ams_delta_uart_config __initdata = {
        .enabled_uarts = 1,
 };
 
+static struct omap_usb_config ams_delta_usb_config __initdata = {
+       .register_host  = 1,
+       .hmc_mode       = 16,
+       .pins[0]        = 2,
+};
+
 static struct omap_board_config_kernel ams_delta_config[] = {
        { OMAP_TAG_UART,        &ams_delta_uart_config },
+       { OMAP_TAG_USB,         &ams_delta_usb_config },
 };
 
 static void __init ams_delta_init(void)
index d9207d86207fdea871ee28fdc7fef29603ab4da6..ced5b2e955bde7456ea7cd3c73181927d7fbd9f3 100644 (file)
@@ -353,7 +353,11 @@ int usb_hcd_omap_probe (const struct hc_driver *driver,
        if (IS_ERR(usb_host_ck))
                return PTR_ERR(usb_host_ck);
 
-       usb_dc_ck = clk_get(0, "usb_dc_ck");
+       if (!cpu_is_omap1510())
+               usb_dc_ck = clk_get(0, "usb_dc_ck");
+       else
+               usb_dc_ck = clk_get(0, "lb_ck");
+
        if (IS_ERR(usb_dc_ck)) {
                clk_put(usb_host_ck);
                return PTR_ERR(usb_dc_ck);