diff options
Diffstat (limited to 'drivers/usb/serial/ark3116.c')
-rw-r--r-- | drivers/usb/serial/ark3116.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/usb/serial/ark3116.c b/drivers/usb/serial/ark3116.c index a88882c0e237..cbd904b8fba5 100644 --- a/drivers/usb/serial/ark3116.c +++ b/drivers/usb/serial/ark3116.c | |||
@@ -674,7 +674,6 @@ static void ark3116_process_read_urb(struct urb *urb) | |||
674 | { | 674 | { |
675 | struct usb_serial_port *port = urb->context; | 675 | struct usb_serial_port *port = urb->context; |
676 | struct ark3116_private *priv = usb_get_serial_port_data(port); | 676 | struct ark3116_private *priv = usb_get_serial_port_data(port); |
677 | struct tty_struct *tty; | ||
678 | unsigned char *data = urb->transfer_buffer; | 677 | unsigned char *data = urb->transfer_buffer; |
679 | char tty_flag = TTY_NORMAL; | 678 | char tty_flag = TTY_NORMAL; |
680 | unsigned long flags; | 679 | unsigned long flags; |
@@ -689,10 +688,6 @@ static void ark3116_process_read_urb(struct urb *urb) | |||
689 | if (!urb->actual_length) | 688 | if (!urb->actual_length) |
690 | return; | 689 | return; |
691 | 690 | ||
692 | tty = tty_port_tty_get(&port->port); | ||
693 | if (!tty) | ||
694 | return; | ||
695 | |||
696 | if (lsr & UART_LSR_BRK_ERROR_BITS) { | 691 | if (lsr & UART_LSR_BRK_ERROR_BITS) { |
697 | if (lsr & UART_LSR_BI) | 692 | if (lsr & UART_LSR_BI) |
698 | tty_flag = TTY_BREAK; | 693 | tty_flag = TTY_BREAK; |
@@ -703,12 +698,11 @@ static void ark3116_process_read_urb(struct urb *urb) | |||
703 | 698 | ||
704 | /* overrun is special, not associated with a char */ | 699 | /* overrun is special, not associated with a char */ |
705 | if (lsr & UART_LSR_OE) | 700 | if (lsr & UART_LSR_OE) |
706 | tty_insert_flip_char(tty, 0, TTY_OVERRUN); | 701 | tty_insert_flip_char(&port->port, 0, TTY_OVERRUN); |
707 | } | 702 | } |
708 | tty_insert_flip_string_fixed_flag(tty, data, tty_flag, | 703 | tty_insert_flip_string_fixed_flag(&port->port, data, tty_flag, |
709 | urb->actual_length); | 704 | urb->actual_length); |
710 | tty_flip_buffer_push(tty); | 705 | tty_flip_buffer_push(&port->port); |
711 | tty_kref_put(tty); | ||
712 | } | 706 | } |
713 | 707 | ||
714 | static struct usb_serial_driver ark3116_device = { | 708 | static struct usb_serial_driver ark3116_device = { |