usb: dwc3: gadget: don't force 'LST' always
the LST bit is to be set on the last of a series of consecutive TRBs. We had a workaround for a problem where data would get corrupted but that doesn't happen anymore. It's likely that it was caused by some FPGA instability during development phase. Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
parent
68e823e24a
commit
42f8eb7a10
@ -672,16 +672,10 @@ static void dwc3_prepare_trbs(struct dwc3_ep *dep, bool starting)
|
|||||||
if (list_empty(&dep->request_list))
|
if (list_empty(&dep->request_list))
|
||||||
last_one = 1;
|
last_one = 1;
|
||||||
|
|
||||||
/*
|
dwc3_prepare_one_trb(dep, req, last_one);
|
||||||
* FIXME we shouldn't need to set LST bit always but we are
|
|
||||||
* facing some weird problem with the Hardware where it doesn't
|
if (last_one)
|
||||||
* complete even though it has been previously started.
|
break;
|
||||||
*
|
|
||||||
* While we're debugging the problem, as a workaround to
|
|
||||||
* multiple TRBs handling, use only one TRB at a time.
|
|
||||||
*/
|
|
||||||
dwc3_prepare_one_trb(dep, req, true);
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user