Hi, On Wed, Aug 22, 2012 at 02:39:50PM +0530, Pratyush Anand wrote: > Hi Felip, > > I am already discussing it with SNPS, but if you have observed > following with current code.. > > Out of two generation condition for missed isoc, only first is > handled with current code. > > 1. when the host does not poll for all the data. > 2. because of application-side delays that prevent all the data from > being transferred in programmed microframe. > > I have observed that 2nd case does not work. > I tried following , still it does not work. > > a. issue end transfer (dwc3_stop_active_transfer) when first missed > trb is observed and wait for 100 us. > b. Now do not issue start transfer from ep_queue (sceneario 3), > rather wait for xfernotready and then issue start transfer. > > I see that second start transfer is isused with sufficient future > frame number, but no xferinprogress is received. all TRBs remains > with HWO=1. :( Aha, that's a great finding :-) When you miss the ISOC, I believe you should make sure to reclaim all TRBs (drop the HWO bit) and then issue another start transfer. No ? -- balbi
Attachment:
signature.asc
Description: Digital signature