Re: usb: dwc2: usb data transmitted to incorrect usb endpoint

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Maynard,

On 1/26/2019 10:07 AM, Maynard Cabiente wrote:
> 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
> 
Please send me regdump.

Thanks,
Minas





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux