summaryrefslogtreecommitdiffstats
path: root/sys/dev/uart/uart_bus_fdt.c
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2013-08-21 14:33:02 +0000
committerian <ian@FreeBSD.org>2013-08-21 14:33:02 +0000
commit13ce4e66a1bca0366fbfd59ac247c90903fbccbd (patch)
tree65abce488aee09faa6bb84b4d4accd161b605cbb /sys/dev/uart/uart_bus_fdt.c
parent29f631efba73763ec8798a40c3ff8ca7dee4e9ff (diff)
downloadFreeBSD-src-13ce4e66a1bca0366fbfd59ac247c90903fbccbd.zip
FreeBSD-src-13ce4e66a1bca0366fbfd59ac247c90903fbccbd.tar.gz
Add support for uarts other than the serial console in TI OMAP SoCs.
The TI uart hardware is ns16550-compatible, except that before it can be used the clocks and power have to be enabled and a non-standard mode control register has to be set to put the device in uart mode (as opposed to irDa or other serial protocols). This adds the extra code in an extension to the standard ns8250 probe routine, and the rest of the driver is just the standard ns8250 code.
Diffstat (limited to 'sys/dev/uart/uart_bus_fdt.c')
-rw-r--r--sys/dev/uart/uart_bus_fdt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/uart/uart_bus_fdt.c b/sys/dev/uart/uart_bus_fdt.c
index 064a7df..da84f26 100644
--- a/sys/dev/uart/uart_bus_fdt.c
+++ b/sys/dev/uart/uart_bus_fdt.c
@@ -111,6 +111,8 @@ uart_fdt_probe(device_t dev)
sc->sc_class = &uart_s3c2410_class;
else if (ofw_bus_is_compatible(dev, "cadence,uart"))
sc->sc_class = &uart_cdnc_class;
+ else if (ofw_bus_is_compatible(dev, "ti,ns16550"))
+ sc->sc_class = &uart_ti8250_class;
else if (ofw_bus_is_compatible(dev, "ns16550"))
sc->sc_class = &uart_ns8250_class;
else
OpenPOWER on IntegriCloud