Dropped characters in serial connection without flow control

From: Peter Stuge
Date: Wed Oct 28 2009 - 13:59:45 EST


Peter Stuge wrote:
> I'm writing a line discipline for a serial port multiplexing
> hardware

There is no(!) support for flow control in the hardware.

Is there anything I can do to reduce serial port interrupt latency or
otherwise try to mitigate this in my ldisc or in Linux in general? I
realize that it will never be quite reliable without any flow
control.

Baud rate is currently 115200 but could become 57600.

Is there something in particular that I can do wrong or right in
the ldisc?

Might it be a good idea to add a circ_buf in the receiver path and
move out any and all attempts at parsing incoming data? Currently
it has a simple message buffer and a state machine in there.

Characters are dropped both going out and coming in. Nothing to do
about the out direction, but maybe input can be made reliable?

I don't expect it, but maybe you know a trick?


//Peter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/