On Fri, 2021-03-05 at 12:13 +0300, Sergei Shtylyov wrote: > Hello! > > On 05.03.2021 12:02, Chunfeng Yun wrote: > > > Tune the boundary for FS/LS ESIT due to CS: > > For ISOC out-ep, the controller starts transfer data after > > the first SS; for others, the data is already transfered > > Transferred. Ok > > > before the last CS. > > > > Signed-off-by: Chunfeng Yun <chunfeng.yun@xxxxxxxxxxxx> > > --- > > drivers/usb/host/xhci-mtk-sch.c | 24 +++++++++++++++++++----- > > 1 file changed, 19 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/usb/host/xhci-mtk-sch.c b/drivers/usb/host/xhci-mtk-sch.c > > index 8950d1f10a7f..e3b18dfca874 100644 > > --- a/drivers/usb/host/xhci-mtk-sch.c > > +++ b/drivers/usb/host/xhci-mtk-sch.c > > @@ -513,22 +513,35 @@ static void update_sch_tt(struct usb_device *udev, > > list_del(&sch_ep->tt_endpoint); > > } > > > > +static u32 get_esit_boundary(struct mu3h_sch_ep_info *sch_ep) > > +{ > > + u32 boundary = sch_ep->esit; > > + > > + if (sch_ep->sch_tt) { /* LS/FS with TT */ > > + /* tune for CS */ > > + if (sch_ep->ep_type != ISOC_OUT_EP) > > + boundary += 1; > > Why not: > > boundary++; Forgot it, it's modified from "boundary = sch_ep->esit + 1;" Thanks > > > + else if (boundary > 1) /* normally esit >= 8 for FS/LS */ > > + boundary -= 1; > > boundary--; > > [...] > > MBR, Sergei