All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tty: serial: men_z135_uart: Wakeup UART after transmitting
@ 2014-06-13  6:06 Johannes Thumshirn
  2014-06-13  6:21 ` Johannes Thumshirn
  0 siblings, 1 reply; 3+ messages in thread
From: Johannes Thumshirn @ 2014-06-13  6:06 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Jiri Slaby
  Cc: linux-serial, Jun Shih, Johannes Thumshirn, Johannes Thumshirn

From: Johannes Thumshirn <johanes.thumshirn@men.de>

Call uart_write_wakeup() after writing the hardware FIFO and updateing the FIFO
pointers.

This fixes high latency and jitter on PPP over Serial links.

Reported-by: Jun Shih <Jun.Shih@pason.com>
Tested-by: Jun Shih <Jun.Shih@pason.com>
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@men.de>
---
 drivers/tty/serial/men_z135_uart.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/tty/serial/men_z135_uart.c b/drivers/tty/serial/men_z135_uart.c
index c9d1854..30e9e60 100644
--- a/drivers/tty/serial/men_z135_uart.c
+++ b/drivers/tty/serial/men_z135_uart.c
@@ -308,9 +308,6 @@ static void men_z135_handle_tx(struct men_z135_port *uart)
 	if (port->x_char)
 		goto out;

-	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
-		uart_write_wakeup(port);
-
 	/* calculate bytes to copy */
 	qlen = uart_circ_chars_pending(xmit);
 	if (qlen <= 0)
@@ -357,6 +354,9 @@ static void men_z135_handle_tx(struct men_z135_port *uart)

 	port->icount.tx += n;

+	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
+		uart_write_wakeup(port);
+
 irq_en:
 	if (!uart_circ_empty(xmit))
 		men_z135_reg_set(uart, MEN_Z135_CONF_REG, MEN_Z135_IER_TXCIEN);
--
1.9.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] tty: serial: men_z135_uart: Wakeup UART after transmitting
  2014-06-13  6:06 [PATCH] tty: serial: men_z135_uart: Wakeup UART after transmitting Johannes Thumshirn
@ 2014-06-13  6:21 ` Johannes Thumshirn
  2014-06-13 18:27   ` Greg Kroah-Hartman
  0 siblings, 1 reply; 3+ messages in thread
From: Johannes Thumshirn @ 2014-06-13  6:21 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Jiri Slaby; +Cc: linux-serial, Jun Shih, Johannes Thumshirn

On Fri, Jun 13, 2014 at 08:06:06AM +0200, Johannes Thumshirn wrote:
> From: Johannes Thumshirn <johanes.thumshirn@men.de>
>
> Call uart_write_wakeup() after writing the hardware FIFO and updateing the FIFO
> pointers.
>
> This fixes high latency and jitter on PPP over Serial links.
>
> Reported-by: Jun Shih <Jun.Shih@pason.com>
> Tested-by: Jun Shih <Jun.Shih@pason.com>
> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@men.de>
> ---
>  drivers/tty/serial/men_z135_uart.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/tty/serial/men_z135_uart.c b/drivers/tty/serial/men_z135_uart.c
> index c9d1854..30e9e60 100644
> --- a/drivers/tty/serial/men_z135_uart.c
> +++ b/drivers/tty/serial/men_z135_uart.c
> @@ -308,9 +308,6 @@ static void men_z135_handle_tx(struct men_z135_port *uart)
>  	if (port->x_char)
>  		goto out;
>
> -	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
> -		uart_write_wakeup(port);
> -
>  	/* calculate bytes to copy */
>  	qlen = uart_circ_chars_pending(xmit);
>  	if (qlen <= 0)
> @@ -357,6 +354,9 @@ static void men_z135_handle_tx(struct men_z135_port *uart)
>
>  	port->icount.tx += n;
>
> +	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
> +		uart_write_wakeup(port);
> +
>  irq_en:
>  	if (!uart_circ_empty(xmit))
>  		men_z135_reg_set(uart, MEN_Z135_CONF_REG, MEN_Z135_IER_TXCIEN);
> --
> 1.9.1

Somehow I managed to mistype my name in my gitconifg's email filed...

Should I re-send the patch?

Johannes

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] tty: serial: men_z135_uart: Wakeup UART after transmitting
  2014-06-13  6:21 ` Johannes Thumshirn
@ 2014-06-13 18:27   ` Greg Kroah-Hartman
  0 siblings, 0 replies; 3+ messages in thread
From: Greg Kroah-Hartman @ 2014-06-13 18:27 UTC (permalink / raw)
  To: Johannes Thumshirn; +Cc: Jiri Slaby, linux-serial, Jun Shih

On Fri, Jun 13, 2014 at 08:21:38AM +0200, Johannes Thumshirn wrote:
> On Fri, Jun 13, 2014 at 08:06:06AM +0200, Johannes Thumshirn wrote:
> > From: Johannes Thumshirn <johanes.thumshirn@men.de>
> >
> > Call uart_write_wakeup() after writing the hardware FIFO and updateing the FIFO
> > pointers.
> >
> > This fixes high latency and jitter on PPP over Serial links.
> >
> > Reported-by: Jun Shih <Jun.Shih@pason.com>
> > Tested-by: Jun Shih <Jun.Shih@pason.com>
> > Signed-off-by: Johannes Thumshirn <johannes.thumshirn@men.de>
> > ---
> >  drivers/tty/serial/men_z135_uart.c | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/tty/serial/men_z135_uart.c b/drivers/tty/serial/men_z135_uart.c
> > index c9d1854..30e9e60 100644
> > --- a/drivers/tty/serial/men_z135_uart.c
> > +++ b/drivers/tty/serial/men_z135_uart.c
> > @@ -308,9 +308,6 @@ static void men_z135_handle_tx(struct men_z135_port *uart)
> >  	if (port->x_char)
> >  		goto out;
> >
> > -	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
> > -		uart_write_wakeup(port);
> > -
> >  	/* calculate bytes to copy */
> >  	qlen = uart_circ_chars_pending(xmit);
> >  	if (qlen <= 0)
> > @@ -357,6 +354,9 @@ static void men_z135_handle_tx(struct men_z135_port *uart)
> >
> >  	port->icount.tx += n;
> >
> > +	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
> > +		uart_write_wakeup(port);
> > +
> >  irq_en:
> >  	if (!uart_circ_empty(xmit))
> >  		men_z135_reg_set(uart, MEN_Z135_CONF_REG, MEN_Z135_IER_TXCIEN);
> > --
> > 1.9.1
> 
> Somehow I managed to mistype my name in my gitconifg's email filed...
> 
> Should I re-send the patch?

Please do as I do not understand what went wrong...

greg k-h

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-06-13 18:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-13  6:06 [PATCH] tty: serial: men_z135_uart: Wakeup UART after transmitting Johannes Thumshirn
2014-06-13  6:21 ` Johannes Thumshirn
2014-06-13 18:27   ` Greg Kroah-Hartman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.