diff options
-rw-r--r-- | ChangeLog | 17 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/Makefile | 3 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h | 46 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/bits/termios.h | 26 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/termios-baud.h | 48 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/termios.h | 29 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/mips/bits/termios.h | 28 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h | 45 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/bits/termios.h | 25 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h | 46 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/bits/termios.h | 30 |
11 files changed, 212 insertions, 131 deletions
diff --git a/ChangeLog b/ChangeLog index 9edf6ca673..a3a5495fb3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,22 @@ 2019-01-03 Adhemerval Zanella <adhemerval.zanella@linaro.org> + [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. + * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add termios-c_oflag.h. * sysdeps/unix/sysv/linux/bits/termios-c_oflag.h: New file. diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile index 686b3e236b..e1ddbf9787 100644 --- a/sysdeps/unix/sysv/linux/Makefile +++ b/sysdeps/unix/sysv/linux/Makefile @@ -45,7 +45,8 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \ bits/procfs-prregset.h bits/mman-map-flags-generic.h \ bits/msq-pad.h bits/sem-pad.h bits/shmlba.h bits/shm-pad.h \ bits/termios-struct.h bits/termios-c_cc.h \ - bits/termios-c_iflag.h bits/termios-c_oflag.h + bits/termios-c_iflag.h bits/termios-c_oflag.h \ + bits/termios-baud.h tests += tst-clone tst-clone2 tst-clone3 tst-fanotify tst-personality \ tst-quota tst-sync_file_range tst-sysconf-iov_max tst-ttyname \ diff --git a/sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h b/sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h new file mode 100644 index 0000000000..24efd3d13e --- /dev/null +++ b/sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h @@ -0,0 +1,46 @@ +/* termios baud rate selection definitions. Linux/alpha 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 0000037 +# define CBAUDEX 0000000 +# 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/alpha/bits/termios.h b/sysdeps/unix/sysv/linux/alpha/bits/termios.h index 9f39f75e6c..69a436b91e 100644 --- a/sysdeps/unix/sysv/linux/alpha/bits/termios.h +++ b/sysdeps/unix/sysv/linux/alpha/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 0000037 -#endif #define B0 0000000 /* hang up */ #define B50 0000001 #define B75 0000002 @@ -52,25 +49,8 @@ typedef unsigned int tcflag_t; #ifdef __USE_MISC # define EXTA B19200 # define EXTB B38400 -# define CBAUDEX 0000000 #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 <bits/termios-baud.h> #define CSIZE 00001400 #define CS5 00000000 @@ -85,10 +65,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 diff --git a/sysdeps/unix/sysv/linux/bits/termios-baud.h b/sysdeps/unix/sysv/linux/bits/termios-baud.h new file mode 100644 index 0000000000..7258d67eb5 --- /dev/null +++ b/sysdeps/unix/sysv/linux/bits/termios-baud.h @@ -0,0 +1,48 @@ +/* termios baud rate selection definitions. Linux/generic 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 000000010017 /* Baud speed mask (not in POSIX). */ +# define CBAUDEX 000000010000 /* Extra baud speed mask, included in CBAUD. + (not in POSIX). */ +# define CIBAUD 002003600000 /* Input baud rate (not used). */ +# define CMSPAR 010000000000 /* Mark or space (stick) parity. */ +# define CRTSCTS 020000000000 /* Flow control. */ +#endif + +/* Extra output baud rates (not in POSIX). */ +#define B57600 0010001 +#define B115200 0010002 +#define B230400 0010003 +#define B460800 0010004 +#define B500000 0010005 +#define B576000 0010006 +#define B921600 0010007 +#define B1000000 0010010 +#define B1152000 0010011 +#define B1500000 0010012 +#define B2000000 0010013 +#define B2500000 0010014 +#define B3000000 0010015 +#define B3500000 0010016 +#define B4000000 0010017 +#define __MAX_BAUD B4000000 diff --git a/sysdeps/unix/sysv/linux/bits/termios.h b/sysdeps/unix/sysv/linux/bits/termios.h index d8af5f4a7c..2267418864 100644 --- a/sysdeps/unix/sysv/linux/bits/termios.h +++ b/sysdeps/unix/sysv/linux/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 0010017 -#endif #define B0 0000000 /* hang up */ #define B50 0000001 #define B75 0000002 @@ -53,6 +50,8 @@ typedef unsigned int tcflag_t; # define EXTA B19200 # define EXTB B38400 #endif +#include <bits/termios-baud.h> + #define CSIZE 0000060 #define CS5 0000000 #define CS6 0000020 @@ -64,30 +63,6 @@ typedef unsigned int tcflag_t; #define PARODD 0001000 #define HUPCL 0002000 #define CLOCAL 0004000 -#ifdef __USE_MISC -# define CBAUDEX 0010000 -#endif -#define B57600 0010001 -#define B115200 0010002 -#define B230400 0010003 -#define B460800 0010004 -#define B500000 0010005 -#define B576000 0010006 -#define B921600 0010007 -#define B1000000 0010010 -#define B1152000 0010011 -#define B1500000 0010012 -#define B2000000 0010013 -#define B2500000 0010014 -#define B3000000 0010015 -#define B3500000 0010016 -#define B4000000 0010017 -#define __MAX_BAUD B4000000 -#ifdef __USE_MISC -# define CIBAUD 002003600000 /* input baud rate (not used) */ -# define CMSPAR 010000000000 /* mark or space (stick) parity */ -# define CRTSCTS 020000000000 /* flow control */ -#endif /* c_lflag bits */ #define ISIG 0000001 diff --git a/sysdeps/unix/sysv/linux/mips/bits/termios.h b/sysdeps/unix/sysv/linux/mips/bits/termios.h index cb019295b3..ac316ba924 100644 --- a/sysdeps/unix/sysv/linux/mips/bits/termios.h +++ b/sysdeps/unix/sysv/linux/mips/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 0010017 -#endif #define B0 0000000 /* hang up */ #define B50 0000001 #define B75 0000002 @@ -53,6 +50,8 @@ typedef unsigned int tcflag_t; # define EXTA B19200 # define EXTB B38400 #endif +#include <bits/termios-baud.h> + #define CSIZE 0000060 /* Number of bits per byte (mask). */ #define CS5 0000000 /* 5 bits per byte. */ #define CS6 0000020 /* 6 bits per byte. */ @@ -64,29 +63,6 @@ typedef unsigned int tcflag_t; #define PARODD 0001000 /* Odd parity instead of even. */ #define HUPCL 0002000 /* Hang up on last close. */ #define CLOCAL 0004000 /* Ignore modem status lines. */ -#ifdef __USE_MISC -# define CBAUDEX 0010000 -#endif -#define B57600 0010001 -#define B115200 0010002 -#define B230400 0010003 -#define B460800 0010004 -#define B500000 0010005 -#define B576000 0010006 -#define B921600 0010007 -#define B1000000 0010010 -#define B1152000 0010011 -#define B1500000 0010012 -#define B2000000 0010013 -#define B2500000 0010014 -#define B3000000 0010015 -#define B3500000 0010016 -#define B4000000 0010017 -#define __MAX_BAUD B4000000 -#ifdef __USE_MISC -# define CIBAUD 002003600000 /* input baud rate (not used) */ -# define CRTSCTS 020000000000 /* flow control */ -#endif /* c_lflag bits */ #define ISIG 0000001 /* Enable signals. */ 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 + <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 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 <bits/termios-c_oflag.h> /* 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 <bits/termios-baud.h> #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 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 |