freebsd-src/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.h Don't expose the uart_ops structure directly, but instead have 2007-04-02 22:00: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_bus_acpi.c
uart_bus_ebus.c
uart_bus_isa.c
uart_bus_pccard.c
uart_bus_pci.c
uart_bus_puc.c
uart_bus_scc.c
uart_core.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_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_dbg.c
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
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
uart_kbd_sun_tables.h
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