From 46fc3296509ad3496ae028bc6431b002be1efb49 Mon Sep 17 00:00:00 2001 From: Jonathan McDowell Date: Tue, 4 Apr 2006 07:40:09 -0700 Subject: [PATCH] [PATCH] ARM: OMAP: Fix USB host on 1510/5910 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 | 7 +++++++ drivers/usb/host/ohci-omap.c | 6 +++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-omap1/board-ams-delta.c b/arch/arm/mach-omap1/board-ams-delta.c index 6178f046f12..664c3e2a70b 100644 --- a/arch/arm/mach-omap1/board-ams-delta.c +++ b/arch/arm/mach-omap1/board-ams-delta.c @@ -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) diff --git a/drivers/usb/host/ohci-omap.c b/drivers/usb/host/ohci-omap.c index d9207d86207..ced5b2e955b 100644 --- a/drivers/usb/host/ohci-omap.c +++ b/drivers/usb/host/ohci-omap.c @@ -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); -- 2.41.1