
29 Nov
2020
29 Nov
'20
6:53 p.m.
On Sun 2020-11-29 17:46:09, Pali Rohár wrote:
This patch fixes configuring FIFO for one-directional endpoints which have either RX or TX queue and therefore only one FIFO.
Without this patch if FIFO size was zero then idx was incorrectly calculated (expr. ffs(0)-1 is not zero) and size overflowed in fifosz register. This register uses has only 4 bits for FIFO size.
This patch is fixing it by setting zero size and zero address when particular endpoint does not use FIFO.
This issue caused loose of packets on USB bus in both directions and basically usbtty was unusable.
Signed-off-by: Pali Rohár pali@kernel.org
Reviewed-by: Pavel Machek pavel@ucw.cz