aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/fsl_udc_core.c
diff options
context:
space:
mode:
authorDinh Nguyen <Dinh.Nguyen@freescale.com>2010-05-04 11:03:01 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-05-20 16:21:40 -0400
commit88e3b59b5adce5b12e205af0e34d518ba0dcdc0c (patch)
tree050fa0b7859e1fa459e91fe6caafeedc36fb64d5 /drivers/usb/gadget/fsl_udc_core.c
parent97dc7c61f1a25e906c0eb65fac2573e1ce063d63 (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>
Diffstat (limited to 'drivers/usb/gadget/fsl_udc_core.c')
-rw-r--r--drivers/usb/gadget/fsl_udc_core.c2
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 fa3d142ba64..08a9a62a39e 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;