On Tue, 2010-03-02 at 14:06 -0800, Sarah Sharp wrote: > On Tue, Mar 02, 2010 at 06:36:48PM +0800, Libin wrote: > > >From 050df8768e10e58d01bbc24d8ee256d864cc6fff Mon Sep 17 00:00:00 2001 > > From: Andiry Xu <andiry.xu@xxxxxxx> > > Date: Fri, 26 Feb 2010 17:38:15 +0800 > > Subject: [PATCH 2/7] xHCI: Isoc transfer URB enqueue > > > > This patch implements isoc transfer URB enqueue part. > > > > Split the isoc URB into isoc TDs and insert them to the isoc endpoint > > transfer ring. A isoc TD can be made up of one isoc TRB and several normal > > TRBs (if needed). > > Can you combine patches 2 and 3 into one patch? This is very confusing > to review. > > Also, please add more description to your commit about what it means to > have multiple TDs for one URB added to the endpoint list. Specifically, > I want to know what your plan is for when an isochronous URB should be > given back, and what happens to hcpriv, the isochronous TDs, and the > endpoint's TD lists when an isochronous URB is canceled (dequeued) or > the hardware dies. I can probably figure it out from the code, but I > would rather have a statement of your intentions in case there is a bug > in the code. :) > > Sarah Sharp > OK, I'll merge patch 2 and 3. I split them because they have different functions. I'll refine the patch description. The steps to insert isoc TDs into isoc endpoint transfer ring are described in xHCI spec, I'll elaborate them. I think the giveback and dequeue part are done in handle_tx_event or after it, right? This patch only split isoc urb into isoc TDs and put them on the transfer ring, then ring the ep doorbell. Do I need to take care of the extreme situations in the enqueue patch? -- Thanks, Andiry -- 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