diff options
author | Dinh Nguyen <Dinh.Nguyen@freescale.com> | 2010-05-04 11:03:01 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-05-20 16:21:40 -0400 |
commit | 88e3b59b5adce5b12e205af0e34d518ba0dcdc0c (patch) | |
tree | 050fa0b7859e1fa459e91fe6caafeedc36fb64d5 | |
parent | 97dc7c61f1a25e906c0eb65fac2573e1ce063d63 (diff) |
USB: mxc: gadget: Fix bitfield for calculating maximum packet size
The max packet length bit mask used for isochronous endpoints
should be 0x7FF instead of 0x8FF. 0x8FF will actually clear
higher-order bits in the max packet length field.
This patch applies to 2.6.34-rc6.
Signed-off-by: Dinh Nguyen <Dinh.Nguyen@freescale.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/usb/gadget/fsl_udc_core.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/gadget/fsl_udc_core.c b/drivers/usb/gadget/fsl_udc_core.c index fa3d142ba64d..08a9a62a39e3 100644 --- a/drivers/usb/gadget/fsl_udc_core.c +++ b/drivers/usb/gadget/fsl_udc_core.c | |||
@@ -489,7 +489,7 @@ static int fsl_ep_enable(struct usb_ep *_ep, | |||
489 | case USB_ENDPOINT_XFER_ISOC: | 489 | case USB_ENDPOINT_XFER_ISOC: |
490 | /* Calculate transactions needed for high bandwidth iso */ | 490 | /* Calculate transactions needed for high bandwidth iso */ |
491 | mult = (unsigned char)(1 + ((max >> 11) & 0x03)); | 491 | mult = (unsigned char)(1 + ((max >> 11) & 0x03)); |
492 | max = max & 0x8ff; /* bit 0~10 */ | 492 | max = max & 0x7ff; /* bit 0~10 */ |
493 | /* 3 transactions at most */ | 493 | /* 3 transactions at most */ |
494 | if (mult > 3) | 494 | if (mult > 3) |
495 | goto en_done; | 495 | goto en_done; |