ChangeSet 1.1332.11.6, 2003/06/20 11:29:56-07:00, greg@kroah.com

[PATCH] USB: pl2303: add ability to report CTS and DSR status to userspace


 drivers/usb/serial/pl2303.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletion(-)


diff -Nru a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c
--- a/drivers/usb/serial/pl2303.c	Tue Jun 24 15:29:39 2003
+++ b/drivers/usb/serial/pl2303.c	Tue Jun 24 15:29:39 2003
@@ -537,16 +537,20 @@
 	struct pl2303_private *priv = usb_get_serial_port_data(port);
 	unsigned long flags;
 	unsigned int mcr;
+	unsigned int status;
 	unsigned int result;
 
 	dbg("%s (%d)", __FUNCTION__, port->number);
 
 	spin_lock_irqsave (&priv->lock, flags);
 	mcr = priv->line_control;
+	status = priv->line_status;
 	spin_unlock_irqrestore (&priv->lock, flags);
 
 	result = ((mcr & CONTROL_DTR)		? TIOCM_DTR : 0)
-		  | ((mcr & CONTROL_RTS)	? TIOCM_RTS : 0);
+		  | ((mcr & CONTROL_RTS)	? TIOCM_RTS : 0)
+		  | ((status & UART_CTS)	? TIOCM_CTS : 0)
+		  | ((status & UART_DSR)	? TIOCM_DSR : 0);
 
 	dbg("%s - result = %x", __FUNCTION__, result);