]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/serial/mpc52xx_uart.c
stop_machine: Wean existing callers off stop_machine_run()
[linux-2.6-omap-h63xx.git] / drivers / serial / mpc52xx_uart.c
index 7a3625f52a03b837551697cf2bc23b54bc488d32..36126070d9af8ad10071600b4d53bdb9d947d661 100644 (file)
@@ -732,7 +732,7 @@ static struct uart_ops mpc52xx_uart_ops = {
 static inline int
 mpc52xx_uart_int_rx_chars(struct uart_port *port)
 {
-       struct tty_struct *tty = port->info->tty;
+       struct tty_struct *tty = port->info->port.tty;
        unsigned char ch, flag;
        unsigned short status;
 
@@ -783,7 +783,9 @@ mpc52xx_uart_int_rx_chars(struct uart_port *port)
                }
        }
 
+       spin_unlock(&port->lock);
        tty_flip_buffer_push(tty);
+       spin_lock(&port->lock);
 
        return psc_ops->raw_rx_rdy(port);
 }