Hi Minas, On Thu, Jan 31, 2019 at 9:34 AM Minas Harutyunyan <minas.harutyunyan@xxxxxxxxxxxx> wrote: > Hi Maynard, > > On 1/31/2019 3:36 AM, Maynard Cabiente wrote: > > Hi Minas, > > > > On Wed, Jan 30, 2019 at 9:02 AM Minas Harutyunyan > > <minas.harutyunyan@xxxxxxxxxxxx> wrote: > >> Root cause of data messing between IN EP's because all IN EP's use same > >> TXFIFO. TxFIFO number 7. See DIEPCTL's, bits 22-25 txfnum, from debug logs: > >> > >> EP1IN DIEPCTL = 0x11ca8200 > >> EP2IN DIEPCTL = 0x11ca8200 > >> EP5IN DIEPCTL = 0x11ce8008 > >> > >> Please apply below temporary patch for testing, in > >> dwc2_hsotg_ep_enable() function add follow row to reset previous value > >> of TxFIFO num: > >> > >> @@ -4005,6 +4016,7 @@ static int dwc2_hsotg_ep_enable(struct usb_ep *ep, > >> ret = -ENOMEM; > >> goto error1; > >> } > >> + epctrl &= ~(DXEPCTL_TXFNUM_LIMIT << DXEPCTL_TXFNUM_SHIFT); > >> hsotg->fifo_map |= 1 << fifo_index; > >> epctrl |= DXEPCTL_TXFNUM(fifo_index); > >> hs_ep->fifo_index = fifo_index; > >> > > > > Wow! That actually fixes the issue. That's awesome that you found the > > culprit. Many thanks! > > > Thank you for good news! > > > I'm assuming that since you mentioned temporary patch that this is not > > the final patch that we should use. Is this assumption right? > > > Temporary - I mean just for testing by you until submitting to mainline. > Nothing else should be updated. > I submitted this patch "[PATCH] usb: dwc2: Fix EP TxFIFO number > setting". Could you please add your "Tested-by" tag. > > Thanks, > Minas > Will do. Thanks again. Regards, Maynard