From: Fabian Godehardt Date: Thu, 11 Jun 2009 13:37:19 +0000 (+0100) Subject: imx: serial: notify higher layers in case xmit IRQ was not called X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=977757311e50dc5d832c9fef34e7555411f7ccd8;p=deliverable%2Flinux.git imx: serial: notify higher layers in case xmit IRQ was not called upper layers, namely line discipline, need to be notified when transmission of more data is possible. For spurious cases, where IRQ handling does not supply notification for sure, it is given additionally here, when data has just been transmitted and space in the buffer will most probably be available. Signed-off-by: Fabian Godehardt Signed-off-by: Oskar Schirmer Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds --- diff --git a/drivers/serial/imx.c b/drivers/serial/imx.c index 6b8f12f4a705..49f2e12ba58d 100644 --- a/drivers/serial/imx.c +++ b/drivers/serial/imx.c @@ -308,6 +308,9 @@ static inline void imx_transmit_buffer(struct imx_port *sport) break; } + if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS) + uart_write_wakeup(&sport->port); + if (uart_circ_empty(xmit)) imx_stop_tx(&sport->port); }