diff options
author | gonzo <gonzo@FreeBSD.org> | 2012-08-30 20:31:53 +0000 |
---|---|---|
committer | gonzo <gonzo@FreeBSD.org> | 2012-08-30 20:31:53 +0000 |
commit | da02f17baac746980ae553303880f79449d0a766 (patch) | |
tree | 113cfc5a71598be83833344242de9475f7ea0b43 /sys/dev/uart/uart_bus_fdt.c | |
parent | 353407bd01046f0b9832399ddf2d649956ad5bff (diff) | |
download | FreeBSD-src-da02f17baac746980ae553303880f79449d0a766.zip FreeBSD-src-da02f17baac746980ae553303880f79449d0a766.tar.gz |
Add PrimeCell UART (PL011) driver
Obtained from: Semihalf
Diffstat (limited to 'sys/dev/uart/uart_bus_fdt.c')
-rw-r--r-- | sys/dev/uart/uart_bus_fdt.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/uart/uart_bus_fdt.c b/sys/dev/uart/uart_bus_fdt.c index 6517007..8dbbb25 100644 --- a/sys/dev/uart/uart_bus_fdt.c +++ b/sys/dev/uart/uart_bus_fdt.c @@ -105,6 +105,8 @@ uart_fdt_probe(device_t dev) sc->sc_class = &uart_ns8250_class; else if (ofw_bus_is_compatible(dev, "lpc,uart")) sc->sc_class = &uart_lpc_class; + else if (ofw_bus_is_compatible(dev, "arm,pl011")) + sc->sc_class = &uart_pl011_class; else return (ENXIO); @@ -188,6 +190,8 @@ uart_cpu_getdev(int devtype, struct uart_devinfo *di) class = &uart_lpc_class; if (fdt_is_compatible(node, "ns16550")) class = &uart_ns8250_class; + if (fdt_is_compatible(node, "arm,pl011")) + class = &uart_pl011_class; di->bas.chan = 0; di->bas.regshft = (u_int)shift; |