summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Moolenaar <marcel@FreeBSD.org>2004-11-14 23:12:14 +0000
committerMarcel Moolenaar <marcel@FreeBSD.org>2004-11-14 23:12:14 +0000
commit54e2bcc7add7bc78d5bc253c597bda0f9b67052a (patch)
treebdc6452d228c1213096f5f8255b04a8086e25b63
parent1b1aa7e4652708cd34bc4893cc4ddd19988660b0 (diff)
Notes
-rw-r--r--sys/dev/uart/uart_bus.h1
-rw-r--r--sys/dev/uart/uart_core.c5
2 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/uart/uart_bus.h b/sys/dev/uart/uart_bus.h
index 4a2d8aad71f3..cc9ce4df5a75 100644
--- a/sys/dev/uart/uart_bus.h
+++ b/sys/dev/uart/uart_bus.h
@@ -80,6 +80,7 @@
#define UART_IOCTL_BREAK 1
#define UART_IOCTL_IFLOW 2
#define UART_IOCTL_OFLOW 3
+#define UART_IOCTL_BAUD 4
/*
* UART class & instance (=softc)
diff --git a/sys/dev/uart/uart_core.c b/sys/dev/uart/uart_core.c
index 9740cffc28ea..ca89c5cfd0e3 100644
--- a/sys/dev/uart/uart_core.c
+++ b/sys/dev/uart/uart_core.c
@@ -391,6 +391,11 @@ uart_bus_attach(device_t dev)
}
if (sc->sc_sysdev != NULL) {
+ if (sc->sc_sysdev->baudrate == 0) {
+ if (UART_IOCTL(sc, UART_IOCTL_BAUD,
+ (intptr_t)&sc->sc_sysdev->baudrate) != 0)
+ sc->sc_sysdev->baudrate = -1;
+ }
switch (sc->sc_sysdev->type) {
case UART_DEV_CONSOLE:
device_printf(dev, "console");