add missing TIOC* macros to ioctl.h
[musl] / arch / sh / bits / ioctl.h
1 #define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) )
2 #define _IOC_NONE  0U
3 #define _IOC_WRITE 1U
4 #define _IOC_READ  2U
5
6 #define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0)
7 #define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c))
8 #define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c))
9 #define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c))
10
11 #define FIOCLEX             _IO('f',  1)
12 #define FIONCLEX            _IO('f',  2)
13 #define FIOASYNC            _IOW('f', 125, int)
14 #define FIONBIO             _IOW('f', 126, int)
15 #define FIONREAD            _IOR('f', 127, int)
16 #define TIOCINQ             FIONREAD
17 #define FIOQSIZE            _IOR('f', 128, char[8])
18
19 #define TCGETA              _IOR('t', 23, char[18])
20 #define TCSETA              _IOW('t', 24, char[18])
21 #define TCSETAW             _IOW('t', 25, char[18])
22 #define TCSETAF             _IOW('t', 28, char[18])
23
24 #define TCSBRK              _IO('t', 29)
25 #define TCXONC              _IO('t', 30)
26 #define TCFLSH              _IO('t', 31)
27
28 #define TIOCSWINSZ          _IOW('t', 103, char[8])
29 #define TIOCGWINSZ          _IOR('t', 104, char[8])
30 #define TIOCSTART           _IO('t',  110)
31 #define TIOCSTOP            _IO('t',  111)
32 #define TIOCOUTQ            _IOR('t', 115, int)
33
34 #define TIOCSPGRP           _IOW('t', 118, int)
35 #define TIOCGPGRP           _IOR('t', 119, int)
36
37 #define TIOCEXCL            _IO('T', 12)
38 #define TIOCNXCL            _IO('T', 13)
39 #define TIOCSCTTY           _IO('T', 14)
40
41 #define TIOCSTI             _IOW('T', 18, char)
42 #define TIOCMGET            _IOR('T', 21, unsigned int)
43 #define TIOCMBIS            _IOW('T', 22, unsigned int)
44 #define TIOCMBIC            _IOW('T', 23, unsigned int)
45 #define TIOCMSET            _IOW('T', 24, unsigned int)
46 #define TIOCM_LE            0x001
47 #define TIOCM_DTR           0x002
48 #define TIOCM_RTS           0x004
49 #define TIOCM_ST            0x008
50 #define TIOCM_SR            0x010
51 #define TIOCM_CTS           0x020
52 #define TIOCM_CAR           0x040
53 #define TIOCM_RNG           0x080
54 #define TIOCM_DSR           0x100
55 #define TIOCM_CD            TIOCM_CAR
56 #define TIOCM_RI            TIOCM_RNG
57 #define TIOCM_OUT1          0x2000
58 #define TIOCM_OUT2          0x4000
59 #define TIOCM_LOOP          0x8000
60
61 #define TIOCGSOFTCAR        _IOR('T', 25, unsigned int)
62 #define TIOCSSOFTCAR        _IOW('T', 26, unsigned int)
63 #define TIOCLINUX           _IOW('T', 28, char)
64 #define TIOCCONS            _IO('T',  29)
65 #define TIOCGSERIAL         _IOR('T', 30, char[60])
66 #define TIOCSSERIAL         _IOW('T', 31, char[60])
67 #define TIOCPKT             _IOW('T', 32, int)
68 #define TIOCPKT_DATA        0
69 #define TIOCPKT_FLUSHREAD   1
70 #define TIOCPKT_FLUSHWRITE  2
71 #define TIOCPKT_STOP        4
72 #define TIOCPKT_START       8
73 #define TIOCPKT_NOSTOP      16
74 #define TIOCPKT_DOSTOP      32
75 #define TIOCPKT_IOCTL       64
76
77 #define TIOCNOTTY           _IO('T',  34)
78 #define TIOCSETD            _IOW('T', 35, int)
79 #define TIOCGETD            _IOR('T', 36, int)
80 #define TCSBRKP             _IOW('T', 37, int)
81 #define TIOCSBRK            _IO('T',  39)
82 #define TIOCCBRK            _IO('T',  40)
83 #define TIOCGSID            _IOR('T', 41, int)
84 #define TCGETS              _IO('T', 1)
85 #define TCSETS              _IO('T', 2)
86 #define TCSETSW             _IO('T', 3)
87 #define TCSETSF             _IO('T', 4)
88 #define TCGETS2             _IOR('T', 42, char[44])
89 #define TCSETS2             _IOW('T', 43, char[44])
90 #define TCSETSW2            _IOW('T', 44, char[44])
91 #define TCSETSF2            _IOW('T', 45, char[44])
92 #define TIOCGRS485          _IOR('T', 46, char[32])
93 #define TIOCSRS485          _IOWR('T', 47, char[32])
94 #define TIOCGPTN            _IOR('T', 48, unsigned int)
95 #define TIOCSPTLCK          _IOW('T', 49, int)
96 #define TIOCGDEV            _IOR('T', 50, unsigned int)
97 #define TIOCSIG             _IOW('T', 54, int)
98 #define TIOCVHANGUP         _IO('T',  55)
99 #define TIOCGPKT            _IOR('T', 56, int)
100 #define TIOCGPTLCK          _IOR('T', 57, int)
101 #define TIOCGEXCL           _IOR('T', 64, int)
102
103 #define TIOCSERCONFIG       _IO('T',  83)
104 #define TIOCSERGWILD        _IOR('T', 84, int)
105 #define TIOCSERSWILD        _IOW('T', 85, int)
106 #define TIOCGLCKTRMIOS      _IO('T',  86)
107 #define TIOCSLCKTRMIOS      _IO('T',  87)
108 #define TIOCSERGSTRUCT      _IOR('T', 88, char[216])
109 #define TIOCSERGETLSR       _IOR('T', 89, unsigned int)
110 #define TIOCSER_TEMT        0x01
111 #define TIOCSERGETMULTI     _IOR('T', 90, char[168])
112 #define TIOCSERSETMULTI     _IOW('T', 91, char[168])
113
114 #define TIOCMIWAIT          _IO('T', 92)
115 #define TIOCGICOUNT         _IO('T', 93)
116
117 struct winsize {
118     unsigned short ws_row;
119     unsigned short ws_col;
120     unsigned short ws_xpixel;
121     unsigned short ws_ypixel;
122 };
123
124 #define N_TTY           0
125 #define N_SLIP          1
126 #define N_MOUSE         2
127 #define N_PPP           3
128 #define N_STRIP         4
129 #define N_AX25          5
130 #define N_X25           6
131 #define N_6PACK         7
132 #define N_MASC          8
133 #define N_R3964         9
134 #define N_PROFIBUS_FDL  10
135 #define N_IRDA          11
136 #define N_SMSBLOCK      12
137 #define N_HDLC          13
138 #define N_SYNC_PPP      14
139 #define N_HCI           15
140
141 #define FIOGETOWN       _IOR('f', 123, int)
142 #define FIOSETOWN       _IOW('f', 124, int)
143
144 #define SIOCATMARK      _IOR('s', 7, int)
145 #define SIOCSPGRP       _IOW('s', 8, int)
146 #define SIOCGPGRP       _IOW('s', 9, int)
147 #define SIOCGSTAMP      _IOR('s', 100, char[8])
148
149 #define SIOCADDRT       0x890B
150 #define SIOCDELRT       0x890C
151 #define SIOCRTMSG       0x890D
152
153 #define SIOCGIFNAME     0x8910
154 #define SIOCSIFLINK     0x8911
155 #define SIOCGIFCONF     0x8912
156 #define SIOCGIFFLAGS    0x8913
157 #define SIOCSIFFLAGS    0x8914
158 #define SIOCGIFADDR     0x8915
159 #define SIOCSIFADDR     0x8916
160 #define SIOCGIFDSTADDR  0x8917
161 #define SIOCSIFDSTADDR  0x8918
162 #define SIOCGIFBRDADDR  0x8919
163 #define SIOCSIFBRDADDR  0x891a
164 #define SIOCGIFNETMASK  0x891b
165 #define SIOCSIFNETMASK  0x891c
166 #define SIOCGIFMETRIC   0x891d
167 #define SIOCSIFMETRIC   0x891e
168 #define SIOCGIFMEM      0x891f
169 #define SIOCSIFMEM      0x8920
170 #define SIOCGIFMTU      0x8921
171 #define SIOCSIFMTU      0x8922
172 #define SIOCSIFNAME     0x8923
173 #define SIOCSIFHWADDR   0x8924
174 #define SIOCGIFENCAP    0x8925
175 #define SIOCSIFENCAP    0x8926
176 #define SIOCGIFHWADDR   0x8927
177 #define SIOCGIFSLAVE    0x8929
178 #define SIOCSIFSLAVE    0x8930
179 #define SIOCADDMULTI    0x8931
180 #define SIOCDELMULTI    0x8932
181 #define SIOCGIFINDEX    0x8933
182 #define SIOGIFINDEX     SIOCGIFINDEX
183 #define SIOCSIFPFLAGS   0x8934
184 #define SIOCGIFPFLAGS   0x8935
185 #define SIOCDIFADDR     0x8936
186 #define SIOCSIFHWBROADCAST 0x8937
187 #define SIOCGIFCOUNT    0x8938
188
189 #define SIOCGIFBR       0x8940
190 #define SIOCSIFBR       0x8941
191
192 #define SIOCGIFTXQLEN   0x8942
193 #define SIOCSIFTXQLEN   0x8943
194
195 #define SIOCDARP        0x8953
196 #define SIOCGARP        0x8954
197 #define SIOCSARP        0x8955
198
199 #define SIOCDRARP       0x8960
200 #define SIOCGRARP       0x8961
201 #define SIOCSRARP       0x8962
202
203 #define SIOCGIFMAP      0x8970
204 #define SIOCSIFMAP      0x8971
205
206 #define SIOCADDDLCI     0x8980
207 #define SIOCDELDLCI     0x8981
208
209 #define SIOCDEVPRIVATE      0x89F0
210 #define SIOCPROTOPRIVATE    0x89E0