arch/mips/include/uapi/asm/termbits.h

Source file repositories/reference/linux-study-clean/arch/mips/include/uapi/asm/termbits.h

File Facts

System
Linux kernel
Corpus path
arch/mips/include/uapi/asm/termbits.h
Extension
.h
Size
6151 bytes
Lines
178
Domain
Architecture Layer
Bucket
arch/mips
Inferred role
Architecture Layer: implementation source
Status
source implementation candidate

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

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_line;			/* line discipline */
	cc_t c_cc[NCCS];		/* control characters */
};

struct termios2 {
	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_line;			/* line discipline */
	cc_t c_cc[NCCS];		/* control characters */
	speed_t c_ispeed;		/* input speed */
	speed_t c_ospeed;		/* output speed */
};

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_line;			/* line discipline */
	cc_t c_cc[NCCS];		/* control characters */
	speed_t c_ispeed;		/* input speed */
	speed_t c_ospeed;		/* output speed */
};

/* 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 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] */
#if 0
/*
 * VDSUSP is not supported
 */
#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] */

/* c_iflag bits */
#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 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

Annotation

Implementation Notes