cvs commit: src/sys/dev/uart uart_dev_ns8250.c
Marcel Moolenaar
marcel at FreeBSD.org
Tue Apr 3 01:21:11 UTC 2007
marcel 2007-04-03 01:21:10 UTC
FreeBSD src repository
Modified files:
sys/dev/uart uart_dev_ns8250.c
Log:
Don't use a time-limiting loop that's defined in terms of the baudrate
in the putc() method. Likewise, in the getc() method, don't check for
received characters with an interval defined in terms of the baudrate.
In both cases it works equally well to implement a fixed delay. More
importantly, it avoids calculating a delay that's roughly 1/10th the
time it takes to send/receive a character. The calculation is costly
and happens for every character sent or received, affecting low-level
console or debug port performance significantly. Secondly, when the
RCLK is not available or unreliable, the delays could disrupt normal
operation.
The fixed delay is 1/10th the time it takes to send a character at
230400 bps.
Revision Changes Path
1.27 +7 -13 src/sys/dev/uart/uart_dev_ns8250.c
More information about the cvs-src
mailing list