Hi, Bin Liu <b-liu@xxxxxx> writes: >> > On Mon, Oct 31, 2016 at 12:47:52PM +0200, Felipe Balbi wrote: >> >> Hi guys, >> >> >> >> Sorry for the patch bomb, but I wanted to make sure everyoby knows which >> >> patches are already queued up for the next window. They are still >> >> sitting in my testing/next branch, so I can still change any of them. >> >> >> >> Please make sure to go through each one of them. This very branch has >> >> been tested on Intel SKL and I couldn't find any problems so far. >> > >> > It seems you missed my comments in the RFC set, basically the set breaks >> > MUSB and other controllers. >> >> Okay, I'll go look for the original comments. > > I also commented in the RFC for two more issues. > > - some udc drivers use 0-based mult, but the new > usb_endpoint_maxp_mult() makes it 1-based. no problems there. Some will use the value as is while some will decrement 1. > - some udc drivers keeps bit 11 & 12 when calling the old > usb_endpoint_maxp(), but the new version masked bit 11 & 12 already. those have been updated to use usb_endpoint_maxp_mult(). Are there any missing? > And here is my comment in RFC/PATCH 01/45. > > " > It seems the instances which use 1 based value is less than those use 0 > based. To me it seems make sense to just return 0 based value here. well, we have to add decrement, sure. But we can use this to get rid of unnecessary branches. IOW, this: size = usb_endpoint_maxp(desc); if (usb_endpoint_xfer_isoc(desc)) size *= usb_endpoint_maxp_mult(desc); Can be written as: size = usb_endpoint_maxp(desc) * usb_endpoint_maxp_mult(desc); If this isn't valid, you have corrupt registers in your gadget driver anyway. > Some controllers like musb writes the 0 based value to a register. > " And MUSB still writes 0-based value to the register because we're decrementing 1 from the value returned by usb_endpoint_maxp_mult() -- balbi -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html