I am sending data via a 16550a UART that has a 16 byte FIFO. When I send 26 bytes, I see 16 bytes transmitted at correct baud rate. Then a 19 ms pause and then 12 bytes.
I am not using interrupts.
I am not sure where to start debugging this. I send from a kernel module and setup terminal with these flags:
c_cflag is CLOCAL CREAD CS8 B38400 HUPCL
other flags are 0. I use driver->ops->write() to send one char at a time.
Running Linux kernel v5.10 on an embedded SoC with serial8250 driver.
i ended up changing the uart fifo size from 16 bytes to 32. and the 8250 driver to 32 from 16bytes. it now works for what i need. thanks