summaryrefslogtreecommitdiff
path: root/drivers/usb/serial/ftdi_sio.c
diff options
context:
space:
mode:
authorUwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>2011-10-10 19:24:34 +0400
committerGreg Kroah-Hartman <gregkh@suse.de>2011-10-19 00:46:30 +0400
commitac295f39249896f100ab1c49e2cbc269d176bf48 (patch)
treeb3be61f20063f9c20048d446dd81dcb66a6d2a5c /drivers/usb/serial/ftdi_sio.c
parentda7fbb6dd061fc4e2945d63cf04f843063dd51e5 (diff)
downloadlinux-ac295f39249896f100ab1c49e2cbc269d176bf48.tar.xz
USB: ftdi_sio.c: Fill LSR fields of the ftdi async_icount structure
Signed-off-by: Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/serial/ftdi_sio.c')
-rw-r--r--drivers/usb/serial/ftdi_sio.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
index a865df81a551..372ae5baa632 100644
--- a/drivers/usb/serial/ftdi_sio.c
+++ b/drivers/usb/serial/ftdi_sio.c
@@ -1954,6 +1954,14 @@ static int ftdi_process_packet(struct tty_struct *tty,
N.B. packet may be processed more than once, but differences
are only processed once. */
status = packet[0] & FTDI_STATUS_B0_MASK;
+ if (status & FTDI_RS0_CTS)
+ priv->icount.cts++;
+ if (status & FTDI_RS0_DSR)
+ priv->icount.dsr++;
+ if (status & FTDI_RS0_RI)
+ priv->icount.rng++;
+ if (status & FTDI_RS0_RLSD)
+ priv->icount.dcd++;
if (status != priv->prev_status) {
priv->diff_status |= status ^ priv->prev_status;
wake_up_interruptible(&priv->delta_msr_wait);