Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/powerpc/include/uapi/asm/termbits.h
26516 views
1
/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
2
#ifndef _ASM_POWERPC_TERMBITS_H
3
#define _ASM_POWERPC_TERMBITS_H
4
5
/*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* as published by the Free Software Foundation; either version
9
* 2 of the License, or (at your option) any later version.
10
*/
11
12
#include <asm-generic/termbits-common.h>
13
14
typedef unsigned int tcflag_t;
15
16
/*
17
* termios type and macro definitions. Be careful about adding stuff
18
* to this file since it's used in GNU libc and there are strict rules
19
* concerning namespace pollution.
20
*/
21
22
#define NCCS 19
23
struct termios {
24
tcflag_t c_iflag; /* input mode flags */
25
tcflag_t c_oflag; /* output mode flags */
26
tcflag_t c_cflag; /* control mode flags */
27
tcflag_t c_lflag; /* local mode flags */
28
cc_t c_cc[NCCS]; /* control characters */
29
cc_t c_line; /* line discipline (== c_cc[19]) */
30
speed_t c_ispeed; /* input speed */
31
speed_t c_ospeed; /* output speed */
32
};
33
34
/* For PowerPC the termios and ktermios are the same */
35
36
struct ktermios {
37
tcflag_t c_iflag; /* input mode flags */
38
tcflag_t c_oflag; /* output mode flags */
39
tcflag_t c_cflag; /* control mode flags */
40
tcflag_t c_lflag; /* local mode flags */
41
cc_t c_cc[NCCS]; /* control characters */
42
cc_t c_line; /* line discipline (== c_cc[19]) */
43
speed_t c_ispeed; /* input speed */
44
speed_t c_ospeed; /* output speed */
45
};
46
47
/* c_cc characters */
48
#define VINTR 0
49
#define VQUIT 1
50
#define VERASE 2
51
#define VKILL 3
52
#define VEOF 4
53
#define VMIN 5
54
#define VEOL 6
55
#define VTIME 7
56
#define VEOL2 8
57
#define VSWTC 9
58
#define VWERASE 10
59
#define VREPRINT 11
60
#define VSUSP 12
61
#define VSTART 13
62
#define VSTOP 14
63
#define VLNEXT 15
64
#define VDISCARD 16
65
66
/* c_iflag bits */
67
#define IXON 0x0200
68
#define IXOFF 0x0400
69
#define IUCLC 0x1000
70
#define IMAXBEL 0x2000
71
#define IUTF8 0x4000
72
73
/* c_oflag bits */
74
#define ONLCR 0x00002
75
#define OLCUC 0x00004
76
#define NLDLY 0x00300
77
#define NL0 0x00000
78
#define NL1 0x00100
79
#define NL2 0x00200
80
#define NL3 0x00300
81
#define TABDLY 0x00c00
82
#define TAB0 0x00000
83
#define TAB1 0x00400
84
#define TAB2 0x00800
85
#define TAB3 0x00c00
86
#define XTABS 0x00c00 /* required by POSIX to == TAB3 */
87
#define CRDLY 0x03000
88
#define CR0 0x00000
89
#define CR1 0x01000
90
#define CR2 0x02000
91
#define CR3 0x03000
92
#define FFDLY 0x04000
93
#define FF0 0x00000
94
#define FF1 0x04000
95
#define BSDLY 0x08000
96
#define BS0 0x00000
97
#define BS1 0x08000
98
#define VTDLY 0x10000
99
#define VT0 0x00000
100
#define VT1 0x10000
101
102
/* c_cflag bit meaning */
103
#define CBAUD 0x000000ff
104
#define CBAUDEX 0x00000000
105
#define BOTHER 0x0000001f
106
#define B57600 0x00000010
107
#define B115200 0x00000011
108
#define B230400 0x00000012
109
#define B460800 0x00000013
110
#define B500000 0x00000014
111
#define B576000 0x00000015
112
#define B921600 0x00000016
113
#define B1000000 0x00000017
114
#define B1152000 0x00000018
115
#define B1500000 0x00000019
116
#define B2000000 0x0000001a
117
#define B2500000 0x0000001b
118
#define B3000000 0x0000001c
119
#define B3500000 0x0000001d
120
#define B4000000 0x0000001e
121
#define CSIZE 0x00000300
122
#define CS5 0x00000000
123
#define CS6 0x00000100
124
#define CS7 0x00000200
125
#define CS8 0x00000300
126
#define CSTOPB 0x00000400
127
#define CREAD 0x00000800
128
#define PARENB 0x00001000
129
#define PARODD 0x00002000
130
#define HUPCL 0x00004000
131
#define CLOCAL 0x00008000
132
#define CIBAUD 0x00ff0000
133
134
/* c_lflag bits */
135
#define ISIG 0x00000080
136
#define ICANON 0x00000100
137
#define XCASE 0x00004000
138
#define ECHO 0x00000008
139
#define ECHOE 0x00000002
140
#define ECHOK 0x00000004
141
#define ECHONL 0x00000010
142
#define NOFLSH 0x80000000
143
#define TOSTOP 0x00400000
144
#define ECHOCTL 0x00000040
145
#define ECHOPRT 0x00000020
146
#define ECHOKE 0x00000001
147
#define FLUSHO 0x00800000
148
#define PENDIN 0x20000000
149
#define IEXTEN 0x00000400
150
#define EXTPROC 0x10000000
151
152
/* Values for the OPTIONAL_ACTIONS argument to `tcsetattr'. */
153
#define TCSANOW 0
154
#define TCSADRAIN 1
155
#define TCSAFLUSH 2
156
157
#endif /* _ASM_POWERPC_TERMBITS_H */
158
159