summaryrefslogtreecommitdiffstats
path: root/c/src/libchip
diff options
context:
space:
mode:
authorKevin Kirspel <kevin-kirspel@idexx.com>2017-03-21 15:39:48 -0400
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-03-22 11:55:04 +0100
commit1c6926c11f2e5efcb166c668b097d64a0321d66e (patch)
tree30683dcf11979f51273413aade68a3828d00da10 /c/src/libchip
parentbsp/atsam: Fix DMA support of some drivers (diff)
downloadrtems-1c6926c11f2e5efcb166c668b097d64a0321d66e.tar.bz2
termios: Synchronize with latest FreeBSD headers
Adding modified FreeBSD headers to synchronize RTEMS termios with FreeBSD. Modify termios to support dedicated input and output baud for termios structure. Updated BSPs to use dedicated input and output baud in termios structure. Updated tools to use dedicated input and output baud in termios structure. Updated termios testsuites to use dedicated input and output baud in termios structure. Close #2897.
Diffstat (limited to 'c/src/libchip')
-rw-r--r--c/src/libchip/serial/mc68681.c2
-rw-r--r--c/src/libchip/serial/mc68681_baud.c28
-rw-r--r--c/src/libchip/serial/z85c30.c2
3 files changed, 26 insertions, 6 deletions
diff --git a/c/src/libchip/serial/mc68681.c b/c/src/libchip/serial/mc68681.c
index 52e92d5650..f4ddbd6a50 100644
--- a/c/src/libchip/serial/mc68681.c
+++ b/c/src/libchip/serial/mc68681.c
@@ -581,7 +581,7 @@ MC68681_STATIC int mc68681_baud_rate(
break;
}
- baud_requested = baud & CBAUD;
+ baud_requested = baud;
if (!baud_requested)
baud_requested = B9600; /* default to 9600 baud */
diff --git a/c/src/libchip/serial/mc68681_baud.c b/c/src/libchip/serial/mc68681_baud.c
index a27e6c95f6..0f8e87c2c2 100644
--- a/c/src/libchip/serial/mc68681_baud.c
+++ b/c/src/libchip/serial/mc68681_baud.c
@@ -30,10 +30,15 @@ mc68681_baud_t mc68681_baud_rate_table[4][RTEMS_TERMIOS_NUMBER_BAUD_RATES] = {
0x0B, /* B9600 */
MC68681_BAUD_NOT_VALID, /* B19200 */
0x0C, /* B38400 */
+ MC68681_BAUD_NOT_VALID, /* B7200 */
+ MC68681_BAUD_NOT_VALID, /* B14400 */
+ MC68681_BAUD_NOT_VALID, /* B28800 */
MC68681_BAUD_NOT_VALID, /* B57600 */
+ MC68681_BAUD_NOT_VALID, /* B76800 */
MC68681_BAUD_NOT_VALID, /* B115200 */
MC68681_BAUD_NOT_VALID, /* B230400 */
- MC68681_BAUD_NOT_VALID /* B460800 */
+ MC68681_BAUD_NOT_VALID, /* B460800 */
+ MC68681_BAUD_NOT_VALID /* B921600 */
},
{ /* ACR[7] = 1, X = 0 */
MC68681_BAUD_NOT_VALID, /* B0 */
@@ -52,10 +57,15 @@ mc68681_baud_t mc68681_baud_rate_table[4][RTEMS_TERMIOS_NUMBER_BAUD_RATES] = {
0x0B, /* B9600 */
0x0C, /* B19200 */
MC68681_BAUD_NOT_VALID, /* B38400 */
+ MC68681_BAUD_NOT_VALID, /* B7200 */
+ MC68681_BAUD_NOT_VALID, /* B14400 */
+ MC68681_BAUD_NOT_VALID, /* B28800 */
MC68681_BAUD_NOT_VALID, /* B57600 */
+ MC68681_BAUD_NOT_VALID, /* B76800 */
MC68681_BAUD_NOT_VALID, /* B115200 */
MC68681_BAUD_NOT_VALID, /* B230400 */
- MC68681_BAUD_NOT_VALID /* B460800 */
+ MC68681_BAUD_NOT_VALID, /* B460800 */
+ MC68681_BAUD_NOT_VALID /* B921600 */
},
{ /* ACR[7] = 0, X = 1 */
MC68681_BAUD_NOT_VALID, /* B0 */
@@ -74,10 +84,15 @@ mc68681_baud_t mc68681_baud_rate_table[4][RTEMS_TERMIOS_NUMBER_BAUD_RATES] = {
0x0B, /* B9600 */
0x0C, /* B19200 */
MC68681_BAUD_NOT_VALID, /* B38400 */
+ MC68681_BAUD_NOT_VALID, /* B7200 */
+ MC68681_BAUD_NOT_VALID, /* B14400 */
+ MC68681_BAUD_NOT_VALID, /* B28800 */
0x07, /* B57600 */
+ MC68681_BAUD_NOT_VALID, /* B76800 */
0x08, /* B115200 */
MC68681_BAUD_NOT_VALID, /* B230400 */
- MC68681_BAUD_NOT_VALID /* B460800 */
+ MC68681_BAUD_NOT_VALID, /* B460800 */
+ MC68681_BAUD_NOT_VALID /* B921600 */
},
{ /* ACR[7] = 1, X = 1 */
MC68681_BAUD_NOT_VALID, /* B0 */
@@ -96,9 +111,14 @@ mc68681_baud_t mc68681_baud_rate_table[4][RTEMS_TERMIOS_NUMBER_BAUD_RATES] = {
0x0B, /* B9600 */
MC68681_BAUD_NOT_VALID, /* B19200 */
0x0C, /* B38400 */
+ MC68681_BAUD_NOT_VALID, /* B7200 */
+ MC68681_BAUD_NOT_VALID, /* B14400 */
+ MC68681_BAUD_NOT_VALID, /* B28800 */
0x07, /* B57600 */
+ MC68681_BAUD_NOT_VALID, /* B76800 */
0x08, /* B115200 */
MC68681_BAUD_NOT_VALID, /* B230400 */
- MC68681_BAUD_NOT_VALID /* B460800 */
+ MC68681_BAUD_NOT_VALID, /* B460800 */
+ MC68681_BAUD_NOT_VALID /* B921600 */
},
};
diff --git a/c/src/libchip/serial/z85c30.c b/c/src/libchip/serial/z85c30.c
index 7c55a513f7..55df9d3451 100644
--- a/c/src/libchip/serial/z85c30.c
+++ b/c/src/libchip/serial/z85c30.c
@@ -449,7 +449,7 @@ Z85C30_STATIC int z85c30_set_attributes(
* Assert ensures there is no division by 0.
*/
- baud_requested = t->c_cflag & CBAUD;
+ baud_requested = t->c_ospeed;
if (!baud_requested)
baud_requested = B9600; /* default to 9600 baud */