From 75e8e04a1907ffd75c7d5dc8e3d2ad927b49a9ff Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 19 Oct 2000 15:18:20 +0000 Subject: 2000-10-18 Charles-Antoine Gauthier * comm/uart.c (BSP_uart_init): Save more line state parameters. --- c/src/lib/libbsp/i386/shared/ChangeLog | 4 ++++ c/src/lib/libbsp/i386/shared/comm/uart.c | 23 ++++++++++++++++++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/c/src/lib/libbsp/i386/shared/ChangeLog b/c/src/lib/libbsp/i386/shared/ChangeLog index 8a3b0bf305..0f13f1eafc 100644 --- a/c/src/lib/libbsp/i386/shared/ChangeLog +++ b/c/src/lib/libbsp/i386/shared/ChangeLog @@ -1,4 +1,8 @@ + * comm/uart.c (BSP_uart_init): Save more line state parameters. + +2000-10-18 Charles-Antoine Gauthier + * comm/i386-stub-glue.c, comm/tty_drv.c, comm/uart.c, comm/uart.h: Add the ability to set parity, number of data bits and number of stop bits to the existing i386 serial drivers. diff --git a/c/src/lib/libbsp/i386/shared/comm/uart.c b/c/src/lib/libbsp/i386/shared/comm/uart.c index 50dcd7de6a..91cb5f9be9 100644 --- a/c/src/lib/libbsp/i386/shared/comm/uart.c +++ b/c/src/lib/libbsp/i386/shared/comm/uart.c @@ -157,14 +157,35 @@ BSP_uart_init tmp = uread(uart, MSR); /* Remember state */ - uart_data[uart].hwFlow = hwFlow; uart_data[uart].baud = baud; + uart_data[uart].databits = databits; + uart_data[uart].parity = parity; + uart_data[uart].stopbits = stopbits; + uart_data[uart].hwFlow = hwFlow; return; } /* * Set baud */ + +void +BSP_uart_set_baud( + int uart, + unsigned long baud +) +{ + /* Sanity check */ + assert(uart == BSP_UART_COM1 || uart == BSP_UART_COM2); + + BSP_uart_set_attributes( uart, baud, uart_data[uart].databits, + uart_data[uart].parity, uart_data[uart].stopbits ); +} + +/* + * Set all attributes + */ + void BSP_uart_set_attributes ( -- cgit v1.2.3