aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/sparc
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2018-10-09 14:35:03 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2019-01-03 09:32:12 -0200
commit9c5d0d02c1122d10c2407333eeecd1ee2285084b (patch)
treed887b8616cc5682424cb37445072b63843556c01 /sysdeps/unix/sysv/linux/sparc
parent7b832018881cbc860c70b7a768dae9cfb7b55663 (diff)
downloadglibc-9c5d0d02c1122d10c2407333eeecd1ee2285084b.tar
glibc-9c5d0d02c1122d10c2407333eeecd1ee2285084b.tar.gz
glibc-9c5d0d02c1122d10c2407333eeecd1ee2285084b.tar.bz2
glibc-9c5d0d02c1122d10c2407333eeecd1ee2285084b.zip
termios: Consolidate Baud Rate Selection definitions (BZ#23783)
This patch consolidates the termios symbolic constants used for baud rates selection used along with speed_t on its own header. The Linux generic implementation values match the kernel UAPI and each architecture with deviate values have their own implementation (in this case alpha and powerpc). No semantic change is expected, checked on a build against x86_64-linux-gnu, alpha-linux-gnu, mips64-linux-gnu, and sparc64-linux-gnu. [BZ #23783] * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add termios-baud.h. * sysdeps/unix/sysv/linux/bits/termios-baud.h: New file. * sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/termios.h (B57600, B115200, B230400, B460800, B500000, B576000, B921600, B1000000, B1152000, B1500000, B2000000, B2500000, B3000000, B3500000, B4000000, __MAX_BAUD): Move to termios-baud.h. [__USE_MISC] (CBAUD, CBAUDEX): Likewise. * sysdeps/unix/sysv/linux/bits/termios.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
Diffstat (limited to 'sysdeps/unix/sysv/linux/sparc')
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h46
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/termios.h30
2 files changed, 48 insertions, 28 deletions
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h b/sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h
new file mode 100644
index 0000000000..3803e124dd
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h
@@ -0,0 +1,46 @@
+/* termios baud rate selection definitions. Linux/sparc version.
+ Copyright (C) 2019 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _TERMIOS_H
+# error "Never include <bits/termios-baud.h> directly; use <termios.h> instead."
+#endif
+
+#ifdef __USE_MISC
+# define CBAUD 0x0000100f
+# define CBAUDEX 0x00001000
+# define CIBAUD 0x100f0000 /* input baud rate (not used) */
+# define CMSPAR 0x40000000 /* mark or space (stick) parity */
+# define CRTSCTS 0x80000000 /* flow control */
+#endif
+
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
+#define B76800 0x00001005
+#define B153600 0x00001006
+#define B307200 0x00001007
+#define B614400 0x00001008
+#define B921600 0x00001009
+#define B500000 0x0000100a
+#define B576000 0x0000100b
+#define B1000000 0x0000100c
+#define B1152000 0x0000100d
+#define B1500000 0x0000100e
+#define B2000000 0x0000100f
+#define __MAX_BAUD B2000000
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/termios.h b/sysdeps/unix/sysv/linux/sparc/bits/termios.h
index df278b6571..38128e7c6a 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/termios.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/termios.h
@@ -30,9 +30,6 @@ typedef unsigned int tcflag_t;
#include <bits/termios-c_oflag.h>
/* c_cflag bit meaning */
-#ifdef __USE_MISC
-# define CBAUD 0x0000100f
-#endif
#define B0 0x00000000 /* hang up */
#define B50 0x00000001
#define B75 0x00000002
@@ -53,6 +50,8 @@ typedef unsigned int tcflag_t;
# define EXTA B19200
# define EXTB B38400
#endif
+#include <bits/termios-baud.h>
+
#define CSIZE 0x00000030
#define CS5 0x00000000
#define CS6 0x00000010
@@ -64,31 +63,6 @@ typedef unsigned int tcflag_t;
#define PARODD 0x00000200
#define HUPCL 0x00000400
#define CLOCAL 0x00000800
-#ifdef __USE_MISC
-# define CBAUDEX 0x00001000
-#endif
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B76800 0x00001005
-#define B153600 0x00001006
-#define B307200 0x00001007
-#define B614400 0x00001008
-#define B921600 0x00001009
-#define B500000 0x0000100a
-#define B576000 0x0000100b
-#define B1000000 0x0000100c
-#define B1152000 0x0000100d
-#define B1500000 0x0000100e
-#define B2000000 0x0000100f
-#define __MAX_BAUD B2000000
-
-#ifdef __USE_MISC
-# define CIBAUD 0x100f0000 /* input baud rate (not used) */
-# define CMSPAR 0x40000000 /* mark or space (stick) parity */
-# define CRTSCTS 0x80000000 /* flow control */
-#endif
/* c_lflag bits */
#define ISIG 0x00000001