From: Dinh Nguyen Date: Tue, 4 May 2010 15:03:01 +0000 (-0500) Subject: USB: mxc: gadget: Fix bitfield for calculating maximum packet size X-Git-Tag: v3.0~4929^2~112 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=88e3b59b5adce5b12e205af0e34d518ba0dcdc0c;p=platform%2Fkernel%2Flinux-amlogic.git 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 Cc: stable Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/gadget/fsl_udc_core.c b/drivers/usb/gadget/fsl_udc_core.c index fa3d142..08a9a62 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, case USB_ENDPOINT_XFER_ISOC: /* Calculate transactions needed for high bandwidth iso */ mult = (unsigned char)(1 + ((max >> 11) & 0x03)); - max = max & 0x8ff; /* bit 0~10 */ + max = max & 0x7ff; /* bit 0~10 */ /* 3 transactions at most */ if (mult > 3) goto en_done;