Skip to content

Commit

Permalink
termbits.h: create termbits-common.h for identical bits
Browse files Browse the repository at this point in the history
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>
Link: https://lore.kernel.org/r/20220509093446.6677-2-ilpo.jarvinen@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
ij-intel authored and gregkh committed May 19, 2022
1 parent 135c579 commit 0b46ac4
Show file tree
Hide file tree
Showing 7 changed files with 76 additions and 306 deletions.
52 changes: 2 additions & 50 deletions arch/alpha/include/uapi/asm/termbits.h
Original file line number Diff line number Diff line change
Expand Up @@ -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;

/*
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand All @@ -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
Expand Down
53 changes: 2 additions & 51 deletions arch/mips/include/uapi/asm/termbits.h
Original file line number Diff line number Diff line change
Expand Up @@ -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;

/*
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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 */
Expand Down Expand Up @@ -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. */
Expand All @@ -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. */
Expand Down
54 changes: 2 additions & 52 deletions arch/parisc/include/uapi/asm/termbits.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -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
Expand All @@ -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
Expand Down
52 changes: 2 additions & 50 deletions arch/powerpc/include/uapi/asm/termbits.h
Original file line number Diff line number Diff line change
Expand Up @@ -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;

/*
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand All @@ -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
Expand All @@ -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
Expand All @@ -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
Expand Down
Loading

0 comments on commit 0b46ac4

Please sign in to comment.