freebsd-dev/sys/dev/uart
Andriy Gapon ec6faf94c4 add support for console resuming, implement it for uart, use on x86
This change adds a new optional console method cn_resume and a kernel
console interface cnresume.  Consoles that may need to re-initialize
their hardware after suspend (e.g., because firmware does not care to do
it) will implement cn_resume.  Note that it is called in rather early
environment not unlike early boot, so the same restrictions apply.
Platform specific code, for platforms that support hardware suspend,
should call cnresume early after resume, before any console output is
expected.

This change fixes a problem with a system of mine failing to resume when
a serial console is used.  I found that the serial port was in a strange
configuration and an attempt to write to it likely resulted in an
infinite loop.

To avoid adding cn_resume method to every console driver, CONSOLE_DRIVER
macro has been extended to support optional methods.

Reviewed by:	imp, mav
MFC after:	3 weeks
Differential Revision: https://reviews.freebsd.org/D15552
2018-05-29 16:16:24 +00:00
..
uart_bus_acpi.c Do pass removing some write-only variables from the kernel. 2017-12-25 04:48:39 +00:00
uart_bus_ebus.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_bus_fdt.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_bus_isa.c Create a new ISA_PNP_INFO macro. Use this macro every where we have 2017-12-23 06:49:27 +00:00
uart_bus_pccard.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_bus_pci.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_bus_puc.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_bus_scc.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_bus.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_core.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_cpu_acpi.h
uart_cpu_arm64.c Check all entries in the ACPI uart compat table and not just the first. 2018-02-26 08:45:38 +00:00
uart_cpu_fdt.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_cpu_fdt.h Allow setting access-width for UART registers. 2017-02-27 20:08:42 +00:00
uart_cpu_powerpc.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_cpu_sparc64.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_cpu_x86.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_cpu.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dbg.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dev_imx.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dev_imx.h
uart_dev_msm.c Support for UART device found in Qualcomm Snapdragon 410E SoC. 2018-01-18 17:43:32 +00:00
uart_dev_msm.h UART Clock Selection Register holds a divider value for a supplied clock, 2018-01-18 18:19:31 +00:00
uart_dev_mvebu.c Disable EARLY_PRINTF from the Armada 3700 uart, it breaks when we want 2018-02-01 15:05:17 +00:00
uart_dev_ns8250.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dev_ns8250.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dev_pl011.c The Arm pl011 driver assumes it's running a devicetree based system. 2018-02-28 15:02:27 +00:00
uart_dev_quicc.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dev_sab82532.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dev_snps.c uart_snps: Add early printf support 2018-05-01 13:57:08 +00:00
uart_dev_ti8250.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_dev_z8530.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_if.m
uart_kbd_sun_tables.h
uart_kbd_sun.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
uart_kbd_sun.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_ppstypes.h
uart_subr.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uart_tty.c add support for console resuming, implement it for uart, use on x86 2018-05-29 16:16:24 +00:00
uart.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00