On Wednesday 07 March 2007 8:45 am, Pandita, Vikram wrote: > > Alan > If the peripheral driver is to decide to send a ZLP or not based on the > length of data transfer, then the API given to Gadget driver of req.zero > is redundant. > > My understanding is that the Gadget driver should respect the API and > set the req.zero responsibly and hence the following fix suggested in > Gadget Zero. Else the zero flag can be removed?
For *control transfers only* the zero flag should not be needed. Some gadget drivers set it, primarily for paranoia. For bulk transfers, see responses from both Alan and myself. > Signed-off-by: Vikram Pandita <[EMAIL PROTECTED]> NAK. > --- > diff -purN a/drivers/usb/gadget/zero.c b/drivers/usb/gadget/zero.c > --- a/drivers/usb/gadget/zero.c 2007-02-02 18:33:34.000000000 +0530 > +++ b/drivers/usb/gadget/zero.c 2007-02-07 17:28:47.000000000 +0530 > @@ -1072,7 +1072,8 @@ unknown: > /* respond with data transfer before status phase? */ > if (value >= 0) { > req->length = value; > - req->zero = value < w_length; > + req->zero = value < w_length && > + (value % gadget->ep0->maxpacket) == 0; > value = usb_ep_queue (gadget->ep0, req, GFP_ATOMIC); > if (value < 0) { > DBG (dev, "ep_queue --> %d\n", value); > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel