diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2009-03-09 00:30:55 +0100 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2009-03-09 00:30:55 +0100 |
commit | d15c22e78674f9a5bc0de0932a43abe1aafae303 (patch) | |
tree | 3e4198c44bd2d9184e91647346c66aa95e28f843 /drivers/serial/atmel_serial.c | |
parent | Input: psmouse - add newline to OLPC HGPK touchpad debugging (diff) | |
parent | Linux 2.6.29-rc7 (diff) | |
download | linux-d15c22e78674f9a5bc0de0932a43abe1aafae303.tar.xz linux-d15c22e78674f9a5bc0de0932a43abe1aafae303.zip |
Merge commit 'v2.6.29-rc7' into next
Diffstat (limited to 'drivers/serial/atmel_serial.c')
-rw-r--r-- | drivers/serial/atmel_serial.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/serial/atmel_serial.c b/drivers/serial/atmel_serial.c index d5efd6c77904..8f58f7ff0dd7 100644 --- a/drivers/serial/atmel_serial.c +++ b/drivers/serial/atmel_serial.c @@ -579,7 +579,7 @@ static void atmel_tx_dma(struct uart_port *port) /* disable PDC transmit */ UART_PUT_PTCR(port, ATMEL_PDC_TXTDIS); - if (!uart_circ_empty(xmit)) { + if (!uart_circ_empty(xmit) && !uart_tx_stopped(port)) { dma_sync_single_for_device(port->dev, pdc->dma_addr, pdc->dma_size, @@ -877,6 +877,10 @@ static int atmel_startup(struct uart_port *port) } } + /* Save current CSR for comparison in atmel_tasklet_func() */ + atmel_port->irq_status_prev = UART_GET_CSR(port); + atmel_port->irq_status = atmel_port->irq_status_prev; + /* * Finally, enable the serial port */ |