summaryrefslogtreecommitdiff
path: root/arch/sh/bits/ioctl.h
blob: 3c7ab4bb3e1295fdc496c0c2d957219fcba789ea (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) )
#define _IOC_NONE  0U
#define _IOC_WRITE 1U
#define _IOC_READ  2U

#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0)
#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c))
#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c))
#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c))

#define FIOCLEX             _IO('f',  1)
#define FIONCLEX            _IO('f',  2)
#define FIOASYNC            _IOW('f', 125, int)
#define FIONBIO             _IOW('f', 126, int)
#define FIONREAD            _IOR('f', 127, int)
#define TIOCINQ             FIONREAD
#define FIOQSIZE            _IOR('f', 128, char[8])

#define TCGETA              _IOR('t', 23, char[18])
#define TCSETA              _IOW('t', 24, char[18])
#define TCSETAW             _IOW('t', 25, char[18])
#define TCSETAF             _IOW('t', 28, char[18])

#define TCSBRK              _IO('t', 29)
#define TCXONC              _IO('t', 30)
#define TCFLSH              _IO('t', 31)

#define TIOCSWINSZ          _IOW('t', 103, char[8])
#define TIOCGWINSZ          _IOR('t', 104, char[8])
#define TIOCSTART           _IO('t',  110)
#define TIOCSTOP            _IO('t',  111)
#define TIOCOUTQ            _IOR('t', 115, int)

#define TIOCSPGRP           _IOW('t', 118, int)
#define TIOCGPGRP           _IOR('t', 119, int)

#define TIOCEXCL            _IO('T', 12)
#define TIOCNXCL            _IO('T', 13)
#define TIOCSCTTY           _IO('T', 14)

#define TIOCSTI             _IOW('T', 18, char)
#define TIOCMGET            _IOR('T', 21, unsigned int)
#define TIOCMBIS            _IOW('T', 22, unsigned int)
#define TIOCMBIC            _IOW('T', 23, unsigned int)
#define TIOCMSET            _IOW('T', 24, unsigned int)
#define TIOCM_LE            0x001
#define TIOCM_DTR           0x002
#define TIOCM_RTS           0x004
#define TIOCM_ST            0x008
#define TIOCM_SR            0x010
#define TIOCM_CTS           0x020
#define TIOCM_CAR           0x040
#define TIOCM_RNG           0x080
#define TIOCM_DSR           0x100
#define TIOCM_CD            TIOCM_CAR
#define TIOCM_RI            TIOCM_RNG
#define TIOCM_OUT1          0x2000
#define TIOCM_OUT2          0x4000
#define TIOCM_LOOP          0x8000

#define TIOCGSOFTCAR        _IOR('T', 25, unsigned int)
#define TIOCSSOFTCAR        _IOW('T', 26, unsigned int)
#define TIOCLINUX           _IOW('T', 28, char)
#define TIOCCONS            _IO('T',  29)
#define TIOCGSERIAL         _IOR('T', 30, char[60])
#define TIOCSSERIAL         _IOW('T', 31, char[60])
#define TIOCPKT             _IOW('T', 32, int)
#define TIOCPKT_DATA        0
#define TIOCPKT_FLUSHREAD   1
#define TIOCPKT_FLUSHWRITE  2
#define TIOCPKT_STOP        4
#define TIOCPKT_START       8
#define TIOCPKT_NOSTOP      16
#define TIOCPKT_DOSTOP      32
#define TIOCPKT_IOCTL       64

#define TIOCNOTTY           _IO('T',  34)
#define TIOCSETD            _IOW('T', 35, int)
#define TIOCGETD            _IOR('T', 36, int)
#define TCSBRKP             _IOW('T', 37, int)
#define TIOCSBRK            _IO('T',  39)
#define TIOCCBRK            _IO('T',  40)
#define TIOCGSID            _IOR('T', 41, int)
#define TCGETS              _IO('T', 1)
#define TCSETS              _IO('T', 2)
#define TCSETSW             _IO('T', 3)
#define TCSETSF             _IO('T', 4)
#define TIOCGRS485          _IOR('T', 46, char[32])
#define TIOCSRS485          _IOWR('T', 47, char[32])
#define TIOCGPTN            _IOR('T', 48, unsigned int)
#define TIOCSPTLCK          _IOW('T', 49, int)
#define TIOCGDEV            _IOR('T', 50, unsigned int)
#define TIOCSIG             _IOW('T', 54, int)
#define TIOCVHANGUP         _IO('T',  55)
#define TIOCGPKT            _IOR('T', 56, int)
#define TIOCGPTLCK          _IOR('T', 57, int)
#define TIOCGEXCL           _IOR('T', 64, int)
#define TIOCGPTPEER         _IO('T', 0x41)

#define TIOCSERCONFIG       _IO('T',  83)
#define TIOCSERGWILD        _IOR('T', 84, int)
#define TIOCSERSWILD        _IOW('T', 85, int)
#define TIOCGLCKTRMIOS      _IO('T',  86)
#define TIOCSLCKTRMIOS      _IO('T',  87)
#define TIOCSERGSTRUCT      _IOR('T', 88, char[216])
#define TIOCSERGETLSR       _IOR('T', 89, unsigned int)
#define TIOCSER_TEMT        0x01
#define TIOCSERGETMULTI     _IOR('T', 90, char[168])
#define TIOCSERSETMULTI     _IOW('T', 91, char[168])

#define TIOCMIWAIT          _IO('T', 92)
#define TIOCGICOUNT         _IO('T', 93)

struct winsize {
    unsigned short ws_row;
    unsigned short ws_col;
    unsigned short ws_xpixel;
    unsigned short ws_ypixel;
};

#define N_TTY           0
#define N_SLIP          1
#define N_MOUSE         2
#define N_PPP           3
#define N_STRIP         4
#define N_AX25          5
#define N_X25           6
#define N_6PACK         7
#define N_MASC          8
#define N_R3964         9
#define N_PROFIBUS_FDL  10
#define N_IRDA          11
#define N_SMSBLOCK      12
#define N_HDLC          13
#define N_SYNC_PPP      14
#define N_HCI           15

#define FIOGETOWN       _IOR('f', 123, int)
#define FIOSETOWN       _IOW('f', 124, int)

#define SIOCATMARK      _IOR('s', 7, int)
#define SIOCSPGRP       _IOW('s', 8, int)
#define SIOCGPGRP       _IOW('s', 9, int)
#define SIOCGSTAMP      _IOR('s', 100, char[8])
#define SIOCGSTAMPNS    _IOR('s', 101, char[8])

#define SIOCADDRT       0x890B
#define SIOCDELRT       0x890C
#define SIOCRTMSG       0x890D

#define SIOCGIFNAME     0x8910
#define SIOCSIFLINK     0x8911
#define SIOCGIFCONF     0x8912
#define SIOCGIFFLAGS    0x8913
#define SIOCSIFFLAGS    0x8914
#define SIOCGIFADDR     0x8915
#define SIOCSIFADDR     0x8916
#define SIOCGIFDSTADDR  0x8917
#define SIOCSIFDSTADDR  0x8918
#define SIOCGIFBRDADDR  0x8919
#define SIOCSIFBRDADDR  0x891a
#define SIOCGIFNETMASK  0x891b
#define SIOCSIFNETMASK  0x891c
#define SIOCGIFMETRIC   0x891d
#define SIOCSIFMETRIC   0x891e
#define SIOCGIFMEM      0x891f
#define SIOCSIFMEM      0x8920
#define SIOCGIFMTU      0x8921
#define SIOCSIFMTU      0x8922
#define SIOCSIFNAME     0x8923
#define SIOCSIFHWADDR   0x8924
#define SIOCGIFENCAP    0x8925
#define SIOCSIFENCAP    0x8926
#define SIOCGIFHWADDR   0x8927
#define SIOCGIFSLAVE    0x8929
#define SIOCSIFSLAVE    0x8930
#define SIOCADDMULTI    0x8931
#define SIOCDELMULTI    0x8932
#define SIOCGIFINDEX    0x8933
#define SIOGIFINDEX     SIOCGIFINDEX
#define SIOCSIFPFLAGS   0x8934
#define SIOCGIFPFLAGS   0x8935
#define SIOCDIFADDR     0x8936
#define SIOCSIFHWBROADCAST 0x8937
#define SIOCGIFCOUNT    0x8938

#define SIOCGIFBR       0x8940
#define SIOCSIFBR       0x8941

#define SIOCGIFTXQLEN   0x8942
#define SIOCSIFTXQLEN   0x8943

#define SIOCDARP        0x8953
#define SIOCGARP        0x8954
#define SIOCSARP        0x8955

#define SIOCDRARP       0x8960
#define SIOCGRARP       0x8961
#define SIOCSRARP       0x8962

#define SIOCGIFMAP      0x8970
#define SIOCSIFMAP      0x8971

#define SIOCADDDLCI     0x8980
#define SIOCDELDLCI     0x8981

#define SIOCDEVPRIVATE      0x89F0
#define SIOCPROTOPRIVATE    0x89E0