aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty
diff options
context:
space:
mode:
authorChristophe Leroy <christophe.leroy@c-s.fr>2012-09-24 08:19:03 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-09-26 13:39:39 -0700
commit59733ef7e510f6fd51a3dfc6f22ec1d3630a47b9 (patch)
treefe2fdf1f4e631217bdaf8e63c5d623e0db704440 /drivers/tty
parentPowerpc 8xx CPM_UART desynchronisation (diff)
downloadlinux-dev-59733ef7e510f6fd51a3dfc6f22ec1d3630a47b9.tar.xz
linux-dev-59733ef7e510f6fd51a3dfc6f22ec1d3630a47b9.zip
Powerpc 8xx CPM_UART too many interrupts
Setting the fifo to only 1 byte generates one interrupt every 1ms at 9600 bauds. This is too much. This patch reduces the threshold to speeds below 2400 bauds like in the 8250 UART driver. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Acked-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty')
-rw-r--r--drivers/tty/serial/cpm_uart/cpm_uart_core.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/tty/serial/cpm_uart/cpm_uart_core.c b/drivers/tty/serial/cpm_uart/cpm_uart_core.c
index 46af6e47f061..46edc649b0b7 100644
--- a/drivers/tty/serial/cpm_uart/cpm_uart_core.c
+++ b/drivers/tty/serial/cpm_uart/cpm_uart_core.c
@@ -71,7 +71,7 @@ static void cpm_uart_initbd(struct uart_cpm_port *pinfo);
/**************************************************************/
-#define HW_BUF_SPD_THRESHOLD 9600
+#define HW_BUF_SPD_THRESHOLD 2400
/*
* Check, if transmit buffers are processed
@@ -505,7 +505,7 @@ static void cpm_uart_set_termios(struct uart_port *port,
pr_debug("CPM uart[%d]:set_termios\n", port->line);
baud = uart_get_baud_rate(port, termios, old, 0, port->uartclk / 16);
- if (baud <= HW_BUF_SPD_THRESHOLD ||
+ if (baud < HW_BUF_SPD_THRESHOLD ||
(pinfo->port.state && pinfo->port.state->port.tty->low_latency))
pinfo->rx_fifosize = 1;
else