diff options
Diffstat (limited to 'arch/alpha/include/uapi/asm/termbits.h')
| -rw-r--r-- | arch/alpha/include/uapi/asm/termbits.h | 201 | 
1 files changed, 201 insertions, 0 deletions
diff --git a/arch/alpha/include/uapi/asm/termbits.h b/arch/alpha/include/uapi/asm/termbits.h new file mode 100644 index 00000000000..879dd358992 --- /dev/null +++ b/arch/alpha/include/uapi/asm/termbits.h @@ -0,0 +1,201 @@ +#ifndef _ALPHA_TERMBITS_H +#define _ALPHA_TERMBITS_H + +#include <linux/posix_types.h> + +typedef unsigned char	cc_t; +typedef unsigned int	speed_t; +typedef unsigned int	tcflag_t; + +/* + * termios type and macro definitions.  Be careful about adding stuff + * to this file since it's used in GNU libc and there are strict rules + * concerning namespace pollution. + */ + +#define NCCS 19 +struct termios { +	tcflag_t c_iflag;		/* input mode flags */ +	tcflag_t c_oflag;		/* output mode flags */ +	tcflag_t c_cflag;		/* control mode flags */ +	tcflag_t c_lflag;		/* local mode flags */ +	cc_t c_cc[NCCS];		/* control characters */ +	cc_t c_line;			/* line discipline (== c_cc[19]) */ +	speed_t c_ispeed;		/* input speed */ +	speed_t c_ospeed;		/* output speed */ +}; + +/* Alpha has matching termios and ktermios */ + +struct ktermios { +	tcflag_t c_iflag;		/* input mode flags */ +	tcflag_t c_oflag;		/* output mode flags */ +	tcflag_t c_cflag;		/* control mode flags */ +	tcflag_t c_lflag;		/* local mode flags */ +	cc_t c_cc[NCCS];		/* control characters */ +	cc_t c_line;			/* line discipline (== c_cc[19]) */ +	speed_t c_ispeed;		/* input speed */ +	speed_t c_ospeed;		/* output speed */ +}; + +/* 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 + +/* c_iflag bits */ +#define IGNBRK	0000001 +#define BRKINT	0000002 +#define IGNPAR	0000004 +#define PARMRK	0000010 +#define INPCK	0000020 +#define ISTRIP	0000040 +#define INLCR	0000100 +#define IGNCR	0000200 +#define ICRNL	0000400 +#define IXON	0001000 +#define IXOFF	0002000 +#define IXANY	0004000 +#define IUCLC	0010000 +#define IMAXBEL	0020000 +#define IUTF8	0040000 + +/* c_oflag bits */ +#define OPOST	0000001 +#define ONLCR	0000002 +#define OLCUC	0000004 + +#define OCRNL	0000010 +#define ONOCR	0000020 +#define ONLRET	0000040 + +#define OFILL	00000100 +#define OFDEL	00000200 +#define NLDLY	00001400 +#define   NL0	00000000 +#define   NL1	00000400 +#define   NL2	00001000 +#define   NL3	00001400 +#define TABDLY	00006000 +#define   TAB0	00000000 +#define   TAB1	00002000 +#define   TAB2	00004000 +#define   TAB3	00006000 +#define CRDLY	00030000 +#define   CR0	00000000 +#define   CR1	00010000 +#define   CR2	00020000 +#define   CR3	00030000 +#define FFDLY	00040000 +#define   FF0	00000000 +#define   FF1	00040000 +#define BSDLY	00100000 +#define   BS0	00000000 +#define   BS1	00100000 +#define VTDLY	00200000 +#define   VT0	00000000 +#define   VT1	00200000 +#define XTABS	01000000 /* Hmm.. Linux/i386 considers this part of TABDLY.. */ + +/* c_cflag bit meaning */ +#define CBAUD	0000037 +#define  B0	0000000		/* hang up */ +#define  B50	0000001 +#define  B75	0000002 +#define  B110	0000003 +#define  B134	0000004 +#define  B150	0000005 +#define  B200	0000006 +#define  B300	0000007 +#define  B600	0000010 +#define  B1200	0000011 +#define  B1800	0000012 +#define  B2400	0000013 +#define  B4800	0000014 +#define  B9600	0000015 +#define  B19200	0000016 +#define  B38400	0000017 +#define EXTA B19200 +#define EXTB B38400 +#define CBAUDEX 0000000 +#define  B57600   00020 +#define  B115200  00021 +#define  B230400  00022 +#define  B460800  00023 +#define  B500000  00024 +#define  B576000  00025 +#define  B921600  00026 +#define B1000000  00027 +#define B1152000  00030 +#define B1500000  00031 +#define B2000000  00032 +#define B2500000  00033 +#define B3000000  00034 +#define B3500000  00035 +#define B4000000  00036 + +#define CSIZE	00001400 +#define   CS5	00000000 +#define   CS6	00000400 +#define   CS7	00001000 +#define   CS8	00001400 + +#define CSTOPB	00002000 +#define CREAD	00004000 +#define PARENB	00010000 +#define PARODD	00020000 +#define HUPCL	00040000 + +#define CLOCAL	00100000 +#define CMSPAR	  010000000000		/* mark or space (stick) parity */ +#define CRTSCTS	  020000000000		/* flow control */ + +/* c_lflag bits */ +#define ISIG	0x00000080 +#define ICANON	0x00000100 +#define XCASE	0x00004000 +#define ECHO	0x00000008 +#define ECHOE	0x00000002 +#define ECHOK	0x00000004 +#define ECHONL	0x00000010 +#define NOFLSH	0x80000000 +#define TOSTOP	0x00400000 +#define ECHOCTL	0x00000040 +#define ECHOPRT	0x00000020 +#define ECHOKE	0x00000001 +#define FLUSHO	0x00800000 +#define PENDIN	0x20000000 +#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 +#define	TCSAFLUSH	2 + +#endif /* _ALPHA_TERMBITS_H */  | 
