* [PATCH 0/3] termbits.h: Further improvements
@ 2022-05-09 9:34 ` Ilpo Järvinen
0 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
Again, I prefer Greg to take these through his tty tree.
Changes done by this serie:
1) Create termbits-common.h for the most obvious termbits.h intersection.
2) Reformat some lines that remain in termbits.h files.
3) Don't include posix_types.h unnecessarily.
Please do check I got the uapi include things done correctly! That is,
that including using asm-generic/termbits-common.h path is the preferred
approach for a header file that is not supposed to be overridden by the
arch specific header files and that mandatory-y is not required for
termbits-common.h.
Unfortunately I couldn't move also tcflag_t into termbits-common.h due
to the way it is being defined for sparc. However, by the looks of how
the type for tcflag_t is being chosen there, having just unsigned int
might work also for sparc?
Ilpo Järvinen (3):
termbits.h: create termbits-common.h for identical bits
termbits.h: Align lines & format
termbits.h: Remove posix_types.h include
arch/alpha/include/uapi/asm/termbits.h | 182 ++++++-----------
arch/mips/include/uapi/asm/termbits.h | 209 ++++++++-----------
arch/parisc/include/uapi/asm/termbits.h | 131 ++++--------
arch/powerpc/include/uapi/asm/termbits.h | 152 +++++---------
arch/sparc/include/uapi/asm/termbits.h | 223 ++++++++-------------
include/uapi/asm-generic/termbits-common.h | 65 ++++++
include/uapi/asm-generic/termbits.h | 129 ++++--------
7 files changed, 418 insertions(+), 673 deletions(-)
create mode 100644 include/uapi/asm-generic/termbits-common.h
--
2.30.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 0/3] termbits.h: Further improvements
@ 2022-05-09 9:34 ` Ilpo Järvinen
0 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
Again, I prefer Greg to take these through his tty tree.
Changes done by this serie:
1) Create termbits-common.h for the most obvious termbits.h intersection.
2) Reformat some lines that remain in termbits.h files.
3) Don't include posix_types.h unnecessarily.
Please do check I got the uapi include things done correctly! That is,
that including using asm-generic/termbits-common.h path is the preferred
approach for a header file that is not supposed to be overridden by the
arch specific header files and that mandatory-y is not required for
termbits-common.h.
Unfortunately I couldn't move also tcflag_t into termbits-common.h due
to the way it is being defined for sparc. However, by the looks of how
the type for tcflag_t is being chosen there, having just unsigned int
might work also for sparc?
Ilpo Järvinen (3):
termbits.h: create termbits-common.h for identical bits
termbits.h: Align lines & format
termbits.h: Remove posix_types.h include
arch/alpha/include/uapi/asm/termbits.h | 182 ++++++-----------
arch/mips/include/uapi/asm/termbits.h | 209 ++++++++-----------
arch/parisc/include/uapi/asm/termbits.h | 131 ++++--------
arch/powerpc/include/uapi/asm/termbits.h | 152 +++++---------
arch/sparc/include/uapi/asm/termbits.h | 223 ++++++++-------------
include/uapi/asm-generic/termbits-common.h | 65 ++++++
include/uapi/asm-generic/termbits.h | 129 ++++--------
7 files changed, 418 insertions(+), 673 deletions(-)
create mode 100644 include/uapi/asm-generic/termbits-common.h
--
2.30.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/3] termbits.h: create termbits-common.h for identical bits
2022-05-09 9:34 ` Ilpo Järvinen
@ 2022-05-09 9:34 ` Ilpo Järvinen
-1 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
Some defines are the same across all archs. Move the most obvious
intersection to termbits-common.h.
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
---
arch/alpha/include/uapi/asm/termbits.h | 52 +----------------
arch/mips/include/uapi/asm/termbits.h | 53 +-----------------
arch/parisc/include/uapi/asm/termbits.h | 54 +-----------------
arch/powerpc/include/uapi/asm/termbits.h | 52 +----------------
arch/sparc/include/uapi/asm/termbits.h | 53 +-----------------
include/uapi/asm-generic/termbits-common.h | 65 ++++++++++++++++++++++
include/uapi/asm-generic/termbits.h | 53 +-----------------
7 files changed, 76 insertions(+), 306 deletions(-)
create mode 100644 include/uapi/asm-generic/termbits-common.h
diff --git a/arch/alpha/include/uapi/asm/termbits.h b/arch/alpha/include/uapi/asm/termbits.h
index 30dc7ff777b8..3c7a9afc4333 100644
--- a/arch/alpha/include/uapi/asm/termbits.h
+++ b/arch/alpha/include/uapi/asm/termbits.h
@@ -4,8 +4,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
/*
@@ -72,33 +72,17 @@ struct ktermios {
#define VTIME 17
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IXON 0x00200
#define IXOFF 0x00400
-#define IXANY 0x00800
#define IUCLC 0x01000
#define IMAXBEL 0x02000
#define IUTF8 0x04000
/* c_oflag bits */
-#define OPOST 0x00001
#define ONLCR 0x00002
#define OLCUC 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x000040
-#define OFDEL 0x000080
#define NLDLY 0x000300
#define NL0 0x000000
#define NL1 0x000100
@@ -131,24 +115,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000001f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CBAUDEX 0x00000000
#define B57600 0x00000010
#define B115200 0x00000011
@@ -180,11 +146,8 @@ struct ktermios {
#define HUPCL 0x00004000
#define CLOCAL 0x00008000
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
#define CIBAUD 0x1f0000
-#define IBSHIFT 16
/* c_lflag bits */
#define ISIG 0x00000080
@@ -204,17 +167,6 @@ struct ktermios {
#define IEXTEN 0x00000400
#define EXTPROC 0x10000000
-/* Values for the ACTION argument to `tcflow'. */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* Values for the QUEUE_SELECTOR argument to `tcflush'. */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* Values for the OPTIONAL_ACTIONS argument to `tcsetattr'. */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/arch/mips/include/uapi/asm/termbits.h b/arch/mips/include/uapi/asm/termbits.h
index d1315ccdb39a..b33f514315ce 100644
--- a/arch/mips/include/uapi/asm/termbits.h
+++ b/arch/mips/include/uapi/asm/termbits.h
@@ -13,8 +13,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
/*
@@ -80,31 +80,15 @@ struct ktermios {
#define VEOL 17 /* End-of-line character [ICANON]. */
/* c_iflag bits */
-#define IGNBRK 0x00001 /* Ignore break condition. */
-#define BRKINT 0x00002 /* Signal interrupt on break. */
-#define IGNPAR 0x00004 /* Ignore characters with parity errors. */
-#define PARMRK 0x00008 /* Mark parity and framing errors. */
-#define INPCK 0x00010 /* Enable input parity check. */
-#define ISTRIP 0x00020 /* Strip 8th bit off characters. */
-#define INLCR 0x00040 /* Map NL to CR on input. */
-#define IGNCR 0x00080 /* Ignore CR. */
-#define ICRNL 0x00100 /* Map CR to NL on input. */
#define IUCLC 0x00200 /* Map upper case to lower case on input. */
#define IXON 0x00400 /* Enable start/stop output control. */
-#define IXANY 0x00800 /* Any character will restart after stop. */
#define IXOFF 0x01000 /* Enable start/stop input control. */
#define IMAXBEL 0x02000 /* Ring bell when input queue is full. */
#define IUTF8 0x04000 /* Input is UTF-8 */
/* c_oflag bits */
-#define OPOST 0x00001 /* Perform output processing. */
#define OLCUC 0x00002 /* Map lower case to upper case on output. */
#define ONLCR 0x00004 /* Map NL to CR-NL on output. */
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x00040
-#define OFDEL 0x00080
#define NLDLY 0x00100
#define NL0 0x00000
#define NL1 0x00100
@@ -135,24 +119,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030 /* Number of bits per byte (mask) */
#define CS5 0x00000000 /* 5 bits per byte */
#define CS6 0x00000010 /* 6 bits per byte */
@@ -182,10 +148,6 @@ struct ktermios {
#define B3500000 0x0000100e
#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
/* c_lflag bits */
#define ISIG 0x00001 /* Enable signals. */
@@ -209,17 +171,6 @@ struct ktermios {
/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0 /* Suspend output. */
-#define TCOON 1 /* Restart suspended output. */
-#define TCIOFF 2 /* Send a STOP character. */
-#define TCION 3 /* Send a START character. */
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0 /* Discard data received but not yet read. */
-#define TCOFLUSH 1 /* Discard data written but not yet sent. */
-#define TCIOFLUSH 2 /* Discard all pending data. */
-
/* tcsetattr uses these */
#define TCSANOW TCSETS /* Change immediately. */
#define TCSADRAIN TCSETSW /* Change when pending output is written. */
diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
index 6017ee08f099..7f74a822b7ea 100644
--- a/arch/parisc/include/uapi/asm/termbits.h
+++ b/arch/parisc/include/uapi/asm/termbits.h
@@ -4,8 +4,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
#define NCCS 19
@@ -61,31 +61,15 @@ struct ktermios {
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IUCLC 0x00200
#define IXON 0x00400
-#define IXANY 0x00800
#define IXOFF 0x01000
#define IMAXBEL 0x04000
#define IUTF8 0x08000
/* c_oflag bits */
-#define OPOST 0x00001
#define OLCUC 0x00002
#define ONLCR 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x00040
-#define OFDEL 0x00080
#define NLDLY 0x00100
#define NL0 0x00000
#define NL1 0x00100
@@ -112,24 +96,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030
#define CS5 0x00000000
#define CS6 0x00000010
@@ -159,11 +125,6 @@ struct ktermios {
#define B3500000 0x0000100e
#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
-
/* c_lflag bits */
#define ISIG 0x00001
@@ -183,17 +144,6 @@ struct ktermios {
#define IEXTEN 0x08000
#define EXTPROC 0x10000
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* tcsetattr uses these */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/arch/powerpc/include/uapi/asm/termbits.h b/arch/powerpc/include/uapi/asm/termbits.h
index e4892f2d5592..19d1350a80bb 100644
--- a/arch/powerpc/include/uapi/asm/termbits.h
+++ b/arch/powerpc/include/uapi/asm/termbits.h
@@ -9,8 +9,8 @@
* 2 of the License, or (at your option) any later version.
*/
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
/*
@@ -64,33 +64,17 @@ struct ktermios {
#define VDISCARD 16
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IXON 0x00200
#define IXOFF 0x00400
-#define IXANY 0x00800
#define IUCLC 0x01000
#define IMAXBEL 0x02000
#define IUTF8 0x04000
/* c_oflag bits */
-#define OPOST 0x00001
#define ONLCR 0x00002
#define OLCUC 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x000040
-#define OFDEL 0x000080
#define NLDLY 0x000300
#define NL0 0x000000
#define NL1 0x000100
@@ -119,24 +103,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x000000ff
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CBAUDEX 0x00000000
#define B57600 0x00000010
#define B115200 0x00000011
@@ -156,7 +122,6 @@ struct ktermios {
#define BOTHER 0x0000001f
#define CIBAUD 0x00ff0000
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
#define CSIZE 0x00000300
#define CS5 0x00000000
@@ -171,8 +136,6 @@ struct ktermios {
#define HUPCL 0x00004000
#define CLOCAL 0x00008000
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
/* c_lflag bits */
#define ISIG 0x00000080
@@ -192,17 +155,6 @@ struct ktermios {
#define IEXTEN 0x00000400
#define EXTPROC 0x10000000
-/* Values for the ACTION argument to `tcflow'. */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* Values for the QUEUE_SELECTOR argument to `tcflush'. */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* Values for the OPTIONAL_ACTIONS argument to `tcsetattr'. */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/arch/sparc/include/uapi/asm/termbits.h b/arch/sparc/include/uapi/asm/termbits.h
index ce5ad5d0f105..854bdd153cca 100644
--- a/arch/sparc/include/uapi/asm/termbits.h
+++ b/arch/sparc/include/uapi/asm/termbits.h
@@ -4,8 +4,7 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
#if defined(__sparc__) && defined(__arch64__)
typedef unsigned int tcflag_t;
@@ -90,31 +89,15 @@ struct ktermios {
#endif
/* c_iflag bits */
-#define IGNBRK 0x00000001
-#define BRKINT 0x00000002
-#define IGNPAR 0x00000004
-#define PARMRK 0x00000008
-#define INPCK 0x00000010
-#define ISTRIP 0x00000020
-#define INLCR 0x00000040
-#define IGNCR 0x00000080
-#define ICRNL 0x00000100
#define IUCLC 0x00000200
#define IXON 0x00000400
-#define IXANY 0x00000800
#define IXOFF 0x00001000
#define IMAXBEL 0x00002000
#define IUTF8 0x00004000
/* c_oflag bits */
-#define OPOST 0x00000001
#define OLCUC 0x00000002
#define ONLCR 0x00000004
-#define OCRNL 0x00000008
-#define ONOCR 0x00000010
-#define ONLRET 0x00000020
-#define OFILL 0x00000040
-#define OFDEL 0x00000080
#define NLDLY 0x00000100
#define NL0 0x00000000
#define NL1 0x00000100
@@ -143,24 +126,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030
#define CS5 0x00000000
#define CS6 0x00000010
@@ -201,10 +166,6 @@ struct ktermios {
#define B3500000 0x00001012
#define B4000000 0x00001013 */
#define CIBAUD 0x100f0000 /* input baud rate (not used) */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
/* c_lflag bits */
#define ISIG 0x00000001
@@ -244,18 +205,6 @@ struct ktermios {
/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
-
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* tcsetattr uses these */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/include/uapi/asm-generic/termbits-common.h b/include/uapi/asm-generic/termbits-common.h
new file mode 100644
index 000000000000..4d084fe8def5
--- /dev/null
+++ b/include/uapi/asm-generic/termbits-common.h
@@ -0,0 +1,65 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+#ifndef __ASM_GENERIC_TERMBITS_COMMON_H
+#define __ASM_GENERIC_TERMBITS_COMMON_H
+
+typedef unsigned char cc_t;
+typedef unsigned int speed_t;
+
+/* c_iflag bits */
+#define IGNBRK 0x001 /* Ignore break condition */
+#define BRKINT 0x002 /* Signal interrupt on break */
+#define IGNPAR 0x004 /* Ignore characters with parity errors */
+#define PARMRK 0x008 /* Mark parity and framing errors */
+#define INPCK 0x010 /* Enable input parity check */
+#define ISTRIP 0x020 /* Strip 8th bit off characters */
+#define INLCR 0x040 /* Map NL to CR on input */
+#define IGNCR 0x080 /* Ignore CR */
+#define ICRNL 0x100 /* Map CR to NL on input */
+#define IXANY 0x800 /* Any character will restart after stop */
+
+/* c_oflag bits */
+#define OPOST 0x01 /* Perform output processing */
+#define OCRNL 0x08
+#define ONOCR 0x10
+#define ONLRET 0x20
+#define OFILL 0x40
+#define OFDEL 0x80
+
+/* c_cflag bit meaning */
+/* Common CBAUD rates */
+#define B0 0x00000000 /* hang up */
+#define B50 0x00000001
+#define B75 0x00000002
+#define B110 0x00000003
+#define B134 0x00000004
+#define B150 0x00000005
+#define B200 0x00000006
+#define B300 0x00000007
+#define B600 0x00000008
+#define B1200 0x00000009
+#define B1800 0x0000000a
+#define B2400 0x0000000b
+#define B4800 0x0000000c
+#define B9600 0x0000000d
+#define B19200 0x0000000e
+#define B38400 0x0000000f
+#define EXTA B19200
+#define EXTB B38400
+
+#define CMSPAR 0x40000000 /* mark or space (stick) parity */
+#define CRTSCTS 0x80000000 /* flow control */
+
+#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
+
+/* tcflow() ACTION argument and TCXONC use these */
+#define TCOOFF 0 /* Suspend output */
+#define TCOON 1 /* Restart suspended output */
+#define TCIOFF 2 /* Send a STOP character */
+#define TCION 3 /* Send a START character */
+
+/* tcflush() QUEUE_SELECTOR argument and TCFLSH use these */
+#define TCIFLUSH 0 /* Discard data received but not yet read */
+#define TCOFLUSH 1 /* Discard data written but not yet sent */
+#define TCIOFLUSH 2 /* Discard all pending data */
+
+#endif /* __ASM_GENERIC_TERMBITS_COMMON_H */
diff --git a/include/uapi/asm-generic/termbits.h b/include/uapi/asm-generic/termbits.h
index 470fd673ff84..78a85c326eef 100644
--- a/include/uapi/asm-generic/termbits.h
+++ b/include/uapi/asm-generic/termbits.h
@@ -4,8 +4,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
#define NCCS 19
@@ -60,31 +60,15 @@ struct ktermios {
#define VEOL2 16
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IUCLC 0x00200
#define IXON 0x00400
-#define IXANY 0x00800
#define IXOFF 0x01000
#define IMAXBEL 0x02000
#define IUTF8 0x04000
/* c_oflag bits */
-#define OPOST 0x00001
#define OLCUC 0x00002
#define ONLCR 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x00040
-#define OFDEL 0x00080
#define NLDLY 0x00100
#define NL0 0x00000
#define NL1 0x00100
@@ -111,24 +95,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030
#define CS5 0x00000000
#define CS6 0x00000010
@@ -158,10 +124,6 @@ struct ktermios {
#define B3500000 0x0000100e
#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
/* c_lflag bits */
#define ISIG 0x00001
@@ -181,17 +143,6 @@ struct ktermios {
#define IEXTEN 0x08000
#define EXTPROC 0x10000
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* tcsetattr uses these */
#define TCSANOW 0
#define TCSADRAIN 1
--
2.30.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 1/3] termbits.h: create termbits-common.h for identical bits
@ 2022-05-09 9:34 ` Ilpo Järvinen
0 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
Some defines are the same across all archs. Move the most obvious
intersection to termbits-common.h.
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
---
arch/alpha/include/uapi/asm/termbits.h | 52 +----------------
arch/mips/include/uapi/asm/termbits.h | 53 +-----------------
arch/parisc/include/uapi/asm/termbits.h | 54 +-----------------
arch/powerpc/include/uapi/asm/termbits.h | 52 +----------------
arch/sparc/include/uapi/asm/termbits.h | 53 +-----------------
include/uapi/asm-generic/termbits-common.h | 65 ++++++++++++++++++++++
include/uapi/asm-generic/termbits.h | 53 +-----------------
7 files changed, 76 insertions(+), 306 deletions(-)
create mode 100644 include/uapi/asm-generic/termbits-common.h
diff --git a/arch/alpha/include/uapi/asm/termbits.h b/arch/alpha/include/uapi/asm/termbits.h
index 30dc7ff777b8..3c7a9afc4333 100644
--- a/arch/alpha/include/uapi/asm/termbits.h
+++ b/arch/alpha/include/uapi/asm/termbits.h
@@ -4,8 +4,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
/*
@@ -72,33 +72,17 @@ struct ktermios {
#define VTIME 17
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IXON 0x00200
#define IXOFF 0x00400
-#define IXANY 0x00800
#define IUCLC 0x01000
#define IMAXBEL 0x02000
#define IUTF8 0x04000
/* c_oflag bits */
-#define OPOST 0x00001
#define ONLCR 0x00002
#define OLCUC 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x000040
-#define OFDEL 0x000080
#define NLDLY 0x000300
#define NL0 0x000000
#define NL1 0x000100
@@ -131,24 +115,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000001f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CBAUDEX 0x00000000
#define B57600 0x00000010
#define B115200 0x00000011
@@ -180,11 +146,8 @@ struct ktermios {
#define HUPCL 0x00004000
#define CLOCAL 0x00008000
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
#define CIBAUD 0x1f0000
-#define IBSHIFT 16
/* c_lflag bits */
#define ISIG 0x00000080
@@ -204,17 +167,6 @@ struct ktermios {
#define IEXTEN 0x00000400
#define EXTPROC 0x10000000
-/* Values for the ACTION argument to `tcflow'. */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* Values for the QUEUE_SELECTOR argument to `tcflush'. */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* Values for the OPTIONAL_ACTIONS argument to `tcsetattr'. */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/arch/mips/include/uapi/asm/termbits.h b/arch/mips/include/uapi/asm/termbits.h
index d1315ccdb39a..b33f514315ce 100644
--- a/arch/mips/include/uapi/asm/termbits.h
+++ b/arch/mips/include/uapi/asm/termbits.h
@@ -13,8 +13,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
/*
@@ -80,31 +80,15 @@ struct ktermios {
#define VEOL 17 /* End-of-line character [ICANON]. */
/* c_iflag bits */
-#define IGNBRK 0x00001 /* Ignore break condition. */
-#define BRKINT 0x00002 /* Signal interrupt on break. */
-#define IGNPAR 0x00004 /* Ignore characters with parity errors. */
-#define PARMRK 0x00008 /* Mark parity and framing errors. */
-#define INPCK 0x00010 /* Enable input parity check. */
-#define ISTRIP 0x00020 /* Strip 8th bit off characters. */
-#define INLCR 0x00040 /* Map NL to CR on input. */
-#define IGNCR 0x00080 /* Ignore CR. */
-#define ICRNL 0x00100 /* Map CR to NL on input. */
#define IUCLC 0x00200 /* Map upper case to lower case on input. */
#define IXON 0x00400 /* Enable start/stop output control. */
-#define IXANY 0x00800 /* Any character will restart after stop. */
#define IXOFF 0x01000 /* Enable start/stop input control. */
#define IMAXBEL 0x02000 /* Ring bell when input queue is full. */
#define IUTF8 0x04000 /* Input is UTF-8 */
/* c_oflag bits */
-#define OPOST 0x00001 /* Perform output processing. */
#define OLCUC 0x00002 /* Map lower case to upper case on output. */
#define ONLCR 0x00004 /* Map NL to CR-NL on output. */
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x00040
-#define OFDEL 0x00080
#define NLDLY 0x00100
#define NL0 0x00000
#define NL1 0x00100
@@ -135,24 +119,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030 /* Number of bits per byte (mask) */
#define CS5 0x00000000 /* 5 bits per byte */
#define CS6 0x00000010 /* 6 bits per byte */
@@ -182,10 +148,6 @@ struct ktermios {
#define B3500000 0x0000100e
#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
/* c_lflag bits */
#define ISIG 0x00001 /* Enable signals. */
@@ -209,17 +171,6 @@ struct ktermios {
/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0 /* Suspend output. */
-#define TCOON 1 /* Restart suspended output. */
-#define TCIOFF 2 /* Send a STOP character. */
-#define TCION 3 /* Send a START character. */
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0 /* Discard data received but not yet read. */
-#define TCOFLUSH 1 /* Discard data written but not yet sent. */
-#define TCIOFLUSH 2 /* Discard all pending data. */
-
/* tcsetattr uses these */
#define TCSANOW TCSETS /* Change immediately. */
#define TCSADRAIN TCSETSW /* Change when pending output is written. */
diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
index 6017ee08f099..7f74a822b7ea 100644
--- a/arch/parisc/include/uapi/asm/termbits.h
+++ b/arch/parisc/include/uapi/asm/termbits.h
@@ -4,8 +4,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
#define NCCS 19
@@ -61,31 +61,15 @@ struct ktermios {
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IUCLC 0x00200
#define IXON 0x00400
-#define IXANY 0x00800
#define IXOFF 0x01000
#define IMAXBEL 0x04000
#define IUTF8 0x08000
/* c_oflag bits */
-#define OPOST 0x00001
#define OLCUC 0x00002
#define ONLCR 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x00040
-#define OFDEL 0x00080
#define NLDLY 0x00100
#define NL0 0x00000
#define NL1 0x00100
@@ -112,24 +96,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030
#define CS5 0x00000000
#define CS6 0x00000010
@@ -159,11 +125,6 @@ struct ktermios {
#define B3500000 0x0000100e
#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
-
/* c_lflag bits */
#define ISIG 0x00001
@@ -183,17 +144,6 @@ struct ktermios {
#define IEXTEN 0x08000
#define EXTPROC 0x10000
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* tcsetattr uses these */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/arch/powerpc/include/uapi/asm/termbits.h b/arch/powerpc/include/uapi/asm/termbits.h
index e4892f2d5592..19d1350a80bb 100644
--- a/arch/powerpc/include/uapi/asm/termbits.h
+++ b/arch/powerpc/include/uapi/asm/termbits.h
@@ -9,8 +9,8 @@
* 2 of the License, or (at your option) any later version.
*/
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
/*
@@ -64,33 +64,17 @@ struct ktermios {
#define VDISCARD 16
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IXON 0x00200
#define IXOFF 0x00400
-#define IXANY 0x00800
#define IUCLC 0x01000
#define IMAXBEL 0x02000
#define IUTF8 0x04000
/* c_oflag bits */
-#define OPOST 0x00001
#define ONLCR 0x00002
#define OLCUC 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x000040
-#define OFDEL 0x000080
#define NLDLY 0x000300
#define NL0 0x000000
#define NL1 0x000100
@@ -119,24 +103,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x000000ff
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CBAUDEX 0x00000000
#define B57600 0x00000010
#define B115200 0x00000011
@@ -156,7 +122,6 @@ struct ktermios {
#define BOTHER 0x0000001f
#define CIBAUD 0x00ff0000
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
#define CSIZE 0x00000300
#define CS5 0x00000000
@@ -171,8 +136,6 @@ struct ktermios {
#define HUPCL 0x00004000
#define CLOCAL 0x00008000
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
/* c_lflag bits */
#define ISIG 0x00000080
@@ -192,17 +155,6 @@ struct ktermios {
#define IEXTEN 0x00000400
#define EXTPROC 0x10000000
-/* Values for the ACTION argument to `tcflow'. */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* Values for the QUEUE_SELECTOR argument to `tcflush'. */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* Values for the OPTIONAL_ACTIONS argument to `tcsetattr'. */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/arch/sparc/include/uapi/asm/termbits.h b/arch/sparc/include/uapi/asm/termbits.h
index ce5ad5d0f105..854bdd153cca 100644
--- a/arch/sparc/include/uapi/asm/termbits.h
+++ b/arch/sparc/include/uapi/asm/termbits.h
@@ -4,8 +4,7 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
#if defined(__sparc__) && defined(__arch64__)
typedef unsigned int tcflag_t;
@@ -90,31 +89,15 @@ struct ktermios {
#endif
/* c_iflag bits */
-#define IGNBRK 0x00000001
-#define BRKINT 0x00000002
-#define IGNPAR 0x00000004
-#define PARMRK 0x00000008
-#define INPCK 0x00000010
-#define ISTRIP 0x00000020
-#define INLCR 0x00000040
-#define IGNCR 0x00000080
-#define ICRNL 0x00000100
#define IUCLC 0x00000200
#define IXON 0x00000400
-#define IXANY 0x00000800
#define IXOFF 0x00001000
#define IMAXBEL 0x00002000
#define IUTF8 0x00004000
/* c_oflag bits */
-#define OPOST 0x00000001
#define OLCUC 0x00000002
#define ONLCR 0x00000004
-#define OCRNL 0x00000008
-#define ONOCR 0x00000010
-#define ONLRET 0x00000020
-#define OFILL 0x00000040
-#define OFDEL 0x00000080
#define NLDLY 0x00000100
#define NL0 0x00000000
#define NL1 0x00000100
@@ -143,24 +126,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030
#define CS5 0x00000000
#define CS6 0x00000010
@@ -201,10 +166,6 @@ struct ktermios {
#define B3500000 0x00001012
#define B4000000 0x00001013 */
#define CIBAUD 0x100f0000 /* input baud rate (not used) */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
/* c_lflag bits */
#define ISIG 0x00000001
@@ -244,18 +205,6 @@ struct ktermios {
/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
-
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* tcsetattr uses these */
#define TCSANOW 0
#define TCSADRAIN 1
diff --git a/include/uapi/asm-generic/termbits-common.h b/include/uapi/asm-generic/termbits-common.h
new file mode 100644
index 000000000000..4d084fe8def5
--- /dev/null
+++ b/include/uapi/asm-generic/termbits-common.h
@@ -0,0 +1,65 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+#ifndef __ASM_GENERIC_TERMBITS_COMMON_H
+#define __ASM_GENERIC_TERMBITS_COMMON_H
+
+typedef unsigned char cc_t;
+typedef unsigned int speed_t;
+
+/* c_iflag bits */
+#define IGNBRK 0x001 /* Ignore break condition */
+#define BRKINT 0x002 /* Signal interrupt on break */
+#define IGNPAR 0x004 /* Ignore characters with parity errors */
+#define PARMRK 0x008 /* Mark parity and framing errors */
+#define INPCK 0x010 /* Enable input parity check */
+#define ISTRIP 0x020 /* Strip 8th bit off characters */
+#define INLCR 0x040 /* Map NL to CR on input */
+#define IGNCR 0x080 /* Ignore CR */
+#define ICRNL 0x100 /* Map CR to NL on input */
+#define IXANY 0x800 /* Any character will restart after stop */
+
+/* c_oflag bits */
+#define OPOST 0x01 /* Perform output processing */
+#define OCRNL 0x08
+#define ONOCR 0x10
+#define ONLRET 0x20
+#define OFILL 0x40
+#define OFDEL 0x80
+
+/* c_cflag bit meaning */
+/* Common CBAUD rates */
+#define B0 0x00000000 /* hang up */
+#define B50 0x00000001
+#define B75 0x00000002
+#define B110 0x00000003
+#define B134 0x00000004
+#define B150 0x00000005
+#define B200 0x00000006
+#define B300 0x00000007
+#define B600 0x00000008
+#define B1200 0x00000009
+#define B1800 0x0000000a
+#define B2400 0x0000000b
+#define B4800 0x0000000c
+#define B9600 0x0000000d
+#define B19200 0x0000000e
+#define B38400 0x0000000f
+#define EXTA B19200
+#define EXTB B38400
+
+#define CMSPAR 0x40000000 /* mark or space (stick) parity */
+#define CRTSCTS 0x80000000 /* flow control */
+
+#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
+
+/* tcflow() ACTION argument and TCXONC use these */
+#define TCOOFF 0 /* Suspend output */
+#define TCOON 1 /* Restart suspended output */
+#define TCIOFF 2 /* Send a STOP character */
+#define TCION 3 /* Send a START character */
+
+/* tcflush() QUEUE_SELECTOR argument and TCFLSH use these */
+#define TCIFLUSH 0 /* Discard data received but not yet read */
+#define TCOFLUSH 1 /* Discard data written but not yet sent */
+#define TCIOFLUSH 2 /* Discard all pending data */
+
+#endif /* __ASM_GENERIC_TERMBITS_COMMON_H */
diff --git a/include/uapi/asm-generic/termbits.h b/include/uapi/asm-generic/termbits.h
index 470fd673ff84..78a85c326eef 100644
--- a/include/uapi/asm-generic/termbits.h
+++ b/include/uapi/asm-generic/termbits.h
@@ -4,8 +4,8 @@
#include <linux/posix_types.h>
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
+#include <asm-generic/termbits-common.h>
+
typedef unsigned int tcflag_t;
#define NCCS 19
@@ -60,31 +60,15 @@ struct ktermios {
#define VEOL2 16
/* c_iflag bits */
-#define IGNBRK 0x00001
-#define BRKINT 0x00002
-#define IGNPAR 0x00004
-#define PARMRK 0x00008
-#define INPCK 0x00010
-#define ISTRIP 0x00020
-#define INLCR 0x00040
-#define IGNCR 0x00080
-#define ICRNL 0x00100
#define IUCLC 0x00200
#define IXON 0x00400
-#define IXANY 0x00800
#define IXOFF 0x01000
#define IMAXBEL 0x02000
#define IUTF8 0x04000
/* c_oflag bits */
-#define OPOST 0x00001
#define OLCUC 0x00002
#define ONLCR 0x00004
-#define OCRNL 0x00008
-#define ONOCR 0x00010
-#define ONLRET 0x00020
-#define OFILL 0x00040
-#define OFDEL 0x00080
#define NLDLY 0x00100
#define NL0 0x00000
#define NL1 0x00100
@@ -111,24 +95,6 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
-#define B0 0x00000000 /* hang up */
-#define B50 0x00000001
-#define B75 0x00000002
-#define B110 0x00000003
-#define B134 0x00000004
-#define B150 0x00000005
-#define B200 0x00000006
-#define B300 0x00000007
-#define B600 0x00000008
-#define B1200 0x00000009
-#define B1800 0x0000000a
-#define B2400 0x0000000b
-#define B4800 0x0000000c
-#define B9600 0x0000000d
-#define B19200 0x0000000e
-#define B38400 0x0000000f
-#define EXTA B19200
-#define EXTB B38400
#define CSIZE 0x00000030
#define CS5 0x00000000
#define CS6 0x00000010
@@ -158,10 +124,6 @@ struct ktermios {
#define B3500000 0x0000100e
#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
-#define CMSPAR 0x40000000 /* mark or space (stick) parity */
-#define CRTSCTS 0x80000000 /* flow control */
-
-#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
/* c_lflag bits */
#define ISIG 0x00001
@@ -181,17 +143,6 @@ struct ktermios {
#define IEXTEN 0x08000
#define EXTPROC 0x10000
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
/* tcsetattr uses these */
#define TCSANOW 0
#define TCSADRAIN 1
--
2.30.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/3] termbits.h: Align lines & format
2022-05-09 9:34 ` Ilpo Järvinen
@ 2022-05-09 9:34 ` Ilpo Järvinen
-1 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
- Align c_cc defines.
- Remove extra newlines.
- Realign & adjust number of leading zeros.
- Reorder c_cflag defines to ascending order
- Make comment ending shorted (=remove period and one extra space from
the comments in mips).
Co-developed-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
---
arch/alpha/include/uapi/asm/termbits.h | 130 +++++++++---------
arch/mips/include/uapi/asm/termbits.h | 156 ++++++++++-----------
arch/parisc/include/uapi/asm/termbits.h | 77 +++++------
arch/powerpc/include/uapi/asm/termbits.h | 100 +++++++-------
arch/sparc/include/uapi/asm/termbits.h | 168 +++++++++++------------
include/uapi/asm-generic/termbits.h | 76 +++++-----
6 files changed, 346 insertions(+), 361 deletions(-)
diff --git a/arch/alpha/include/uapi/asm/termbits.h b/arch/alpha/include/uapi/asm/termbits.h
index 3c7a9afc4333..735e9ffe2795 100644
--- a/arch/alpha/include/uapi/asm/termbits.h
+++ b/arch/alpha/include/uapi/asm/termbits.h
@@ -53,60 +53,58 @@ struct ktermios {
};
/* c_cc characters */
-#define VEOF 0
-#define VEOL 1
-#define VEOL2 2
-#define VERASE 3
-#define VWERASE 4
-#define VKILL 5
-#define VREPRINT 6
-#define VSWTC 7
-#define VINTR 8
-#define VQUIT 9
-#define VSUSP 10
-#define VSTART 12
-#define VSTOP 13
-#define VLNEXT 14
-#define VDISCARD 15
-#define VMIN 16
-#define VTIME 17
+#define VEOF 0
+#define VEOL 1
+#define VEOL2 2
+#define VERASE 3
+#define VWERASE 4
+#define VKILL 5
+#define VREPRINT 6
+#define VSWTC 7
+#define VINTR 8
+#define VQUIT 9
+#define VSUSP 10
+#define VSTART 12
+#define VSTOP 13
+#define VLNEXT 14
+#define VDISCARD 15
+#define VMIN 16
+#define VTIME 17
/* c_iflag bits */
-#define IXON 0x00200
-#define IXOFF 0x00400
-#define IUCLC 0x01000
-#define IMAXBEL 0x02000
-#define IUTF8 0x04000
+#define IXON 0x0200
+#define IXOFF 0x0400
+#define IUCLC 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
#define ONLCR 0x00002
#define OLCUC 0x00004
-
-
-#define NLDLY 0x000300
-#define NL0 0x000000
-#define NL1 0x000100
-#define NL2 0x000200
-#define NL3 0x000300
-#define TABDLY 0x000c00
-#define TAB0 0x000000
-#define TAB1 0x000400
-#define TAB2 0x000800
-#define TAB3 0x000c00
-#define CRDLY 0x003000
-#define CR0 0x000000
-#define CR1 0x001000
-#define CR2 0x002000
-#define CR3 0x003000
-#define FFDLY 0x004000
-#define FF0 0x000000
-#define FF1 0x004000
-#define BSDLY 0x008000
-#define BS0 0x000000
-#define BS1 0x008000
-#define VTDLY 0x010000
-#define VT0 0x000000
-#define VT1 0x010000
+#define NLDLY 0x00300
+#define NL0 0x00000
+#define NL1 0x00100
+#define NL2 0x00200
+#define NL3 0x00300
+#define TABDLY 0x00c00
+#define TAB0 0x00000
+#define TAB1 0x00400
+#define TAB2 0x00800
+#define TAB3 0x00c00
+#define CRDLY 0x03000
+#define CR0 0x00000
+#define CR1 0x01000
+#define CR2 0x02000
+#define CR3 0x03000
+#define FFDLY 0x04000
+#define FF0 0x00000
+#define FF1 0x04000
+#define BSDLY 0x08000
+#define BS0 0x00000
+#define BS1 0x08000
+#define VTDLY 0x10000
+#define VT0 0x00000
+#define VT1 0x10000
/*
* Should be equivalent to TAB3, see description of TAB3 in
* POSIX.1-2008, Ch. 11.2.3 "Output Modes"
@@ -116,38 +114,34 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000001f
#define CBAUDEX 0x00000000
-#define B57600 0x00000010
-#define B115200 0x00000011
-#define B230400 0x00000012
-#define B460800 0x00000013
-#define B500000 0x00000014
-#define B576000 0x00000015
-#define B921600 0x00000016
-#define B1000000 0x00000017
-#define B1152000 0x00000018
-#define B1500000 0x00000019
-#define B2000000 0x0000001a
-#define B2500000 0x0000001b
-#define B3000000 0x0000001c
-#define B3500000 0x0000001d
-#define B4000000 0x0000001e
#define BOTHER 0x0000001f
-
+#define B57600 0x00000010
+#define B115200 0x00000011
+#define B230400 0x00000012
+#define B460800 0x00000013
+#define B500000 0x00000014
+#define B576000 0x00000015
+#define B921600 0x00000016
+#define B1000000 0x00000017
+#define B1152000 0x00000018
+#define B1500000 0x00000019
+#define B2000000 0x0000001a
+#define B2500000 0x0000001b
+#define B3000000 0x0000001c
+#define B3500000 0x0000001d
+#define B4000000 0x0000001e
#define CSIZE 0x00000300
#define CS5 0x00000000
#define CS6 0x00000100
#define CS7 0x00000200
#define CS8 0x00000300
-
#define CSTOPB 0x00000400
#define CREAD 0x00000800
#define PARENB 0x00001000
#define PARODD 0x00002000
#define HUPCL 0x00004000
-
#define CLOCAL 0x00008000
-
-#define CIBAUD 0x1f0000
+#define CIBAUD 0x001f0000
/* c_lflag bits */
#define ISIG 0x00000080
diff --git a/arch/mips/include/uapi/asm/termbits.h b/arch/mips/include/uapi/asm/termbits.h
index b33f514315ce..8fa3e79d4f94 100644
--- a/arch/mips/include/uapi/asm/termbits.h
+++ b/arch/mips/include/uapi/asm/termbits.h
@@ -15,7 +15,7 @@
#include <asm-generic/termbits-common.h>
-typedef unsigned int tcflag_t;
+typedef unsigned int tcflag_t;
/*
* The ABI says nothing about NCC but seems to use NCCS as
@@ -54,64 +54,64 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0 /* Interrupt character [ISIG]. */
-#define VQUIT 1 /* Quit character [ISIG]. */
-#define VERASE 2 /* Erase character [ICANON]. */
-#define VKILL 3 /* Kill-line character [ICANON]. */
-#define VMIN 4 /* Minimum number of bytes read at once [!ICANON]. */
-#define VTIME 5 /* Time-out value (tenths of a second) [!ICANON]. */
-#define VEOL2 6 /* Second EOL character [ICANON]. */
+#define VINTR 0 /* Interrupt character [ISIG] */
+#define VQUIT 1 /* Quit character [ISIG] */
+#define VERASE 2 /* Erase character [ICANON] */
+#define VKILL 3 /* Kill-line character [ICANON] */
+#define VMIN 4 /* Minimum number of bytes read at once [!ICANON] */
+#define VTIME 5 /* Time-out value (tenths of a second) [!ICANON] */
+#define VEOL2 6 /* Second EOL character [ICANON] */
#define VSWTC 7 /* ??? */
#define VSWTCH VSWTC
-#define VSTART 8 /* Start (X-ON) character [IXON, IXOFF]. */
-#define VSTOP 9 /* Stop (X-OFF) character [IXON, IXOFF]. */
-#define VSUSP 10 /* Suspend character [ISIG]. */
+#define VSTART 8 /* Start (X-ON) character [IXON, IXOFF] */
+#define VSTOP 9 /* Stop (X-OFF) character [IXON, IXOFF] */
+#define VSUSP 10 /* Suspend character [ISIG] */
#if 0
/*
* VDSUSP is not supported
*/
-#define VDSUSP 11 /* Delayed suspend character [ISIG]. */
+#define VDSUSP 11 /* Delayed suspend character [ISIG] */
#endif
-#define VREPRINT 12 /* Reprint-line character [ICANON]. */
-#define VDISCARD 13 /* Discard character [IEXTEN]. */
-#define VWERASE 14 /* Word-erase character [ICANON]. */
-#define VLNEXT 15 /* Literal-next character [IEXTEN]. */
-#define VEOF 16 /* End-of-file character [ICANON]. */
-#define VEOL 17 /* End-of-line character [ICANON]. */
+#define VREPRINT 12 /* Reprint-line character [ICANON] */
+#define VDISCARD 13 /* Discard character [IEXTEN] */
+#define VWERASE 14 /* Word-erase character [ICANON] */
+#define VLNEXT 15 /* Literal-next character [IEXTEN] */
+#define VEOF 16 /* End-of-file character [ICANON] */
+#define VEOL 17 /* End-of-line character [ICANON] */
/* c_iflag bits */
-#define IUCLC 0x00200 /* Map upper case to lower case on input. */
-#define IXON 0x00400 /* Enable start/stop output control. */
-#define IXOFF 0x01000 /* Enable start/stop input control. */
-#define IMAXBEL 0x02000 /* Ring bell when input queue is full. */
-#define IUTF8 0x04000 /* Input is UTF-8 */
+#define IUCLC 0x0200 /* Map upper case to lower case on input */
+#define IXON 0x0400 /* Enable start/stop output control */
+#define IXOFF 0x1000 /* Enable start/stop input control */
+#define IMAXBEL 0x2000 /* Ring bell when input queue is full */
+#define IUTF8 0x4000 /* Input is UTF-8 */
/* c_oflag bits */
-#define OLCUC 0x00002 /* Map lower case to upper case on output. */
-#define ONLCR 0x00004 /* Map NL to CR-NL on output. */
+#define OLCUC 0x00002 /* Map lower case to upper case on output */
+#define ONLCR 0x00004 /* Map NL to CR-NL on output */
#define NLDLY 0x00100
-#define NL0 0x00000
-#define NL1 0x00100
+#define NL0 0x00000
+#define NL1 0x00100
#define CRDLY 0x00600
-#define CR0 0x00000
-#define CR1 0x00200
-#define CR2 0x00400
-#define CR3 0x00600
+#define CR0 0x00000
+#define CR1 0x00200
+#define CR2 0x00400
+#define CR3 0x00600
#define TABDLY 0x01800
-#define TAB0 0x00000
-#define TAB1 0x00800
-#define TAB2 0x01000
-#define TAB3 0x01800
-#define XTABS 0x01800
+#define TAB0 0x00000
+#define TAB1 0x00800
+#define TAB2 0x01000
+#define TAB3 0x01800
+#define XTABS 0x01800
#define BSDLY 0x02000
-#define BS0 0x00000
-#define BS1 0x02000
+#define BS0 0x00000
+#define BS1 0x02000
#define VTDLY 0x04000
-#define VT0 0x00000
-#define VT1 0x04000
+#define VT0 0x00000
+#define VT1 0x04000
#define FFDLY 0x08000
-#define FF0 0x00000
-#define FF1 0x08000
+#define FF0 0x00000
+#define FF1 0x08000
/*
#define PAGEOUT ???
#define WRAP ???
@@ -120,10 +120,10 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
#define CSIZE 0x00000030 /* Number of bits per byte (mask) */
-#define CS5 0x00000000 /* 5 bits per byte */
-#define CS6 0x00000010 /* 6 bits per byte */
-#define CS7 0x00000020 /* 7 bits per byte */
-#define CS8 0x00000030 /* 8 bits per byte */
+#define CS5 0x00000000 /* 5 bits per byte */
+#define CS6 0x00000010 /* 6 bits per byte */
+#define CS7 0x00000020 /* 7 bits per byte */
+#define CS8 0x00000030 /* 8 bits per byte */
#define CSTOPB 0x00000040 /* Two stop bits instead of one */
#define CREAD 0x00000080 /* Enable receiver */
#define PARENB 0x00000100 /* Parity enable */
@@ -131,40 +131,40 @@ struct ktermios {
#define HUPCL 0x00000400 /* Hang up on last close */
#define CLOCAL 0x00000800 /* Ignore modem status lines */
#define CBAUDEX 0x00001000
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B500000 0x00001005
-#define B576000 0x00001006
-#define B921600 0x00001007
-#define B1000000 0x00001008
-#define B1152000 0x00001009
-#define B1500000 0x0000100a
-#define B2000000 0x0000100b
-#define B2500000 0x0000100c
-#define B3000000 0x0000100d
-#define B3500000 0x0000100e
-#define B4000000 0x0000100f
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
+#define B500000 0x00001005
+#define B576000 0x00001006
+#define B921600 0x00001007
+#define B1000000 0x00001008
+#define B1152000 0x00001009
+#define B1500000 0x0000100a
+#define B2000000 0x0000100b
+#define B2500000 0x0000100c
+#define B3000000 0x0000100d
+#define B3500000 0x0000100e
+#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
/* c_lflag bits */
-#define ISIG 0x00001 /* Enable signals. */
-#define ICANON 0x00002 /* Do erase and kill processing. */
+#define ISIG 0x00001 /* Enable signals */
+#define ICANON 0x00002 /* Do erase and kill processing */
#define XCASE 0x00004
-#define ECHO 0x00008 /* Enable echo. */
-#define ECHOE 0x00010 /* Visual erase for ERASE. */
-#define ECHOK 0x00020 /* Echo NL after KILL. */
-#define ECHONL 0x00040 /* Echo NL even if ECHO is off. */
-#define NOFLSH 0x00080 /* Disable flush after interrupt. */
-#define IEXTEN 0x00100 /* Enable DISCARD and LNEXT. */
-#define ECHOCTL 0x00200 /* Echo control characters as ^X. */
-#define ECHOPRT 0x00400 /* Hardcopy visual erase. */
-#define ECHOKE 0x00800 /* Visual erase for KILL. */
+#define ECHO 0x00008 /* Enable echo */
+#define ECHOE 0x00010 /* Visual erase for ERASE */
+#define ECHOK 0x00020 /* Echo NL after KILL */
+#define ECHONL 0x00040 /* Echo NL even if ECHO is off */
+#define NOFLSH 0x00080 /* Disable flush after interrupt */
+#define IEXTEN 0x00100 /* Enable DISCARD and LNEXT */
+#define ECHOCTL 0x00200 /* Echo control characters as ^X */
+#define ECHOPRT 0x00400 /* Hardcopy visual erase */
+#define ECHOKE 0x00800 /* Visual erase for KILL */
#define FLUSHO 0x02000
-#define PENDIN 0x04000 /* Retype pending input (state). */
-#define TOSTOP 0x08000 /* Send SIGTTOU for background output. */
+#define PENDIN 0x04000 /* Retype pending input (state) */
+#define TOSTOP 0x08000 /* Send SIGTTOU for background output */
#define ITOSTOP TOSTOP
#define EXTPROC 0x10000 /* External processing on pty */
@@ -172,8 +172,8 @@ struct ktermios {
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
/* tcsetattr uses these */
-#define TCSANOW TCSETS /* Change immediately. */
-#define TCSADRAIN TCSETSW /* Change when pending output is written. */
-#define TCSAFLUSH TCSETSF /* Flush pending input before changing. */
+#define TCSANOW TCSETS /* Change immediately */
+#define TCSADRAIN TCSETSW /* Change when pending output is written */
+#define TCSAFLUSH TCSETSF /* Flush pending input before changing */
#endif /* _ASM_TERMBITS_H */
diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
index 7f74a822b7ea..d72c5ebf3a3a 100644
--- a/arch/parisc/include/uapi/asm/termbits.h
+++ b/arch/parisc/include/uapi/asm/termbits.h
@@ -41,31 +41,30 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0
-#define VQUIT 1
-#define VERASE 2
-#define VKILL 3
-#define VEOF 4
-#define VTIME 5
-#define VMIN 6
-#define VSWTC 7
-#define VSTART 8
-#define VSTOP 9
-#define VSUSP 10
-#define VEOL 11
-#define VREPRINT 12
-#define VDISCARD 13
-#define VWERASE 14
-#define VLNEXT 15
-#define VEOL2 16
-
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VTIME 5
+#define VMIN 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
+#define VSUSP 10
+#define VEOL 11
+#define VREPRINT 12
+#define VDISCARD 13
+#define VWERASE 14
+#define VLNEXT 15
+#define VEOL2 16
/* c_iflag bits */
-#define IUCLC 0x00200
-#define IXON 0x00400
-#define IXOFF 0x01000
-#define IMAXBEL 0x04000
-#define IUTF8 0x08000
+#define IUCLC 0x0200
+#define IXON 0x0400
+#define IXOFF 0x1000
+#define IMAXBEL 0x4000
+#define IUTF8 0x8000
/* c_oflag bits */
#define OLCUC 0x00002
@@ -108,22 +107,22 @@ struct ktermios {
#define HUPCL 0x00000400
#define CLOCAL 0x00000800
#define CBAUDEX 0x00001000
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B500000 0x00001005
-#define B576000 0x00001006
-#define B921600 0x00001007
-#define B1000000 0x00001008
-#define B1152000 0x00001009
-#define B1500000 0x0000100a
-#define B2000000 0x0000100b
-#define B2500000 0x0000100c
-#define B3000000 0x0000100d
-#define B3500000 0x0000100e
-#define B4000000 0x0000100f
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
+#define B500000 0x00001005
+#define B576000 0x00001006
+#define B921600 0x00001007
+#define B1000000 0x00001008
+#define B1152000 0x00001009
+#define B1500000 0x0000100a
+#define B2000000 0x0000100b
+#define B2500000 0x0000100c
+#define B3000000 0x0000100d
+#define B3500000 0x0000100e
+#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
/* c_lflag bits */
diff --git a/arch/powerpc/include/uapi/asm/termbits.h b/arch/powerpc/include/uapi/asm/termbits.h
index 19d1350a80bb..21dc86dcb2f1 100644
--- a/arch/powerpc/include/uapi/asm/termbits.h
+++ b/arch/powerpc/include/uapi/asm/termbits.h
@@ -64,78 +64,72 @@ struct ktermios {
#define VDISCARD 16
/* c_iflag bits */
-#define IXON 0x00200
-#define IXOFF 0x00400
-#define IUCLC 0x01000
-#define IMAXBEL 0x02000
-#define IUTF8 0x04000
+#define IXON 0x0200
+#define IXOFF 0x0400
+#define IUCLC 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
#define ONLCR 0x00002
#define OLCUC 0x00004
-
-
-#define NLDLY 0x000300
-#define NL0 0x000000
-#define NL1 0x000100
-#define NL2 0x000200
-#define NL3 0x000300
-#define TABDLY 0x000c00
-#define TAB0 0x000000
-#define TAB1 0x000400
-#define TAB2 0x000800
-#define TAB3 0x000c00
-#define XTABS 0x000c00 /* required by POSIX to == TAB3 */
-#define CRDLY 0x003000
-#define CR0 0x000000
-#define CR1 0x001000
-#define CR2 0x002000
-#define CR3 0x003000
-#define FFDLY 0x004000
-#define FF0 0x000000
-#define FF1 0x004000
-#define BSDLY 0x008000
-#define BS0 0x000000
-#define BS1 0x008000
-#define VTDLY 0x010000
-#define VT0 0x000000
-#define VT1 0x010000
+#define NLDLY 0x00300
+#define NL0 0x00000
+#define NL1 0x00100
+#define NL2 0x00200
+#define NL3 0x00300
+#define TABDLY 0x00c00
+#define TAB0 0x00000
+#define TAB1 0x00400
+#define TAB2 0x00800
+#define TAB3 0x00c00
+#define XTABS 0x00c00 /* required by POSIX to == TAB3 */
+#define CRDLY 0x03000
+#define CR0 0x00000
+#define CR1 0x01000
+#define CR2 0x02000
+#define CR3 0x03000
+#define FFDLY 0x04000
+#define FF0 0x00000
+#define FF1 0x04000
+#define BSDLY 0x08000
+#define BS0 0x00000
+#define BS1 0x08000
+#define VTDLY 0x10000
+#define VT0 0x00000
+#define VT1 0x10000
/* c_cflag bit meaning */
#define CBAUD 0x000000ff
#define CBAUDEX 0x00000000
-#define B57600 0x00000010
-#define B115200 0x00000011
-#define B230400 0x00000012
-#define B460800 0x00000013
-#define B500000 0x00000014
-#define B576000 0x00000015
-#define B921600 0x00000016
-#define B1000000 0x00000017
-#define B1152000 0x00000018
-#define B1500000 0x00000019
-#define B2000000 0x0000001a
-#define B2500000 0x0000001b
-#define B3000000 0x0000001c
-#define B3500000 0x0000001d
-#define B4000000 0x0000001e
-#define BOTHER 0x0000001f
-
-#define CIBAUD 0x00ff0000
-
+#define BOTHER 0x0000001f
+#define B57600 0x00000010
+#define B115200 0x00000011
+#define B230400 0x00000012
+#define B460800 0x00000013
+#define B500000 0x00000014
+#define B576000 0x00000015
+#define B921600 0x00000016
+#define B1000000 0x00000017
+#define B1152000 0x00000018
+#define B1500000 0x00000019
+#define B2000000 0x0000001a
+#define B2500000 0x0000001b
+#define B3000000 0x0000001c
+#define B3500000 0x0000001d
+#define B4000000 0x0000001e
#define CSIZE 0x00000300
#define CS5 0x00000000
#define CS6 0x00000100
#define CS7 0x00000200
#define CS8 0x00000300
-
#define CSTOPB 0x00000400
#define CREAD 0x00000800
#define PARENB 0x00001000
#define PARODD 0x00002000
#define HUPCL 0x00004000
-
#define CLOCAL 0x00008000
+#define CIBAUD 0x00ff0000
/* c_lflag bits */
#define ISIG 0x00000080
diff --git a/arch/sparc/include/uapi/asm/termbits.h b/arch/sparc/include/uapi/asm/termbits.h
index 854bdd153cca..cfcc4e07ce51 100644
--- a/arch/sparc/include/uapi/asm/termbits.h
+++ b/arch/sparc/include/uapi/asm/termbits.h
@@ -7,9 +7,9 @@
#include <asm-generic/termbits-common.h>
#if defined(__sparc__) && defined(__arch64__)
-typedef unsigned int tcflag_t;
+typedef unsigned int tcflag_t;
#else
-typedef unsigned long tcflag_t;
+typedef unsigned long tcflag_t;
#endif
#define NCC 8
@@ -60,21 +60,19 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0
-#define VQUIT 1
-#define VERASE 2
-#define VKILL 3
-#define VEOF 4
-#define VEOL 5
-#define VEOL2 6
-#define VSWTC 7
-#define VSTART 8
-#define VSTOP 9
-
-
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VEOL 5
+#define VEOL2 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
#define VSUSP 10
-#define VDSUSP 11 /* SunOS POSIX nicety I do believe... */
+#define VDSUSP 11 /* SunOS POSIX nicety I do believe... */
#define VREPRINT 12
#define VDISCARD 13
#define VWERASE 14
@@ -89,83 +87,83 @@ struct ktermios {
#endif
/* c_iflag bits */
-#define IUCLC 0x00000200
-#define IXON 0x00000400
-#define IXOFF 0x00001000
-#define IMAXBEL 0x00002000
-#define IUTF8 0x00004000
+#define IUCLC 0x0200
+#define IXON 0x0400
+#define IXOFF 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
-#define OLCUC 0x00000002
-#define ONLCR 0x00000004
-#define NLDLY 0x00000100
-#define NL0 0x00000000
-#define NL1 0x00000100
-#define CRDLY 0x00000600
-#define CR0 0x00000000
-#define CR1 0x00000200
-#define CR2 0x00000400
-#define CR3 0x00000600
-#define TABDLY 0x00001800
-#define TAB0 0x00000000
-#define TAB1 0x00000800
-#define TAB2 0x00001000
-#define TAB3 0x00001800
-#define XTABS 0x00001800
-#define BSDLY 0x00002000
-#define BS0 0x00000000
-#define BS1 0x00002000
-#define VTDLY 0x00004000
-#define VT0 0x00000000
-#define VT1 0x00004000
-#define FFDLY 0x00008000
-#define FF0 0x00000000
-#define FF1 0x00008000
-#define PAGEOUT 0x00010000 /* SUNOS specific */
-#define WRAP 0x00020000 /* SUNOS specific */
+#define OLCUC 0x00002
+#define ONLCR 0x00004
+#define NLDLY 0x00100
+#define NL0 0x00000
+#define NL1 0x00100
+#define CRDLY 0x00600
+#define CR0 0x00000
+#define CR1 0x00200
+#define CR2 0x00400
+#define CR3 0x00600
+#define TABDLY 0x01800
+#define TAB0 0x00000
+#define TAB1 0x00800
+#define TAB2 0x01000
+#define TAB3 0x01800
+#define XTABS 0x01800
+#define BSDLY 0x02000
+#define BS0 0x00000
+#define BS1 0x02000
+#define VTDLY 0x04000
+#define VT0 0x00000
+#define VT1 0x04000
+#define FFDLY 0x08000
+#define FF0 0x00000
+#define FF1 0x08000
+#define PAGEOUT 0x10000 /* SUNOS specific */
+#define WRAP 0x20000 /* SUNOS specific */
/* c_cflag bit meaning */
-#define CBAUD 0x0000100f
-#define CSIZE 0x00000030
-#define CS5 0x00000000
-#define CS6 0x00000010
-#define CS7 0x00000020
-#define CS8 0x00000030
-#define CSTOPB 0x00000040
-#define CREAD 0x00000080
-#define PARENB 0x00000100
-#define PARODD 0x00000200
-#define HUPCL 0x00000400
-#define CLOCAL 0x00000800
-#define CBAUDEX 0x00001000
+#define CBAUD 0x0000100f
+#define CSIZE 0x00000030
+#define CS5 0x00000000
+#define CS6 0x00000010
+#define CS7 0x00000020
+#define CS8 0x00000030
+#define CSTOPB 0x00000040
+#define CREAD 0x00000080
+#define PARENB 0x00000100
+#define PARODD 0x00000200
+#define HUPCL 0x00000400
+#define CLOCAL 0x00000800
+#define CBAUDEX 0x00001000
/* We'll never see these speeds with the Zilogs, but for completeness... */
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
/* This is what we can do with the Zilogs. */
-#define B76800 0x00001005
+#define B76800 0x00001005
/* This is what we can do with the SAB82532. */
-#define B153600 0x00001006
-#define B307200 0x00001007
-#define B614400 0x00001008
-#define B921600 0x00001009
+#define B153600 0x00001006
+#define B307200 0x00001007
+#define B614400 0x00001008
+#define B921600 0x00001009
/* And these are the rest... */
-#define B500000 0x0000100a
-#define B576000 0x0000100b
-#define B1000000 0x0000100c
-#define B1152000 0x0000100d
-#define B1500000 0x0000100e
-#define B2000000 0x0000100f
+#define B500000 0x0000100a
+#define B576000 0x0000100b
+#define B1000000 0x0000100c
+#define B1152000 0x0000100d
+#define B1500000 0x0000100e
+#define B2000000 0x0000100f
/* These have totally bogus values and nobody uses them
so far. Later on we'd have to use say 0x10000x and
adjust CBAUD constant and drivers accordingly.
-#define B2500000 0x00001010
-#define B3000000 0x00001011
-#define B3500000 0x00001012
-#define B4000000 0x00001013 */
-#define CIBAUD 0x100f0000 /* input baud rate (not used) */
+#define B2500000 0x00001010
+#define B3000000 0x00001011
+#define B3500000 0x00001012
+#define B4000000 0x00001013 */
+#define CIBAUD 0x100f0000 /* input baud rate (not used) */
/* c_lflag bits */
#define ISIG 0x00000001
@@ -180,7 +178,7 @@ struct ktermios {
#define ECHOCTL 0x00000200
#define ECHOPRT 0x00000400
#define ECHOKE 0x00000800
-#define DEFECHO 0x00001000 /* SUNOS thing, what is it? */
+#define DEFECHO 0x00001000 /* SUNOS thing, what is it? */
#define FLUSHO 0x00002000
#define PENDIN 0x00004000
#define IEXTEN 0x00008000
@@ -206,8 +204,8 @@ struct ktermios {
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
/* tcsetattr uses these */
-#define TCSANOW 0
-#define TCSADRAIN 1
-#define TCSAFLUSH 2
+#define TCSANOW 0
+#define TCSADRAIN 1
+#define TCSAFLUSH 2
#endif /* _UAPI_SPARC_TERMBITS_H */
diff --git a/include/uapi/asm-generic/termbits.h b/include/uapi/asm-generic/termbits.h
index 78a85c326eef..c92179563289 100644
--- a/include/uapi/asm-generic/termbits.h
+++ b/include/uapi/asm-generic/termbits.h
@@ -41,30 +41,30 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0
-#define VQUIT 1
-#define VERASE 2
-#define VKILL 3
-#define VEOF 4
-#define VTIME 5
-#define VMIN 6
-#define VSWTC 7
-#define VSTART 8
-#define VSTOP 9
-#define VSUSP 10
-#define VEOL 11
-#define VREPRINT 12
-#define VDISCARD 13
-#define VWERASE 14
-#define VLNEXT 15
-#define VEOL2 16
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VTIME 5
+#define VMIN 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
+#define VSUSP 10
+#define VEOL 11
+#define VREPRINT 12
+#define VDISCARD 13
+#define VWERASE 14
+#define VLNEXT 15
+#define VEOL2 16
/* c_iflag bits */
-#define IUCLC 0x00200
-#define IXON 0x00400
-#define IXOFF 0x01000
-#define IMAXBEL 0x02000
-#define IUTF8 0x04000
+#define IUCLC 0x0200
+#define IXON 0x0400
+#define IXOFF 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
#define OLCUC 0x00002
@@ -107,22 +107,22 @@ struct ktermios {
#define HUPCL 0x00000400
#define CLOCAL 0x00000800
#define CBAUDEX 0x00001000
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B500000 0x00001005
-#define B576000 0x00001006
-#define B921600 0x00001007
-#define B1000000 0x00001008
-#define B1152000 0x00001009
-#define B1500000 0x0000100a
-#define B2000000 0x0000100b
-#define B2500000 0x0000100c
-#define B3000000 0x0000100d
-#define B3500000 0x0000100e
-#define B4000000 0x0000100f
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
+#define B500000 0x00001005
+#define B576000 0x00001006
+#define B921600 0x00001007
+#define B1000000 0x00001008
+#define B1152000 0x00001009
+#define B1500000 0x0000100a
+#define B2000000 0x0000100b
+#define B2500000 0x0000100c
+#define B3000000 0x0000100d
+#define B3500000 0x0000100e
+#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
/* c_lflag bits */
--
2.30.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/3] termbits.h: Align lines & format
@ 2022-05-09 9:34 ` Ilpo Järvinen
0 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
- Align c_cc defines.
- Remove extra newlines.
- Realign & adjust number of leading zeros.
- Reorder c_cflag defines to ascending order
- Make comment ending shorted (=remove period and one extra space from
the comments in mips).
Co-developed-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
---
arch/alpha/include/uapi/asm/termbits.h | 130 +++++++++---------
arch/mips/include/uapi/asm/termbits.h | 156 ++++++++++-----------
arch/parisc/include/uapi/asm/termbits.h | 77 +++++------
arch/powerpc/include/uapi/asm/termbits.h | 100 +++++++-------
arch/sparc/include/uapi/asm/termbits.h | 168 +++++++++++------------
include/uapi/asm-generic/termbits.h | 76 +++++-----
6 files changed, 346 insertions(+), 361 deletions(-)
diff --git a/arch/alpha/include/uapi/asm/termbits.h b/arch/alpha/include/uapi/asm/termbits.h
index 3c7a9afc4333..735e9ffe2795 100644
--- a/arch/alpha/include/uapi/asm/termbits.h
+++ b/arch/alpha/include/uapi/asm/termbits.h
@@ -53,60 +53,58 @@ struct ktermios {
};
/* c_cc characters */
-#define VEOF 0
-#define VEOL 1
-#define VEOL2 2
-#define VERASE 3
-#define VWERASE 4
-#define VKILL 5
-#define VREPRINT 6
-#define VSWTC 7
-#define VINTR 8
-#define VQUIT 9
-#define VSUSP 10
-#define VSTART 12
-#define VSTOP 13
-#define VLNEXT 14
-#define VDISCARD 15
-#define VMIN 16
-#define VTIME 17
+#define VEOF 0
+#define VEOL 1
+#define VEOL2 2
+#define VERASE 3
+#define VWERASE 4
+#define VKILL 5
+#define VREPRINT 6
+#define VSWTC 7
+#define VINTR 8
+#define VQUIT 9
+#define VSUSP 10
+#define VSTART 12
+#define VSTOP 13
+#define VLNEXT 14
+#define VDISCARD 15
+#define VMIN 16
+#define VTIME 17
/* c_iflag bits */
-#define IXON 0x00200
-#define IXOFF 0x00400
-#define IUCLC 0x01000
-#define IMAXBEL 0x02000
-#define IUTF8 0x04000
+#define IXON 0x0200
+#define IXOFF 0x0400
+#define IUCLC 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
#define ONLCR 0x00002
#define OLCUC 0x00004
-
-
-#define NLDLY 0x000300
-#define NL0 0x000000
-#define NL1 0x000100
-#define NL2 0x000200
-#define NL3 0x000300
-#define TABDLY 0x000c00
-#define TAB0 0x000000
-#define TAB1 0x000400
-#define TAB2 0x000800
-#define TAB3 0x000c00
-#define CRDLY 0x003000
-#define CR0 0x000000
-#define CR1 0x001000
-#define CR2 0x002000
-#define CR3 0x003000
-#define FFDLY 0x004000
-#define FF0 0x000000
-#define FF1 0x004000
-#define BSDLY 0x008000
-#define BS0 0x000000
-#define BS1 0x008000
-#define VTDLY 0x010000
-#define VT0 0x000000
-#define VT1 0x010000
+#define NLDLY 0x00300
+#define NL0 0x00000
+#define NL1 0x00100
+#define NL2 0x00200
+#define NL3 0x00300
+#define TABDLY 0x00c00
+#define TAB0 0x00000
+#define TAB1 0x00400
+#define TAB2 0x00800
+#define TAB3 0x00c00
+#define CRDLY 0x03000
+#define CR0 0x00000
+#define CR1 0x01000
+#define CR2 0x02000
+#define CR3 0x03000
+#define FFDLY 0x04000
+#define FF0 0x00000
+#define FF1 0x04000
+#define BSDLY 0x08000
+#define BS0 0x00000
+#define BS1 0x08000
+#define VTDLY 0x10000
+#define VT0 0x00000
+#define VT1 0x10000
/*
* Should be equivalent to TAB3, see description of TAB3 in
* POSIX.1-2008, Ch. 11.2.3 "Output Modes"
@@ -116,38 +114,34 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000001f
#define CBAUDEX 0x00000000
-#define B57600 0x00000010
-#define B115200 0x00000011
-#define B230400 0x00000012
-#define B460800 0x00000013
-#define B500000 0x00000014
-#define B576000 0x00000015
-#define B921600 0x00000016
-#define B1000000 0x00000017
-#define B1152000 0x00000018
-#define B1500000 0x00000019
-#define B2000000 0x0000001a
-#define B2500000 0x0000001b
-#define B3000000 0x0000001c
-#define B3500000 0x0000001d
-#define B4000000 0x0000001e
#define BOTHER 0x0000001f
-
+#define B57600 0x00000010
+#define B115200 0x00000011
+#define B230400 0x00000012
+#define B460800 0x00000013
+#define B500000 0x00000014
+#define B576000 0x00000015
+#define B921600 0x00000016
+#define B1000000 0x00000017
+#define B1152000 0x00000018
+#define B1500000 0x00000019
+#define B2000000 0x0000001a
+#define B2500000 0x0000001b
+#define B3000000 0x0000001c
+#define B3500000 0x0000001d
+#define B4000000 0x0000001e
#define CSIZE 0x00000300
#define CS5 0x00000000
#define CS6 0x00000100
#define CS7 0x00000200
#define CS8 0x00000300
-
#define CSTOPB 0x00000400
#define CREAD 0x00000800
#define PARENB 0x00001000
#define PARODD 0x00002000
#define HUPCL 0x00004000
-
#define CLOCAL 0x00008000
-
-#define CIBAUD 0x1f0000
+#define CIBAUD 0x001f0000
/* c_lflag bits */
#define ISIG 0x00000080
diff --git a/arch/mips/include/uapi/asm/termbits.h b/arch/mips/include/uapi/asm/termbits.h
index b33f514315ce..8fa3e79d4f94 100644
--- a/arch/mips/include/uapi/asm/termbits.h
+++ b/arch/mips/include/uapi/asm/termbits.h
@@ -15,7 +15,7 @@
#include <asm-generic/termbits-common.h>
-typedef unsigned int tcflag_t;
+typedef unsigned int tcflag_t;
/*
* The ABI says nothing about NCC but seems to use NCCS as
@@ -54,64 +54,64 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0 /* Interrupt character [ISIG]. */
-#define VQUIT 1 /* Quit character [ISIG]. */
-#define VERASE 2 /* Erase character [ICANON]. */
-#define VKILL 3 /* Kill-line character [ICANON]. */
-#define VMIN 4 /* Minimum number of bytes read at once [!ICANON]. */
-#define VTIME 5 /* Time-out value (tenths of a second) [!ICANON]. */
-#define VEOL2 6 /* Second EOL character [ICANON]. */
+#define VINTR 0 /* Interrupt character [ISIG] */
+#define VQUIT 1 /* Quit character [ISIG] */
+#define VERASE 2 /* Erase character [ICANON] */
+#define VKILL 3 /* Kill-line character [ICANON] */
+#define VMIN 4 /* Minimum number of bytes read at once [!ICANON] */
+#define VTIME 5 /* Time-out value (tenths of a second) [!ICANON] */
+#define VEOL2 6 /* Second EOL character [ICANON] */
#define VSWTC 7 /* ??? */
#define VSWTCH VSWTC
-#define VSTART 8 /* Start (X-ON) character [IXON, IXOFF]. */
-#define VSTOP 9 /* Stop (X-OFF) character [IXON, IXOFF]. */
-#define VSUSP 10 /* Suspend character [ISIG]. */
+#define VSTART 8 /* Start (X-ON) character [IXON, IXOFF] */
+#define VSTOP 9 /* Stop (X-OFF) character [IXON, IXOFF] */
+#define VSUSP 10 /* Suspend character [ISIG] */
#if 0
/*
* VDSUSP is not supported
*/
-#define VDSUSP 11 /* Delayed suspend character [ISIG]. */
+#define VDSUSP 11 /* Delayed suspend character [ISIG] */
#endif
-#define VREPRINT 12 /* Reprint-line character [ICANON]. */
-#define VDISCARD 13 /* Discard character [IEXTEN]. */
-#define VWERASE 14 /* Word-erase character [ICANON]. */
-#define VLNEXT 15 /* Literal-next character [IEXTEN]. */
-#define VEOF 16 /* End-of-file character [ICANON]. */
-#define VEOL 17 /* End-of-line character [ICANON]. */
+#define VREPRINT 12 /* Reprint-line character [ICANON] */
+#define VDISCARD 13 /* Discard character [IEXTEN] */
+#define VWERASE 14 /* Word-erase character [ICANON] */
+#define VLNEXT 15 /* Literal-next character [IEXTEN] */
+#define VEOF 16 /* End-of-file character [ICANON] */
+#define VEOL 17 /* End-of-line character [ICANON] */
/* c_iflag bits */
-#define IUCLC 0x00200 /* Map upper case to lower case on input. */
-#define IXON 0x00400 /* Enable start/stop output control. */
-#define IXOFF 0x01000 /* Enable start/stop input control. */
-#define IMAXBEL 0x02000 /* Ring bell when input queue is full. */
-#define IUTF8 0x04000 /* Input is UTF-8 */
+#define IUCLC 0x0200 /* Map upper case to lower case on input */
+#define IXON 0x0400 /* Enable start/stop output control */
+#define IXOFF 0x1000 /* Enable start/stop input control */
+#define IMAXBEL 0x2000 /* Ring bell when input queue is full */
+#define IUTF8 0x4000 /* Input is UTF-8 */
/* c_oflag bits */
-#define OLCUC 0x00002 /* Map lower case to upper case on output. */
-#define ONLCR 0x00004 /* Map NL to CR-NL on output. */
+#define OLCUC 0x00002 /* Map lower case to upper case on output */
+#define ONLCR 0x00004 /* Map NL to CR-NL on output */
#define NLDLY 0x00100
-#define NL0 0x00000
-#define NL1 0x00100
+#define NL0 0x00000
+#define NL1 0x00100
#define CRDLY 0x00600
-#define CR0 0x00000
-#define CR1 0x00200
-#define CR2 0x00400
-#define CR3 0x00600
+#define CR0 0x00000
+#define CR1 0x00200
+#define CR2 0x00400
+#define CR3 0x00600
#define TABDLY 0x01800
-#define TAB0 0x00000
-#define TAB1 0x00800
-#define TAB2 0x01000
-#define TAB3 0x01800
-#define XTABS 0x01800
+#define TAB0 0x00000
+#define TAB1 0x00800
+#define TAB2 0x01000
+#define TAB3 0x01800
+#define XTABS 0x01800
#define BSDLY 0x02000
-#define BS0 0x00000
-#define BS1 0x02000
+#define BS0 0x00000
+#define BS1 0x02000
#define VTDLY 0x04000
-#define VT0 0x00000
-#define VT1 0x04000
+#define VT0 0x00000
+#define VT1 0x04000
#define FFDLY 0x08000
-#define FF0 0x00000
-#define FF1 0x08000
+#define FF0 0x00000
+#define FF1 0x08000
/*
#define PAGEOUT ???
#define WRAP ???
@@ -120,10 +120,10 @@ struct ktermios {
/* c_cflag bit meaning */
#define CBAUD 0x0000100f
#define CSIZE 0x00000030 /* Number of bits per byte (mask) */
-#define CS5 0x00000000 /* 5 bits per byte */
-#define CS6 0x00000010 /* 6 bits per byte */
-#define CS7 0x00000020 /* 7 bits per byte */
-#define CS8 0x00000030 /* 8 bits per byte */
+#define CS5 0x00000000 /* 5 bits per byte */
+#define CS6 0x00000010 /* 6 bits per byte */
+#define CS7 0x00000020 /* 7 bits per byte */
+#define CS8 0x00000030 /* 8 bits per byte */
#define CSTOPB 0x00000040 /* Two stop bits instead of one */
#define CREAD 0x00000080 /* Enable receiver */
#define PARENB 0x00000100 /* Parity enable */
@@ -131,40 +131,40 @@ struct ktermios {
#define HUPCL 0x00000400 /* Hang up on last close */
#define CLOCAL 0x00000800 /* Ignore modem status lines */
#define CBAUDEX 0x00001000
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B500000 0x00001005
-#define B576000 0x00001006
-#define B921600 0x00001007
-#define B1000000 0x00001008
-#define B1152000 0x00001009
-#define B1500000 0x0000100a
-#define B2000000 0x0000100b
-#define B2500000 0x0000100c
-#define B3000000 0x0000100d
-#define B3500000 0x0000100e
-#define B4000000 0x0000100f
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
+#define B500000 0x00001005
+#define B576000 0x00001006
+#define B921600 0x00001007
+#define B1000000 0x00001008
+#define B1152000 0x00001009
+#define B1500000 0x0000100a
+#define B2000000 0x0000100b
+#define B2500000 0x0000100c
+#define B3000000 0x0000100d
+#define B3500000 0x0000100e
+#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
/* c_lflag bits */
-#define ISIG 0x00001 /* Enable signals. */
-#define ICANON 0x00002 /* Do erase and kill processing. */
+#define ISIG 0x00001 /* Enable signals */
+#define ICANON 0x00002 /* Do erase and kill processing */
#define XCASE 0x00004
-#define ECHO 0x00008 /* Enable echo. */
-#define ECHOE 0x00010 /* Visual erase for ERASE. */
-#define ECHOK 0x00020 /* Echo NL after KILL. */
-#define ECHONL 0x00040 /* Echo NL even if ECHO is off. */
-#define NOFLSH 0x00080 /* Disable flush after interrupt. */
-#define IEXTEN 0x00100 /* Enable DISCARD and LNEXT. */
-#define ECHOCTL 0x00200 /* Echo control characters as ^X. */
-#define ECHOPRT 0x00400 /* Hardcopy visual erase. */
-#define ECHOKE 0x00800 /* Visual erase for KILL. */
+#define ECHO 0x00008 /* Enable echo */
+#define ECHOE 0x00010 /* Visual erase for ERASE */
+#define ECHOK 0x00020 /* Echo NL after KILL */
+#define ECHONL 0x00040 /* Echo NL even if ECHO is off */
+#define NOFLSH 0x00080 /* Disable flush after interrupt */
+#define IEXTEN 0x00100 /* Enable DISCARD and LNEXT */
+#define ECHOCTL 0x00200 /* Echo control characters as ^X */
+#define ECHOPRT 0x00400 /* Hardcopy visual erase */
+#define ECHOKE 0x00800 /* Visual erase for KILL */
#define FLUSHO 0x02000
-#define PENDIN 0x04000 /* Retype pending input (state). */
-#define TOSTOP 0x08000 /* Send SIGTTOU for background output. */
+#define PENDIN 0x04000 /* Retype pending input (state) */
+#define TOSTOP 0x08000 /* Send SIGTTOU for background output */
#define ITOSTOP TOSTOP
#define EXTPROC 0x10000 /* External processing on pty */
@@ -172,8 +172,8 @@ struct ktermios {
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
/* tcsetattr uses these */
-#define TCSANOW TCSETS /* Change immediately. */
-#define TCSADRAIN TCSETSW /* Change when pending output is written. */
-#define TCSAFLUSH TCSETSF /* Flush pending input before changing. */
+#define TCSANOW TCSETS /* Change immediately */
+#define TCSADRAIN TCSETSW /* Change when pending output is written */
+#define TCSAFLUSH TCSETSF /* Flush pending input before changing */
#endif /* _ASM_TERMBITS_H */
diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
index 7f74a822b7ea..d72c5ebf3a3a 100644
--- a/arch/parisc/include/uapi/asm/termbits.h
+++ b/arch/parisc/include/uapi/asm/termbits.h
@@ -41,31 +41,30 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0
-#define VQUIT 1
-#define VERASE 2
-#define VKILL 3
-#define VEOF 4
-#define VTIME 5
-#define VMIN 6
-#define VSWTC 7
-#define VSTART 8
-#define VSTOP 9
-#define VSUSP 10
-#define VEOL 11
-#define VREPRINT 12
-#define VDISCARD 13
-#define VWERASE 14
-#define VLNEXT 15
-#define VEOL2 16
-
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VTIME 5
+#define VMIN 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
+#define VSUSP 10
+#define VEOL 11
+#define VREPRINT 12
+#define VDISCARD 13
+#define VWERASE 14
+#define VLNEXT 15
+#define VEOL2 16
/* c_iflag bits */
-#define IUCLC 0x00200
-#define IXON 0x00400
-#define IXOFF 0x01000
-#define IMAXBEL 0x04000
-#define IUTF8 0x08000
+#define IUCLC 0x0200
+#define IXON 0x0400
+#define IXOFF 0x1000
+#define IMAXBEL 0x4000
+#define IUTF8 0x8000
/* c_oflag bits */
#define OLCUC 0x00002
@@ -108,22 +107,22 @@ struct ktermios {
#define HUPCL 0x00000400
#define CLOCAL 0x00000800
#define CBAUDEX 0x00001000
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B500000 0x00001005
-#define B576000 0x00001006
-#define B921600 0x00001007
-#define B1000000 0x00001008
-#define B1152000 0x00001009
-#define B1500000 0x0000100a
-#define B2000000 0x0000100b
-#define B2500000 0x0000100c
-#define B3000000 0x0000100d
-#define B3500000 0x0000100e
-#define B4000000 0x0000100f
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
+#define B500000 0x00001005
+#define B576000 0x00001006
+#define B921600 0x00001007
+#define B1000000 0x00001008
+#define B1152000 0x00001009
+#define B1500000 0x0000100a
+#define B2000000 0x0000100b
+#define B2500000 0x0000100c
+#define B3000000 0x0000100d
+#define B3500000 0x0000100e
+#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
/* c_lflag bits */
diff --git a/arch/powerpc/include/uapi/asm/termbits.h b/arch/powerpc/include/uapi/asm/termbits.h
index 19d1350a80bb..21dc86dcb2f1 100644
--- a/arch/powerpc/include/uapi/asm/termbits.h
+++ b/arch/powerpc/include/uapi/asm/termbits.h
@@ -64,78 +64,72 @@ struct ktermios {
#define VDISCARD 16
/* c_iflag bits */
-#define IXON 0x00200
-#define IXOFF 0x00400
-#define IUCLC 0x01000
-#define IMAXBEL 0x02000
-#define IUTF8 0x04000
+#define IXON 0x0200
+#define IXOFF 0x0400
+#define IUCLC 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
#define ONLCR 0x00002
#define OLCUC 0x00004
-
-
-#define NLDLY 0x000300
-#define NL0 0x000000
-#define NL1 0x000100
-#define NL2 0x000200
-#define NL3 0x000300
-#define TABDLY 0x000c00
-#define TAB0 0x000000
-#define TAB1 0x000400
-#define TAB2 0x000800
-#define TAB3 0x000c00
-#define XTABS 0x000c00 /* required by POSIX to == TAB3 */
-#define CRDLY 0x003000
-#define CR0 0x000000
-#define CR1 0x001000
-#define CR2 0x002000
-#define CR3 0x003000
-#define FFDLY 0x004000
-#define FF0 0x000000
-#define FF1 0x004000
-#define BSDLY 0x008000
-#define BS0 0x000000
-#define BS1 0x008000
-#define VTDLY 0x010000
-#define VT0 0x000000
-#define VT1 0x010000
+#define NLDLY 0x00300
+#define NL0 0x00000
+#define NL1 0x00100
+#define NL2 0x00200
+#define NL3 0x00300
+#define TABDLY 0x00c00
+#define TAB0 0x00000
+#define TAB1 0x00400
+#define TAB2 0x00800
+#define TAB3 0x00c00
+#define XTABS 0x00c00 /* required by POSIX to == TAB3 */
+#define CRDLY 0x03000
+#define CR0 0x00000
+#define CR1 0x01000
+#define CR2 0x02000
+#define CR3 0x03000
+#define FFDLY 0x04000
+#define FF0 0x00000
+#define FF1 0x04000
+#define BSDLY 0x08000
+#define BS0 0x00000
+#define BS1 0x08000
+#define VTDLY 0x10000
+#define VT0 0x00000
+#define VT1 0x10000
/* c_cflag bit meaning */
#define CBAUD 0x000000ff
#define CBAUDEX 0x00000000
-#define B57600 0x00000010
-#define B115200 0x00000011
-#define B230400 0x00000012
-#define B460800 0x00000013
-#define B500000 0x00000014
-#define B576000 0x00000015
-#define B921600 0x00000016
-#define B1000000 0x00000017
-#define B1152000 0x00000018
-#define B1500000 0x00000019
-#define B2000000 0x0000001a
-#define B2500000 0x0000001b
-#define B3000000 0x0000001c
-#define B3500000 0x0000001d
-#define B4000000 0x0000001e
-#define BOTHER 0x0000001f
-
-#define CIBAUD 0x00ff0000
-
+#define BOTHER 0x0000001f
+#define B57600 0x00000010
+#define B115200 0x00000011
+#define B230400 0x00000012
+#define B460800 0x00000013
+#define B500000 0x00000014
+#define B576000 0x00000015
+#define B921600 0x00000016
+#define B1000000 0x00000017
+#define B1152000 0x00000018
+#define B1500000 0x00000019
+#define B2000000 0x0000001a
+#define B2500000 0x0000001b
+#define B3000000 0x0000001c
+#define B3500000 0x0000001d
+#define B4000000 0x0000001e
#define CSIZE 0x00000300
#define CS5 0x00000000
#define CS6 0x00000100
#define CS7 0x00000200
#define CS8 0x00000300
-
#define CSTOPB 0x00000400
#define CREAD 0x00000800
#define PARENB 0x00001000
#define PARODD 0x00002000
#define HUPCL 0x00004000
-
#define CLOCAL 0x00008000
+#define CIBAUD 0x00ff0000
/* c_lflag bits */
#define ISIG 0x00000080
diff --git a/arch/sparc/include/uapi/asm/termbits.h b/arch/sparc/include/uapi/asm/termbits.h
index 854bdd153cca..cfcc4e07ce51 100644
--- a/arch/sparc/include/uapi/asm/termbits.h
+++ b/arch/sparc/include/uapi/asm/termbits.h
@@ -7,9 +7,9 @@
#include <asm-generic/termbits-common.h>
#if defined(__sparc__) && defined(__arch64__)
-typedef unsigned int tcflag_t;
+typedef unsigned int tcflag_t;
#else
-typedef unsigned long tcflag_t;
+typedef unsigned long tcflag_t;
#endif
#define NCC 8
@@ -60,21 +60,19 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0
-#define VQUIT 1
-#define VERASE 2
-#define VKILL 3
-#define VEOF 4
-#define VEOL 5
-#define VEOL2 6
-#define VSWTC 7
-#define VSTART 8
-#define VSTOP 9
-
-
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VEOL 5
+#define VEOL2 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
#define VSUSP 10
-#define VDSUSP 11 /* SunOS POSIX nicety I do believe... */
+#define VDSUSP 11 /* SunOS POSIX nicety I do believe... */
#define VREPRINT 12
#define VDISCARD 13
#define VWERASE 14
@@ -89,83 +87,83 @@ struct ktermios {
#endif
/* c_iflag bits */
-#define IUCLC 0x00000200
-#define IXON 0x00000400
-#define IXOFF 0x00001000
-#define IMAXBEL 0x00002000
-#define IUTF8 0x00004000
+#define IUCLC 0x0200
+#define IXON 0x0400
+#define IXOFF 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
-#define OLCUC 0x00000002
-#define ONLCR 0x00000004
-#define NLDLY 0x00000100
-#define NL0 0x00000000
-#define NL1 0x00000100
-#define CRDLY 0x00000600
-#define CR0 0x00000000
-#define CR1 0x00000200
-#define CR2 0x00000400
-#define CR3 0x00000600
-#define TABDLY 0x00001800
-#define TAB0 0x00000000
-#define TAB1 0x00000800
-#define TAB2 0x00001000
-#define TAB3 0x00001800
-#define XTABS 0x00001800
-#define BSDLY 0x00002000
-#define BS0 0x00000000
-#define BS1 0x00002000
-#define VTDLY 0x00004000
-#define VT0 0x00000000
-#define VT1 0x00004000
-#define FFDLY 0x00008000
-#define FF0 0x00000000
-#define FF1 0x00008000
-#define PAGEOUT 0x00010000 /* SUNOS specific */
-#define WRAP 0x00020000 /* SUNOS specific */
+#define OLCUC 0x00002
+#define ONLCR 0x00004
+#define NLDLY 0x00100
+#define NL0 0x00000
+#define NL1 0x00100
+#define CRDLY 0x00600
+#define CR0 0x00000
+#define CR1 0x00200
+#define CR2 0x00400
+#define CR3 0x00600
+#define TABDLY 0x01800
+#define TAB0 0x00000
+#define TAB1 0x00800
+#define TAB2 0x01000
+#define TAB3 0x01800
+#define XTABS 0x01800
+#define BSDLY 0x02000
+#define BS0 0x00000
+#define BS1 0x02000
+#define VTDLY 0x04000
+#define VT0 0x00000
+#define VT1 0x04000
+#define FFDLY 0x08000
+#define FF0 0x00000
+#define FF1 0x08000
+#define PAGEOUT 0x10000 /* SUNOS specific */
+#define WRAP 0x20000 /* SUNOS specific */
/* c_cflag bit meaning */
-#define CBAUD 0x0000100f
-#define CSIZE 0x00000030
-#define CS5 0x00000000
-#define CS6 0x00000010
-#define CS7 0x00000020
-#define CS8 0x00000030
-#define CSTOPB 0x00000040
-#define CREAD 0x00000080
-#define PARENB 0x00000100
-#define PARODD 0x00000200
-#define HUPCL 0x00000400
-#define CLOCAL 0x00000800
-#define CBAUDEX 0x00001000
+#define CBAUD 0x0000100f
+#define CSIZE 0x00000030
+#define CS5 0x00000000
+#define CS6 0x00000010
+#define CS7 0x00000020
+#define CS8 0x00000030
+#define CSTOPB 0x00000040
+#define CREAD 0x00000080
+#define PARENB 0x00000100
+#define PARODD 0x00000200
+#define HUPCL 0x00000400
+#define CLOCAL 0x00000800
+#define CBAUDEX 0x00001000
/* We'll never see these speeds with the Zilogs, but for completeness... */
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
/* This is what we can do with the Zilogs. */
-#define B76800 0x00001005
+#define B76800 0x00001005
/* This is what we can do with the SAB82532. */
-#define B153600 0x00001006
-#define B307200 0x00001007
-#define B614400 0x00001008
-#define B921600 0x00001009
+#define B153600 0x00001006
+#define B307200 0x00001007
+#define B614400 0x00001008
+#define B921600 0x00001009
/* And these are the rest... */
-#define B500000 0x0000100a
-#define B576000 0x0000100b
-#define B1000000 0x0000100c
-#define B1152000 0x0000100d
-#define B1500000 0x0000100e
-#define B2000000 0x0000100f
+#define B500000 0x0000100a
+#define B576000 0x0000100b
+#define B1000000 0x0000100c
+#define B1152000 0x0000100d
+#define B1500000 0x0000100e
+#define B2000000 0x0000100f
/* These have totally bogus values and nobody uses them
so far. Later on we'd have to use say 0x10000x and
adjust CBAUD constant and drivers accordingly.
-#define B2500000 0x00001010
-#define B3000000 0x00001011
-#define B3500000 0x00001012
-#define B4000000 0x00001013 */
-#define CIBAUD 0x100f0000 /* input baud rate (not used) */
+#define B2500000 0x00001010
+#define B3000000 0x00001011
+#define B3500000 0x00001012
+#define B4000000 0x00001013 */
+#define CIBAUD 0x100f0000 /* input baud rate (not used) */
/* c_lflag bits */
#define ISIG 0x00000001
@@ -180,7 +178,7 @@ struct ktermios {
#define ECHOCTL 0x00000200
#define ECHOPRT 0x00000400
#define ECHOKE 0x00000800
-#define DEFECHO 0x00001000 /* SUNOS thing, what is it? */
+#define DEFECHO 0x00001000 /* SUNOS thing, what is it? */
#define FLUSHO 0x00002000
#define PENDIN 0x00004000
#define IEXTEN 0x00008000
@@ -206,8 +204,8 @@ struct ktermios {
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
/* tcsetattr uses these */
-#define TCSANOW 0
-#define TCSADRAIN 1
-#define TCSAFLUSH 2
+#define TCSANOW 0
+#define TCSADRAIN 1
+#define TCSAFLUSH 2
#endif /* _UAPI_SPARC_TERMBITS_H */
diff --git a/include/uapi/asm-generic/termbits.h b/include/uapi/asm-generic/termbits.h
index 78a85c326eef..c92179563289 100644
--- a/include/uapi/asm-generic/termbits.h
+++ b/include/uapi/asm-generic/termbits.h
@@ -41,30 +41,30 @@ struct ktermios {
};
/* c_cc characters */
-#define VINTR 0
-#define VQUIT 1
-#define VERASE 2
-#define VKILL 3
-#define VEOF 4
-#define VTIME 5
-#define VMIN 6
-#define VSWTC 7
-#define VSTART 8
-#define VSTOP 9
-#define VSUSP 10
-#define VEOL 11
-#define VREPRINT 12
-#define VDISCARD 13
-#define VWERASE 14
-#define VLNEXT 15
-#define VEOL2 16
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VTIME 5
+#define VMIN 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
+#define VSUSP 10
+#define VEOL 11
+#define VREPRINT 12
+#define VDISCARD 13
+#define VWERASE 14
+#define VLNEXT 15
+#define VEOL2 16
/* c_iflag bits */
-#define IUCLC 0x00200
-#define IXON 0x00400
-#define IXOFF 0x01000
-#define IMAXBEL 0x02000
-#define IUTF8 0x04000
+#define IUCLC 0x0200
+#define IXON 0x0400
+#define IXOFF 0x1000
+#define IMAXBEL 0x2000
+#define IUTF8 0x4000
/* c_oflag bits */
#define OLCUC 0x00002
@@ -107,22 +107,22 @@ struct ktermios {
#define HUPCL 0x00000400
#define CLOCAL 0x00000800
#define CBAUDEX 0x00001000
-#define BOTHER 0x00001000
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B500000 0x00001005
-#define B576000 0x00001006
-#define B921600 0x00001007
-#define B1000000 0x00001008
-#define B1152000 0x00001009
-#define B1500000 0x0000100a
-#define B2000000 0x0000100b
-#define B2500000 0x0000100c
-#define B3000000 0x0000100d
-#define B3500000 0x0000100e
-#define B4000000 0x0000100f
+#define BOTHER 0x00001000
+#define B57600 0x00001001
+#define B115200 0x00001002
+#define B230400 0x00001003
+#define B460800 0x00001004
+#define B500000 0x00001005
+#define B576000 0x00001006
+#define B921600 0x00001007
+#define B1000000 0x00001008
+#define B1152000 0x00001009
+#define B1500000 0x0000100a
+#define B2000000 0x0000100b
+#define B2500000 0x0000100c
+#define B3000000 0x0000100d
+#define B3500000 0x0000100e
+#define B4000000 0x0000100f
#define CIBAUD 0x100f0000 /* input baud rate */
/* c_lflag bits */
--
2.30.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/3] termbits.h: Remove posix_types.h include
2022-05-09 9:34 ` Ilpo Järvinen
@ 2022-05-09 9:34 ` Ilpo Järvinen
-1 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
Nothing in termbits seems to require anything from linux/posix_types.h.
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
---
arch/alpha/include/uapi/asm/termbits.h | 2 --
arch/mips/include/uapi/asm/termbits.h | 2 --
arch/parisc/include/uapi/asm/termbits.h | 2 --
arch/sparc/include/uapi/asm/termbits.h | 2 --
include/uapi/asm-generic/termbits.h | 2 --
5 files changed, 10 deletions(-)
diff --git a/arch/alpha/include/uapi/asm/termbits.h b/arch/alpha/include/uapi/asm/termbits.h
index 735e9ffe2795..f1290b22072b 100644
--- a/arch/alpha/include/uapi/asm/termbits.h
+++ b/arch/alpha/include/uapi/asm/termbits.h
@@ -2,8 +2,6 @@
#ifndef _ALPHA_TERMBITS_H
#define _ALPHA_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
diff --git a/arch/mips/include/uapi/asm/termbits.h b/arch/mips/include/uapi/asm/termbits.h
index 8fa3e79d4f94..1eb60903d6f0 100644
--- a/arch/mips/include/uapi/asm/termbits.h
+++ b/arch/mips/include/uapi/asm/termbits.h
@@ -11,8 +11,6 @@
#ifndef _ASM_TERMBITS_H
#define _ASM_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
index d72c5ebf3a3a..3a8938d26fb4 100644
--- a/arch/parisc/include/uapi/asm/termbits.h
+++ b/arch/parisc/include/uapi/asm/termbits.h
@@ -2,8 +2,6 @@
#ifndef __ARCH_PARISC_TERMBITS_H__
#define __ARCH_PARISC_TERMBITS_H__
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
diff --git a/arch/sparc/include/uapi/asm/termbits.h b/arch/sparc/include/uapi/asm/termbits.h
index cfcc4e07ce51..4321322701fc 100644
--- a/arch/sparc/include/uapi/asm/termbits.h
+++ b/arch/sparc/include/uapi/asm/termbits.h
@@ -2,8 +2,6 @@
#ifndef _UAPI_SPARC_TERMBITS_H
#define _UAPI_SPARC_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
#if defined(__sparc__) && defined(__arch64__)
diff --git a/include/uapi/asm-generic/termbits.h b/include/uapi/asm-generic/termbits.h
index c92179563289..890ef29053e2 100644
--- a/include/uapi/asm-generic/termbits.h
+++ b/include/uapi/asm-generic/termbits.h
@@ -2,8 +2,6 @@
#ifndef __ASM_GENERIC_TERMBITS_H
#define __ASM_GENERIC_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
--
2.30.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/3] termbits.h: Remove posix_types.h include
@ 2022-05-09 9:34 ` Ilpo Järvinen
0 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 9:34 UTC (permalink / raw)
To: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Helge Deller,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Cc: Ilpo Järvinen
Nothing in termbits seems to require anything from linux/posix_types.h.
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
---
arch/alpha/include/uapi/asm/termbits.h | 2 --
arch/mips/include/uapi/asm/termbits.h | 2 --
arch/parisc/include/uapi/asm/termbits.h | 2 --
arch/sparc/include/uapi/asm/termbits.h | 2 --
include/uapi/asm-generic/termbits.h | 2 --
5 files changed, 10 deletions(-)
diff --git a/arch/alpha/include/uapi/asm/termbits.h b/arch/alpha/include/uapi/asm/termbits.h
index 735e9ffe2795..f1290b22072b 100644
--- a/arch/alpha/include/uapi/asm/termbits.h
+++ b/arch/alpha/include/uapi/asm/termbits.h
@@ -2,8 +2,6 @@
#ifndef _ALPHA_TERMBITS_H
#define _ALPHA_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
diff --git a/arch/mips/include/uapi/asm/termbits.h b/arch/mips/include/uapi/asm/termbits.h
index 8fa3e79d4f94..1eb60903d6f0 100644
--- a/arch/mips/include/uapi/asm/termbits.h
+++ b/arch/mips/include/uapi/asm/termbits.h
@@ -11,8 +11,6 @@
#ifndef _ASM_TERMBITS_H
#define _ASM_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
index d72c5ebf3a3a..3a8938d26fb4 100644
--- a/arch/parisc/include/uapi/asm/termbits.h
+++ b/arch/parisc/include/uapi/asm/termbits.h
@@ -2,8 +2,6 @@
#ifndef __ARCH_PARISC_TERMBITS_H__
#define __ARCH_PARISC_TERMBITS_H__
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
diff --git a/arch/sparc/include/uapi/asm/termbits.h b/arch/sparc/include/uapi/asm/termbits.h
index cfcc4e07ce51..4321322701fc 100644
--- a/arch/sparc/include/uapi/asm/termbits.h
+++ b/arch/sparc/include/uapi/asm/termbits.h
@@ -2,8 +2,6 @@
#ifndef _UAPI_SPARC_TERMBITS_H
#define _UAPI_SPARC_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
#if defined(__sparc__) && defined(__arch64__)
diff --git a/include/uapi/asm-generic/termbits.h b/include/uapi/asm-generic/termbits.h
index c92179563289..890ef29053e2 100644
--- a/include/uapi/asm-generic/termbits.h
+++ b/include/uapi/asm-generic/termbits.h
@@ -2,8 +2,6 @@
#ifndef __ASM_GENERIC_TERMBITS_H
#define __ASM_GENERIC_TERMBITS_H
-#include <linux/posix_types.h>
-
#include <asm-generic/termbits-common.h>
typedef unsigned int tcflag_t;
--
2.30.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] termbits.h: create termbits-common.h for identical bits
2022-05-09 9:34 ` Ilpo Järvinen
@ 2022-05-09 10:50 ` Helge Deller
-1 siblings, 0 replies; 12+ messages in thread
From: Helge Deller @ 2022-05-09 10:50 UTC (permalink / raw)
To: Ilpo Järvinen, linux-serial, Greg KH, Ivan Kokshaysky,
Matt Turner, Thomas Bogendoerfer, James E.J. Bottomley,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Hello Ilpo,
On 5/9/22 11:34, Ilpo Järvinen wrote:
> Some defines are the same across all archs. Move the most obvious
> intersection to termbits-common.h.
I like your cleanup patches, but in this specific one, does it makes sense
to split up together-belonging constants, e.g.
> diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
> index 6017ee08f099..7f74a822b7ea 100644
> --- a/arch/parisc/include/uapi/asm/termbits.h
> +++ b/arch/parisc/include/uapi/asm/termbits.h
> @@ -61,31 +61,15 @@ struct ktermios {
>
>
> /* c_iflag bits */
> -#define IGNBRK 0x00001
> -#define BRKINT 0x00002
> -#define IGNPAR 0x00004
> -#define PARMRK 0x00008
> -#define INPCK 0x00010
> -#define ISTRIP 0x00020
> -#define INLCR 0x00040
> -#define IGNCR 0x00080
> -#define ICRNL 0x00100
> #define IUCLC 0x00200
> #define IXON 0x00400
> -#define IXANY 0x00800
> #define IXOFF 0x01000
> #define IMAXBEL 0x04000
> #define IUTF8 0x08000
In the hunk above you leave IUCLC, IXON, IXOFF... because they seem unique to parisc.
The other defines are then taken from generic header.
Although this is correct, it leaves single values alone, which make it hard to verify
because you don't see the full list of values in one place.
> @@ -112,24 +96,6 @@ struct ktermios {
>
> /* c_cflag bit meaning */
> #define CBAUD 0x0000100f
> -#define B0 0x00000000 /* hang up */
> -#define B50 0x00000001
> -#define B75 0x00000002
> -#define B110 0x00000003
> -#define B134 0x00000004
> -#define B150 0x00000005
> -#define B200 0x00000006
> -#define B300 0x00000007
> -#define B600 0x00000008
> -#define B1200 0x00000009
> -#define B1800 0x0000000a
> -#define B2400 0x0000000b
> -#define B4800 0x0000000c
> -#define B9600 0x0000000d
> -#define B19200 0x0000000e
> -#define B38400 0x0000000f
> -#define EXTA B19200
> -#define EXTB B38400
Here all baud values are dropped and will be taken from generic header, which is good.
That said, I think it's good to move away the second hunk,
but maybe we should keep the first as is?
It's just a thought. Either way, I'm fine your patch if that's the
way which is decided to go for all platforms.
Helge
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] termbits.h: create termbits-common.h for identical bits
@ 2022-05-09 10:50 ` Helge Deller
0 siblings, 0 replies; 12+ messages in thread
From: Helge Deller @ 2022-05-09 10:50 UTC (permalink / raw)
To: Ilpo Järvinen, linux-serial, Greg KH, Ivan Kokshaysky,
Matt Turner, Thomas Bogendoerfer, James E.J. Bottomley,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
David S. Miller, Arnd Bergmann, linux-alpha, linux-kernel,
linux-mips, linux-parisc, linuxppc-dev, sparclinux, linux-arch
Hello Ilpo,
On 5/9/22 11:34, Ilpo Järvinen wrote:
> Some defines are the same across all archs. Move the most obvious
> intersection to termbits-common.h.
I like your cleanup patches, but in this specific one, does it makes sense
to split up together-belonging constants, e.g.
> diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
> index 6017ee08f099..7f74a822b7ea 100644
> --- a/arch/parisc/include/uapi/asm/termbits.h
> +++ b/arch/parisc/include/uapi/asm/termbits.h
> @@ -61,31 +61,15 @@ struct ktermios {
>
>
> /* c_iflag bits */
> -#define IGNBRK 0x00001
> -#define BRKINT 0x00002
> -#define IGNPAR 0x00004
> -#define PARMRK 0x00008
> -#define INPCK 0x00010
> -#define ISTRIP 0x00020
> -#define INLCR 0x00040
> -#define IGNCR 0x00080
> -#define ICRNL 0x00100
> #define IUCLC 0x00200
> #define IXON 0x00400
> -#define IXANY 0x00800
> #define IXOFF 0x01000
> #define IMAXBEL 0x04000
> #define IUTF8 0x08000
In the hunk above you leave IUCLC, IXON, IXOFF... because they seem unique to parisc.
The other defines are then taken from generic header.
Although this is correct, it leaves single values alone, which make it hard to verify
because you don't see the full list of values in one place.
> @@ -112,24 +96,6 @@ struct ktermios {
>
> /* c_cflag bit meaning */
> #define CBAUD 0x0000100f
> -#define B0 0x00000000 /* hang up */
> -#define B50 0x00000001
> -#define B75 0x00000002
> -#define B110 0x00000003
> -#define B134 0x00000004
> -#define B150 0x00000005
> -#define B200 0x00000006
> -#define B300 0x00000007
> -#define B600 0x00000008
> -#define B1200 0x00000009
> -#define B1800 0x0000000a
> -#define B2400 0x0000000b
> -#define B4800 0x0000000c
> -#define B9600 0x0000000d
> -#define B19200 0x0000000e
> -#define B38400 0x0000000f
> -#define EXTA B19200
> -#define EXTB B38400
Here all baud values are dropped and will be taken from generic header, which is good.
That said, I think it's good to move away the second hunk,
but maybe we should keep the first as is?
It's just a thought. Either way, I'm fine your patch if that's the
way which is decided to go for all platforms.
Helge
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] termbits.h: create termbits-common.h for identical bits
2022-05-09 10:50 ` Helge Deller
@ 2022-05-09 11:42 ` Ilpo Järvinen
-1 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 11:42 UTC (permalink / raw)
To: Helge Deller
Cc: linux-serial, Greg KH, Ivan Kokshaysky, Matt Turner,
Thomas Bogendoerfer, James E.J. Bottomley, Michael Ellerman,
Benjamin Herrenschmidt, Paul Mackerras, David S. Miller,
Arnd Bergmann, linux-alpha, LKML, linux-mips, linux-parisc,
linuxppc-dev, sparclinux, linux-arch
[-- Attachment #1: Type: text/plain, Size: 3788 bytes --]
On Mon, 9 May 2022, Helge Deller wrote:
> Hello Ilpo,
>
> On 5/9/22 11:34, Ilpo Järvinen wrote:
> > Some defines are the same across all archs. Move the most obvious
> > intersection to termbits-common.h.
>
> I like your cleanup patches, but in this specific one, does it makes sense
> to split up together-belonging constants, e.g.
>
> > diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
> > index 6017ee08f099..7f74a822b7ea 100644
> > --- a/arch/parisc/include/uapi/asm/termbits.h
> > +++ b/arch/parisc/include/uapi/asm/termbits.h
> > @@ -61,31 +61,15 @@ struct ktermios {
> >
> >
> > /* c_iflag bits */
> > -#define IGNBRK 0x00001
> > -#define BRKINT 0x00002
> > -#define IGNPAR 0x00004
> > -#define PARMRK 0x00008
> > -#define INPCK 0x00010
> > -#define ISTRIP 0x00020
> > -#define INLCR 0x00040
> > -#define IGNCR 0x00080
> > -#define ICRNL 0x00100
> > #define IUCLC 0x00200
> > #define IXON 0x00400
> > -#define IXANY 0x00800
> > #define IXOFF 0x01000
> > #define IMAXBEL 0x04000
> > #define IUTF8 0x08000
>
> In the hunk above you leave IUCLC, IXON, IXOFF... because they seem unique to parisc.
> The other defines are then taken from generic header.
> Although this is correct, it leaves single values alone, which make it hard to verify
> because you don't see the full list of values in one place.
While I too am fine either way, I don't think these are as strongly
grouped as you seem to imply. There's no big advantage in having as much
as possible within the same file. If somebody is looking for the meaning
of these, these headers are no match when compared e.g. with stty manpage.
For c_iflag, the break, parity and cr related "groups" within c_iflag are
moving completely to common header.
IXANY is probably only one close to borderline whether it kind of belongs
to the same group as IXON/IXOFF (which both by chance both remained on the
same side in the split). I don't think it does strongly enough to warrant
keeping them next to each other but I'm open what opinions others have on
it.
The rest in c_iflag don't seem to be strongly tied/grouped to the other
defines within c_iflag. They're just bits that appear next/close to each
other but are not tied by any significant meaning-based connection.
C_oflag is more messy. I exercised grouping based judgement with c_oflag
where only the defines with all bits as zero would have moved to the
common header breaking the groups very badly. That is, only CR0 would have
moved and CR1-3 remained in arch headers, etc. which made no sense to do.
One could argue, that since ONLCR (and perhaps CRDLY) are not moving, no
other cr related defines should move either.
> > @@ -112,24 +96,6 @@ struct ktermios {
> >
> > /* c_cflag bit meaning */
> > #define CBAUD 0x0000100f
> > -#define B0 0x00000000 /* hang up */
> > -#define B50 0x00000001
> > -#define B75 0x00000002
> > -#define B110 0x00000003
> > -#define B134 0x00000004
> > -#define B150 0x00000005
> > -#define B200 0x00000006
> > -#define B300 0x00000007
> > -#define B600 0x00000008
> > -#define B1200 0x00000009
> > -#define B1800 0x0000000a
> > -#define B2400 0x0000000b
> > -#define B4800 0x0000000c
> > -#define B9600 0x0000000d
> > -#define B19200 0x0000000e
> > -#define B38400 0x0000000f
> > -#define EXTA B19200
> > -#define EXTB B38400
>
> Here all baud values are dropped and will be taken from generic header,
> which is good.
>
> That said, I think it's good to move away the second hunk,
> but maybe we should keep the first as is?
>
> It's just a thought. Either way, I'm fine your patch if that's the
> way which is decided to go for all platforms.
Yes, lets wait and see what the others think.
Thanks for taking a look!
--
i.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] termbits.h: create termbits-common.h for identical bits
@ 2022-05-09 11:42 ` Ilpo Järvinen
0 siblings, 0 replies; 12+ messages in thread
From: Ilpo Järvinen @ 2022-05-09 11:42 UTC (permalink / raw)
To: Helge Deller
Cc: linux-arch, Thomas Bogendoerfer, linux-parisc, Arnd Bergmann,
Greg KH, linux-alpha, LKML, linux-mips, James E.J. Bottomley,
Ivan Kokshaysky, linux-serial, sparclinux, Paul Mackerras,
Matt Turner, linuxppc-dev, David S. Miller
[-- Attachment #1: Type: text/plain, Size: 3788 bytes --]
On Mon, 9 May 2022, Helge Deller wrote:
> Hello Ilpo,
>
> On 5/9/22 11:34, Ilpo Järvinen wrote:
> > Some defines are the same across all archs. Move the most obvious
> > intersection to termbits-common.h.
>
> I like your cleanup patches, but in this specific one, does it makes sense
> to split up together-belonging constants, e.g.
>
> > diff --git a/arch/parisc/include/uapi/asm/termbits.h b/arch/parisc/include/uapi/asm/termbits.h
> > index 6017ee08f099..7f74a822b7ea 100644
> > --- a/arch/parisc/include/uapi/asm/termbits.h
> > +++ b/arch/parisc/include/uapi/asm/termbits.h
> > @@ -61,31 +61,15 @@ struct ktermios {
> >
> >
> > /* c_iflag bits */
> > -#define IGNBRK 0x00001
> > -#define BRKINT 0x00002
> > -#define IGNPAR 0x00004
> > -#define PARMRK 0x00008
> > -#define INPCK 0x00010
> > -#define ISTRIP 0x00020
> > -#define INLCR 0x00040
> > -#define IGNCR 0x00080
> > -#define ICRNL 0x00100
> > #define IUCLC 0x00200
> > #define IXON 0x00400
> > -#define IXANY 0x00800
> > #define IXOFF 0x01000
> > #define IMAXBEL 0x04000
> > #define IUTF8 0x08000
>
> In the hunk above you leave IUCLC, IXON, IXOFF... because they seem unique to parisc.
> The other defines are then taken from generic header.
> Although this is correct, it leaves single values alone, which make it hard to verify
> because you don't see the full list of values in one place.
While I too am fine either way, I don't think these are as strongly
grouped as you seem to imply. There's no big advantage in having as much
as possible within the same file. If somebody is looking for the meaning
of these, these headers are no match when compared e.g. with stty manpage.
For c_iflag, the break, parity and cr related "groups" within c_iflag are
moving completely to common header.
IXANY is probably only one close to borderline whether it kind of belongs
to the same group as IXON/IXOFF (which both by chance both remained on the
same side in the split). I don't think it does strongly enough to warrant
keeping them next to each other but I'm open what opinions others have on
it.
The rest in c_iflag don't seem to be strongly tied/grouped to the other
defines within c_iflag. They're just bits that appear next/close to each
other but are not tied by any significant meaning-based connection.
C_oflag is more messy. I exercised grouping based judgement with c_oflag
where only the defines with all bits as zero would have moved to the
common header breaking the groups very badly. That is, only CR0 would have
moved and CR1-3 remained in arch headers, etc. which made no sense to do.
One could argue, that since ONLCR (and perhaps CRDLY) are not moving, no
other cr related defines should move either.
> > @@ -112,24 +96,6 @@ struct ktermios {
> >
> > /* c_cflag bit meaning */
> > #define CBAUD 0x0000100f
> > -#define B0 0x00000000 /* hang up */
> > -#define B50 0x00000001
> > -#define B75 0x00000002
> > -#define B110 0x00000003
> > -#define B134 0x00000004
> > -#define B150 0x00000005
> > -#define B200 0x00000006
> > -#define B300 0x00000007
> > -#define B600 0x00000008
> > -#define B1200 0x00000009
> > -#define B1800 0x0000000a
> > -#define B2400 0x0000000b
> > -#define B4800 0x0000000c
> > -#define B9600 0x0000000d
> > -#define B19200 0x0000000e
> > -#define B38400 0x0000000f
> > -#define EXTA B19200
> > -#define EXTB B38400
>
> Here all baud values are dropped and will be taken from generic header,
> which is good.
>
> That said, I think it's good to move away the second hunk,
> but maybe we should keep the first as is?
>
> It's just a thought. Either way, I'm fine your patch if that's the
> way which is decided to go for all platforms.
Yes, lets wait and see what the others think.
Thanks for taking a look!
--
i.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2022-05-09 11:44 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-09 9:34 [PATCH 0/3] termbits.h: Further improvements Ilpo Järvinen
2022-05-09 9:34 ` Ilpo Järvinen
2022-05-09 9:34 ` [PATCH 1/3] termbits.h: create termbits-common.h for identical bits Ilpo Järvinen
2022-05-09 9:34 ` Ilpo Järvinen
2022-05-09 10:50 ` Helge Deller
2022-05-09 10:50 ` Helge Deller
2022-05-09 11:42 ` Ilpo Järvinen
2022-05-09 11:42 ` Ilpo Järvinen
2022-05-09 9:34 ` [PATCH 2/3] termbits.h: Align lines & format Ilpo Järvinen
2022-05-09 9:34 ` Ilpo Järvinen
2022-05-09 9:34 ` [PATCH 3/3] termbits.h: Remove posix_types.h include Ilpo Järvinen
2022-05-09 9:34 ` Ilpo Järvinen
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.