diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-06-24 17:29:11 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-06-25 17:03:21 +0200 |
commit | e18db9f0cffcb143e5fdec27539efb417cb4ebf3 (patch) | |
tree | 804edba552541bea8d5ea5c38680903373bf6c27 /c/src/lib/libbsp/m68k/mcf5329 | |
parent | bsps/arm: Rename function (diff) | |
download | rtems-e18db9f0cffcb143e5fdec27539efb417cb4ebf3.tar.bz2 |
termios: Update due to API changes
Termios notifies now the driver about an inactive transmit with the
length argument set to zero.
Diffstat (limited to 'c/src/lib/libbsp/m68k/mcf5329')
-rw-r--r-- | c/src/lib/libbsp/m68k/mcf5329/console/console.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/c/src/lib/libbsp/m68k/mcf5329/console/console.c b/c/src/lib/libbsp/m68k/mcf5329/console/console.c index f0c798029b..8f72270fa3 100644 --- a/c/src/lib/libbsp/m68k/mcf5329/console/console.c +++ b/c/src/lib/libbsp/m68k/mcf5329/console/console.c @@ -356,18 +356,15 @@ static void IntUartInitialize(void) ***************************************************************************/ static ssize_t IntUartInterruptWrite(int minor, const char *buf, size_t len) { - int level; - - rtems_interrupt_disable(level); + if (len > 0) { + /* write out character */ + MCF_UART_UTB(minor) = *buf; - /* write out character */ - MCF_UART_UTB(minor) = *buf; - - /* enable tx interrupt */ - IntUartInfo[minor].uimr |= MCF_UART_UIMR_TXRDY; - MCF_UART_UIMR(minor) = IntUartInfo[minor].uimr; + /* enable tx interrupt */ + IntUartInfo[minor].uimr |= MCF_UART_UIMR_TXRDY; + MCF_UART_UIMR(minor) = IntUartInfo[minor].uimr; + } - rtems_interrupt_enable(level); return (0); } |