|
@@ -472,14 +472,9 @@ pl010_set_termios(struct uart_port *port, struct ktermios *termios,
|
|
spin_unlock_irqrestore(&uap->port.lock, flags);
|
|
spin_unlock_irqrestore(&uap->port.lock, flags);
|
|
}
|
|
}
|
|
|
|
|
|
-static void pl010_set_ldisc(struct uart_port *port)
|
|
|
|
|
|
+static void pl010_set_ldisc(struct uart_port *port, int new)
|
|
{
|
|
{
|
|
- int line = port->line;
|
|
|
|
-
|
|
|
|
- if (line >= port->state->port.tty->driver->num)
|
|
|
|
- return;
|
|
|
|
-
|
|
|
|
- if (port->state->port.tty->ldisc->ops->num == N_PPS) {
|
|
|
|
|
|
+ if (new == N_PPS) {
|
|
port->flags |= UPF_HARDPPS_CD;
|
|
port->flags |= UPF_HARDPPS_CD;
|
|
pl010_enable_ms(port);
|
|
pl010_enable_ms(port);
|
|
} else
|
|
} else
|