freebsd-dev/sys/dev/uart
Marcel Moolenaar 35777a2a79 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.
2007-04-03 01:21:10 +00:00
..
uart_bus_acpi.c Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
uart_bus_ebus.c Remove unused variable 'error'. Forgotten in previous commit. 2006-04-02 21:58:09 +00:00
uart_bus_isa.c Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
uart_bus_pccard.c o Style(9) nits 2005-10-28 06:27:53 +00:00
uart_bus_pci.c o Add 5 Timedia single port serial cards. 2006-04-27 17:08:30 +00:00
uart_bus_puc.c Rewrite of puc(4). Significant changes are: 2006-04-28 21:21:53 +00:00
uart_bus_scc.c Add scc(4), a driver for serial communications controllers. These 2006-03-30 18:33:22 +00:00
uart_bus.h Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_core.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_cpu_amd64.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_cpu_i386.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_cpu_ia64.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_cpu_pc98.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_cpu_powerpc.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_cpu_sparc64.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_cpu.h Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_dbg.c Eliminate gdb_checkc member from GDB_DBGPORT(), it is never used. 2006-05-26 11:54:32 +00:00
uart_dev_ns8250.c Don't use a time-limiting loop that's defined in terms of the baudrate 2007-04-03 01:21:10 +00:00
uart_dev_sab82532.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_dev_z8530.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_if.m Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
uart_kbd_sun_tables.h
uart_kbd_sun.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_kbd_sun.h - In sunkbd_probe_keyboard() don't bother to determine the keyboard layout 2006-11-02 00:01:15 +00:00
uart_subr.c Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00
uart_tty.c Properly propagate overrun conditions to the TTY layer. 2006-07-27 00:07:10 +00:00
uart.h Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00:22 +00:00