serial: mxs-auart: enable PPS support
authorJanusz Uzycki <j.uzycki@elproma.com.pl>
Fri, 10 Oct 2014 16:53:27 +0000 (18:53 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Nov 2014 22:57:18 +0000 (14:57 -0800)
Enables PPS support in mxs-auart serial driver to make PPS API working.

Signed-off-by: Janusz Uzycki <j.uzycki@elproma.com.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/mxs-auart.c

index 088f1e1..386b528 100644 (file)
@@ -784,6 +784,16 @@ static void mxs_auart_settermios(struct uart_port *u,
                mxs_auart_disable_ms(u);
 }
 
+static void mxs_auart_set_ldisc(struct uart_port *port, int new)
+{
+       if (new == N_PPS) {
+               port->flags |= UPF_HARDPPS_CD;
+               mxs_auart_enable_ms(port);
+       } else {
+               port->flags &= ~UPF_HARDPPS_CD;
+       }
+}
+
 static irqreturn_t mxs_auart_irq_handle(int irq, void *context)
 {
        u32 istat;
@@ -949,6 +959,7 @@ static struct uart_ops mxs_auart_ops = {
        .startup        = mxs_auart_startup,
        .shutdown       = mxs_auart_shutdown,
        .set_termios    = mxs_auart_settermios,
+       .set_ldisc      = mxs_auart_set_ldisc,
        .type           = mxs_auart_type,
        .release_port   = mxs_auart_release_port,
        .request_port   = mxs_auart_request_port,