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>
if (list_empty(&dep->request_list))
last_one = 1;
- /*
- * FIXME we shouldn't need to set LST bit always but we are
- * facing some weird problem with the Hardware where it doesn't
- * complete even though it has been previously started.
- *
- * 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;
+ dwc3_prepare_one_trb(dep, req, last_one);
+
+ if (last_one)
+ break;
}
}