From 9c5d0d02c1122d10c2407333eeecd1ee2285084b Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Tue, 9 Oct 2018 14:35:03 -0300 Subject: 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. --- .../unix/sysv/linux/powerpc/bits/termios-baud.h | 45 ++++++++++++++++++++++ sysdeps/unix/sysv/linux/powerpc/bits/termios.h | 25 +----------- 2 files changed, 46 insertions(+), 24 deletions(-) create mode 100644 sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h (limited to 'sysdeps/unix/sysv/linux/powerpc/bits') diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h b/sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h new file mode 100644 index 0000000000..fc16e6333b --- /dev/null +++ b/sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h @@ -0,0 +1,45 @@ +/* termios baud rate selection definitions. Linux/powerpc 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 + . */ + +#ifndef _TERMIOS_H +# error "Never include directly; use instead." +#endif + +#ifdef __USE_MISC +# define CBAUD 0000377 +# define CBAUDEX 0000020 +# define CMSPAR 010000000000 /* mark or space (stick) parity */ +# define CRTSCTS 020000000000 /* flow control */ +#endif + +#define B57600 00020 +#define B115200 00021 +#define B230400 00022 +#define B460800 00023 +#define B500000 00024 +#define B576000 00025 +#define B921600 00026 +#define B1000000 00027 +#define B1152000 00030 +#define B1500000 00031 +#define B2000000 00032 +#define B2500000 00033 +#define B3000000 00034 +#define B3500000 00035 +#define B4000000 00036 +#define __MAX_BAUD B4000000 diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/termios.h b/sysdeps/unix/sysv/linux/powerpc/bits/termios.h index d89fad8368..e35de92529 100644 --- a/sysdeps/unix/sysv/linux/powerpc/bits/termios.h +++ b/sysdeps/unix/sysv/linux/powerpc/bits/termios.h @@ -29,9 +29,6 @@ typedef unsigned int tcflag_t; #include /* c_cflag bit meaning */ -#ifdef __USE_MISC -# define CBAUD 0000377 -#endif #define B0 0000000 /* hang up */ #define B50 0000001 #define B75 0000002 @@ -51,24 +48,8 @@ typedef unsigned int tcflag_t; #ifdef __USE_MISC # define EXTA B19200 # define EXTB B38400 -# define CBAUDEX 0000020 #endif -#define B57600 00020 -#define B115200 00021 -#define B230400 00022 -#define B460800 00023 -#define B500000 00024 -#define B576000 00025 -#define B921600 00026 -#define B1000000 00027 -#define B1152000 00030 -#define B1500000 00031 -#define B2000000 00032 -#define B2500000 00033 -#define B3000000 00034 -#define B3500000 00035 -#define B4000000 00036 -#define __MAX_BAUD B4000000 +#include #define CSIZE 00001400 #define CS5 00000000 @@ -83,10 +64,6 @@ typedef unsigned int tcflag_t; #define HUPCL 00040000 #define CLOCAL 00100000 -#ifdef __USE_MISC -# define CMSPAR 010000000000 /* mark or space (stick) parity */ -# define CRTSCTS 020000000000 /* flow control */ -#endif /* c_lflag bits */ #define ISIG 0x00000080 -- cgit 1.4.1