summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/pc386/console/console.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-05-23 15:48:36 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-05-23 15:48:36 +0000
commit24f1347a443a3cdca9009f6870135759e6a88f02 (patch)
tree4f387458ddfbe43156bc396de6ee5e6fde5e25c2 /c/src/lib/libbsp/i386/pc386/console/console.c
parent2008-05-23 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-24f1347a443a3cdca9009f6870135759e6a88f02.tar.bz2
2008-05-23 Joel Sherrill <joel.sherrill@OARcorp.com>
* console/console.c, console/serial_mouse.c: Eliminate copies of switches to convert termios Bxxx constants to xxx as an integer. Use the shared termios_baud_to_number() routine to do the same conversion.
Diffstat (limited to 'c/src/lib/libbsp/i386/pc386/console/console.c')
-rw-r--r--c/src/lib/libbsp/i386/pc386/console/console.c60
1 files changed, 3 insertions, 57 deletions
diff --git a/c/src/lib/libbsp/i386/pc386/console/console.c b/c/src/lib/libbsp/i386/pc386/console/console.c
index 5581c6583c..c3381c6a88 100644
--- a/c/src/lib/libbsp/i386/pc386/console/console.c
+++ b/c/src/lib/libbsp/i386/pc386/console/console.c
@@ -427,63 +427,9 @@ conSetAttr(int minor, const struct termios *t)
{
unsigned long baud, databits, parity, stopbits;
- switch (t->c_cflag & CBAUD)
- {
- case B50:
- baud = 50;
- break;
- case B75:
- baud = 75;
- break;
- case B110:
- baud = 110;
- break;
- case B134:
- baud = 134;
- break;
- case B150:
- baud = 150;
- break;
- case B200:
- baud = 200;
- break;
- case B300:
- baud = 300;
- break;
- case B600:
- baud = 600;
- break;
- case B1200:
- baud = 1200;
- break;
- case B1800:
- baud = 1800;
- break;
- case B2400:
- baud = 2400;
- break;
- case B4800:
- baud = 4800;
- break;
- case B9600:
- baud = 9600;
- break;
- case B19200:
- baud = 19200;
- break;
- case B38400:
- baud = 38400;
- break;
- case B57600:
- baud = 57600;
- break;
- case B115200:
- baud = 115200;
- break;
- default:
- rtems_fatal_error_occurred (RTEMS_INTERNAL_ERROR);
- return 0;
- }
+ baud = termios_baud_to_number(t->c_cflag & CBAUD);
+ if ( baud > 115200 )
+ rtems_fatal_error_occurred (RTEMS_INTERNAL_ERROR);
if (t->c_cflag & PARENB) {
/* Parity is enabled */