Hi Minas, On Fri, Jan 25, 2019 at 2:54 AM Minas Harutyunyan <minas.harutyunyan@xxxxxxxxxxxx> wrote: > Besides, mentioned by you timestamp <23.918 564 900>, where BULK IN data > messed between EP1IN and EP2IN, I found in USB trace one more invalid > traffic packets sequence. See in trace at timestamp <24.169 347 217>: on > same EP1 to CBW (Mode Sense) command 31 bytes, device reply as IN data > 128 bytes and first 31 bytes are SAME from CBW. That mean buffer pointer > set incorrectly EP1IN pointer set to EP1OUT pointer. In case of DDMA > buffer pointer is descriptor pointer. > > Difference between this 2 cases: > 1. When EP different (your case) SCSI Tag's also different this is why > class driver issue reset. > 2. When EP same then (my case) SCSI Tag's are same, just wrong data from > class driver point of view, and later class driver again send Mode Sense > command which completed OK and no reset initiated. > I looked at the timestamp you mentioned <24.169 347 217> and this is actually not an issue. Our device failed the Mode Sense command in this case (for some reason) as you can see in the CSW Status (Command Failed). The data that was sent was just garbage as it will not be read by the USB Host Controller because of the CSW result. > I not found yet where from come this bug. > > Meanwhile, could you please: > 1. Test same scenario in BDMA mode > Just edit params.c file: to set g_dma_desc from true to false. > p->g_dma_desc = false; I encountered the same issue with BDMA mode several times. > 2. Provide me full debug messages log for DDMA around when the issue seen. > It's not core bug it's dwc2 bug. > I sent the USB trace with the full debug messages for DDMA directly to your e-mail as it is huge again. I hope it helps. > 3. One more request, please send me GHWCFG1-4 registers value for your core. GHWCFG1=0x00000000 GHWCFG2=0x238ffc90 GHWCFG3=0x1f8002e8 GHWCFG4=0xfe0f0020 Regards, Maynard