From 9dea130a9e202bc21627f2769486cb38335d1ccb Mon Sep 17 00:00:00 2001 From: Kaspar Schleiser Date: Tue, 13 Dec 2016 14:43:31 +0100 Subject: [PATCH] drivers: ethos: make use of isrpipe module --- drivers/ethos/ethos.c | 4 +++- sys/uart_stdio/uart_stdio.c | 8 ++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/drivers/ethos/ethos.c b/drivers/ethos/ethos.c index 698a365d7..8a2c2a680 100644 --- a/drivers/ethos/ethos.c +++ b/drivers/ethos/ethos.c @@ -35,6 +35,8 @@ #ifdef USE_ETHOS_FOR_STDIO #include "uart_stdio.h" +#include "isrpipe.h" +extern isrpipe_t uart_stdio_isrpipe; #endif #define ENABLE_DEBUG (0) @@ -100,7 +102,7 @@ static void _handle_char(ethos_t *dev, char c) #ifdef USE_ETHOS_FOR_STDIO case ETHOS_FRAME_TYPE_TEXT: dev->framesize++; - uart_stdio_rx_cb(NULL, c); + isrpipe_write_one(&uart_stdio_isrpipe, c); #endif } } diff --git a/sys/uart_stdio/uart_stdio.c b/sys/uart_stdio/uart_stdio.c index 4dcc2dac6..55f2a395b 100644 --- a/sys/uart_stdio/uart_stdio.c +++ b/sys/uart_stdio/uart_stdio.c @@ -40,20 +40,20 @@ extern ethos_t ethos; #include "debug.h" static char _rx_buf_mem[UART_STDIO_RX_BUFSIZE]; -static isrpipe_t _isrpipe = ISRPIPE_INIT(_rx_buf_mem); +isrpipe_t uart_stdio_isrpipe = ISRPIPE_INIT(_rx_buf_mem); void uart_stdio_init(void) { #ifndef USE_ETHOS_FOR_STDIO - uart_init(UART_STDIO_DEV, UART_STDIO_BAUDRATE, (uart_rx_cb_t) isrpipe_write_one, &_isrpipe); + uart_init(UART_STDIO_DEV, UART_STDIO_BAUDRATE, (uart_rx_cb_t) isrpipe_write_one, &uart_stdio_isrpipe); #else - uart_init(ETHOS_UART, ETHOS_BAUDRATE, (uart_rx_cb_t) isrpipe_write_one, &_isrpipe); + uart_init(ETHOS_UART, ETHOS_BAUDRATE, (uart_rx_cb_t) isrpipe_write_one, &uart_stdio_isrpipe); #endif } int uart_stdio_read(char* buffer, int count) { - return isrpipe_read(&_isrpipe, buffer, count); + return isrpipe_read(&uart_stdio_isrpipe, buffer, count); } int uart_stdio_write(const char* buffer, int len)