diff options
author | David Lopo <dlopo@chipidea.mips.com> | 2009-04-16 17:35:24 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-04-23 17:15:27 -0400 |
commit | f23e649bb605523b960434c5e18c8e9ad3f0b5bd (patch) | |
tree | 7c06a5e7d461fd519b1b31677a1dd1f1de965e21 /drivers/usb/gadget/ci13xxx_udc.c | |
parent | 46c6e93faa85d1362e1d127dc28cf9d0b304a6f1 (diff) |
USB: Gadget: MIPS CI13xxx UDC bugfixes
Bug Fix: high speed detection in LPM mode
Bug Fix: max packet size configuration when switching between HS and FS
Signed-off-by: David Lopo <dlopo@chipidea.mips.com>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/gadget/ci13xxx_udc.c')
-rw-r--r-- | drivers/usb/gadget/ci13xxx_udc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/gadget/ci13xxx_udc.c b/drivers/usb/gadget/ci13xxx_udc.c index 22c65960c429..05af8813da5c 100644 --- a/drivers/usb/gadget/ci13xxx_udc.c +++ b/drivers/usb/gadget/ci13xxx_udc.c | |||
@@ -142,7 +142,7 @@ static struct { | |||
142 | #define CAP_DEVICEADDR (0x014UL) | 142 | #define CAP_DEVICEADDR (0x014UL) |
143 | #define CAP_ENDPTLISTADDR (0x018UL) | 143 | #define CAP_ENDPTLISTADDR (0x018UL) |
144 | #define CAP_PORTSC (0x044UL) | 144 | #define CAP_PORTSC (0x044UL) |
145 | #define CAP_DEVLC (0x0B4UL) | 145 | #define CAP_DEVLC (0x084UL) |
146 | #define CAP_USBMODE (hw_bank.lpm ? 0x0C8UL : 0x068UL) | 146 | #define CAP_USBMODE (hw_bank.lpm ? 0x0C8UL : 0x068UL) |
147 | #define CAP_ENDPTSETUPSTAT (hw_bank.lpm ? 0x0D8UL : 0x06CUL) | 147 | #define CAP_ENDPTSETUPSTAT (hw_bank.lpm ? 0x0D8UL : 0x06CUL) |
148 | #define CAP_ENDPTPRIME (hw_bank.lpm ? 0x0DCUL : 0x070UL) | 148 | #define CAP_ENDPTPRIME (hw_bank.lpm ? 0x0DCUL : 0x070UL) |
@@ -1986,6 +1986,8 @@ static int ep_enable(struct usb_ep *ep, | |||
1986 | do { | 1986 | do { |
1987 | dbg_event(_usb_addr(mEp), "ENABLE", 0); | 1987 | dbg_event(_usb_addr(mEp), "ENABLE", 0); |
1988 | 1988 | ||
1989 | mEp->qh[mEp->dir].ptr->cap = 0; | ||
1990 | |||
1989 | if (mEp->type == USB_ENDPOINT_XFER_CONTROL) | 1991 | if (mEp->type == USB_ENDPOINT_XFER_CONTROL) |
1990 | mEp->qh[mEp->dir].ptr->cap |= QH_IOS; | 1992 | mEp->qh[mEp->dir].ptr->cap |= QH_IOS; |
1991 | else if (mEp->type == USB_ENDPOINT_XFER_ISOC) | 1993 | else if (mEp->type == USB_ENDPOINT_XFER_ISOC) |