[PATCH 5/5] serial: assert DTR for serial console devices

From: Yinghai Lu
Date: Thu May 31 2007 - 17:05:37 EST


[PATCH 5/5] serial: assert DTR for serial console devices

Some RS-232 devices require DTR to be asserted before they can be
used. DTR is normally asserted in uart_startup() when the port is
opened. But we don't actually open serial console ports, so assert
DTR when the port is added.

BTW:
earlyprintk and early_uart are hard coded to set DTR/RTS.

Signed-off-by: Yinghai Lu <yinghai.lu@xxxxxxx>
Cc: Russell King <rmk@xxxxxxxxxxxxxxxx>
Cc: Andi Kleen <ak@xxxxxxx>
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@xxxxxx>

diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c
index 326020f..e5a3d8b 100644
--- a/drivers/serial/serial_core.c
+++ b/drivers/serial/serial_core.c
@@ -2303,8 +2303,14 @@ int uart_add_one_port(struct uart_driver *drv, struct uart_port *port)
* It may be that the port was not available.
*/
if (port->type != PORT_UNKNOWN &&
- port->cons && !(port->cons->flags & CON_ENABLED))
+ port->cons && !(port->cons->flags & CON_ENABLED)) {
+ /*
+ * We normally assert DTR when a port is opened, but serial
+ * console devices aren't actually opened, so do it here.
+ */
+ uart_set_mctrl(port, TIOCM_DTR);
register_console(port->cons);
+ }

/*
* Ensure UPF_DEAD is not set.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/