diff options
Diffstat (limited to 'drivers/usb/serial/sierra.c')
-rw-r--r-- | drivers/usb/serial/sierra.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/drivers/usb/serial/sierra.c b/drivers/usb/serial/sierra.c index d4426c038c32..c13f6e747748 100644 --- a/drivers/usb/serial/sierra.c +++ b/drivers/usb/serial/sierra.c | |||
@@ -569,7 +569,6 @@ static void sierra_indat_callback(struct urb *urb) | |||
569 | int err; | 569 | int err; |
570 | int endpoint; | 570 | int endpoint; |
571 | struct usb_serial_port *port; | 571 | struct usb_serial_port *port; |
572 | struct tty_struct *tty; | ||
573 | unsigned char *data = urb->transfer_buffer; | 572 | unsigned char *data = urb->transfer_buffer; |
574 | int status = urb->status; | 573 | int status = urb->status; |
575 | 574 | ||
@@ -581,16 +580,12 @@ static void sierra_indat_callback(struct urb *urb) | |||
581 | " endpoint %02x\n", __func__, status, endpoint); | 580 | " endpoint %02x\n", __func__, status, endpoint); |
582 | } else { | 581 | } else { |
583 | if (urb->actual_length) { | 582 | if (urb->actual_length) { |
584 | tty = tty_port_tty_get(&port->port); | 583 | tty_insert_flip_string(&port->port, data, |
585 | if (tty) { | 584 | urb->actual_length); |
586 | tty_insert_flip_string(tty, data, | 585 | tty_flip_buffer_push(&port->port); |
587 | urb->actual_length); | 586 | |
588 | tty_flip_buffer_push(tty); | 587 | usb_serial_debug_data(&port->dev, __func__, |
589 | 588 | urb->actual_length, data); | |
590 | tty_kref_put(tty); | ||
591 | usb_serial_debug_data(&port->dev, __func__, | ||
592 | urb->actual_length, data); | ||
593 | } | ||
594 | } else { | 589 | } else { |
595 | dev_dbg(&port->dev, "%s: empty read urb" | 590 | dev_dbg(&port->dev, "%s: empty read urb" |
596 | " received\n", __func__); | 591 | " received\n", __func__); |