diff options
author | Ajay Kumar Gupta <ajay.gupta@ti.com> | 2008-09-11 04:53:20 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-10-17 17:40:58 -0400 |
commit | ae5ad2963939d24eb77b8fa725d0703dc0f97a47 (patch) | |
tree | c3352e773109d9b54086717363e95ebbf9301da8 /drivers/usb/musb | |
parent | eaa3246e7dbddd7a029bef22e8b80cbab03466a2 (diff) |
OMAP:MUSB: Fixes the TT programming.
Fixes enumeration failures when a USB device attached to a LS hub is
connected to OMAP EVM via HS hub. This is fixed by correctly
programming hub address register in enqueue path.
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/musb')
-rw-r--r-- | drivers/usb/musb/musb_host.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/usb/musb/musb_host.c b/drivers/usb/musb/musb_host.c index 8b4be012669a..fcd72b54c851 100644 --- a/drivers/usb/musb/musb_host.c +++ b/drivers/usb/musb/musb_host.c | |||
@@ -1873,7 +1873,11 @@ static int musb_urb_enqueue( | |||
1873 | /* set up tt info if needed */ | 1873 | /* set up tt info if needed */ |
1874 | if (urb->dev->tt) { | 1874 | if (urb->dev->tt) { |
1875 | qh->h_port_reg = (u8) urb->dev->ttport; | 1875 | qh->h_port_reg = (u8) urb->dev->ttport; |
1876 | qh->h_addr_reg |= 0x80; | 1876 | if (urb->dev->tt->hub) |
1877 | qh->h_addr_reg = | ||
1878 | (u8) urb->dev->tt->hub->devnum; | ||
1879 | if (urb->dev->tt->multi) | ||
1880 | qh->h_addr_reg |= 0x80; | ||
1877 | } | 1881 | } |
1878 | } | 1882 | } |
1879 | } | 1883 | } |