fix powerpc termios.h and ioctl.h
[musl] / arch / powerpc / bits / ioctl.h
1 //#define _IOC(a,b,c,d) ( ((a)<<29) | ((b)<<8) | (c) | ((d)<<16) )
2 //
3 #define _IOC_SIZEBITS   13
4 #define _IOC_DIRBITS    3
5
6 #define _IOC_NRBITS     8
7 #define _IOC_TYPEBITS   8
8
9 #define _IOC_NRSHIFT    0
10 #define _IOC_TYPESHIFT  (_IOC_NRSHIFT+_IOC_NRBITS)
11 #define _IOC_SIZESHIFT  (_IOC_TYPESHIFT+_IOC_TYPEBITS)
12 #define _IOC_DIRSHIFT   (_IOC_SIZESHIFT+_IOC_SIZEBITS)
13
14 #define _IOC(dir,type,nr,size) \
15         (((dir)  << _IOC_DIRSHIFT) | \
16           ((type) << _IOC_TYPESHIFT) | \
17           ((nr)   << _IOC_NRSHIFT) | \
18           ((size) << _IOC_SIZESHIFT))
19
20
21 #define _IOC_NONE  1U
22 #define _IOC_WRITE 4U
23 #define _IOC_READ  2U
24
25 #define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0)
26 #define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c))
27 #define _IOR(a,b,c) _IOC(_IOC_READ ,(a),(b),sizeof(c))
28 #define _IOWR(a,b,c) _IOC(_IOC_READ | _IOC_WRITE,(a),(b),sizeof(c))
29
30 #define FIONCLEX        _IO('f', 2)
31 #define FIOCLEX         _IO('f', 1)
32 #define FIOASYNC        _IOW('f', 125, int)
33 #define FIONBIO         _IOW('f', 126, int)
34 #define FIONREAD        _IOR('f', 127, int)
35 #define TIOCINQ         FIONREAD
36 #define FIOQSIZE        _IOR('f', 128, char[8])
37 #define TIOCGETP        _IOR('t', 8, char[6])
38 #define TIOCSETP        _IOW('t', 9, char[6])
39 #define TIOCSETN        _IOW('t', 10, char[6])
40
41 #define TIOCSETC        _IOW('t', 17, char[6])
42 #define TIOCGETC        _IOR('t', 18, char[6])
43 #define TCGETS          _IOR('t', 19, char[44])
44 #define TCSETS          _IOW('t', 20, char[44])
45 #define TCSETSW         _IOW('t', 21, char[44])
46 #define TCSETSF         _IOW('t', 22, char[44])
47
48 #define TCGETA          _IOR('t', 23, char[20])
49 #define TCSETA          _IOW('t', 24, char[20])
50 #define TCSETAW         _IOW('t', 25, char[20])
51 #define TCSETAF         _IOW('t', 28, char[20])
52
53 #define TCSBRK          _IO('t', 29)
54 #define TCXONC          _IO('t', 30)
55 #define TCFLSH          _IO('t', 31)
56
57 #define TIOCSWINSZ      _IOW('t', 103, char[8])
58 #define TIOCGWINSZ      _IOR('t', 104, char[8])
59 #define TIOCSTART       _IO('t', 110)
60 #define TIOCSTOP        _IO('t', 111)
61
62 #define TIOCOUTQ        _IOR('t', 115, int)
63
64 #define TIOCGLTC        _IOR('t', 116, char[6])
65 #define TIOCSLTC        _IOW('t', 117, char[6])
66 #define TIOCSPGRP       _IOW('t', 118, int)
67 #define TIOCGPGRP       _IOR('t', 119, int)
68
69 #define TIOCEXCL        0x540C
70 #define TIOCNXCL        0x540D
71 #define TIOCSCTTY       0x540E
72
73 #define TIOCSTI         0x5412
74 #define TIOCMGET        0x5415
75 #define TIOCMBIS        0x5416
76 #define TIOCMBIC        0x5417
77 #define TIOCMSET        0x5418
78 #define TIOCM_LE        0x001
79 #define TIOCM_DTR       0x002
80 #define TIOCM_RTS       0x004
81 #define TIOCM_ST        0x008
82 #define TIOCM_SR        0x010
83 #define TIOCM_CTS       0x020
84 #define TIOCM_CAR       0x040
85 #define TIOCM_RNG       0x080
86 #define TIOCM_DSR       0x100
87 #define TIOCM_CD        TIOCM_CAR
88 #define TIOCM_RI        TIOCM_RNG
89 #define TIOCM_OUT1      0x2000
90 #define TIOCM_OUT2      0x4000
91 #define TIOCM_LOOP      0x8000
92
93 #define TIOCGSOFTCAR    0x5419
94 #define TIOCSSOFTCAR    0x541A
95 #define TIOCLINUX       0x541C
96 #define TIOCCONS        0x541D
97 #define TIOCGSERIAL     0x541E
98 #define TIOCSSERIAL     0x541F
99 #define TIOCPKT 0x5420
100 #define TIOCPKT_DATA            0
101 #define TIOCPKT_FLUSHREAD       1
102 #define TIOCPKT_FLUSHWRITE      2
103 #define TIOCPKT_STOP            4
104 #define TIOCPKT_START           8
105 #define TIOCPKT_NOSTOP          16
106 #define TIOCPKT_DOSTOP          32
107 #define TIOCPKT_IOCTL           64
108
109 #define TIOCNOTTY       0x5422
110 #define TIOCSETD        0x5423
111 #define TIOCGETD        0x5424
112 #define TCSBRKP         0x5425
113 #define TIOCSBRK        0x5427
114 #define TIOCCBRK        0x5428
115 #define TIOCGSID        0x5429
116 #define TIOCGRS485      0x542e
117 #define TIOCSRS485      0x542f
118 #define TIOCGPTN        _IOR('T',0x30, unsigned int)
119 #define TIOCSPTLCK      _IOW('T',0x31, int)
120 #define TIOCGDEV        _IOR('T',0x32, unsigned int)
121 #define TIOCSIG         _IOW('T',0x36, int)
122 #define TIOCVHANGUP     0x5437
123
124 #define TIOCSERCONFIG   0x5453
125 #define TIOCSERGWILD    0x5454
126 #define TIOCSERSWILD    0x5455
127 #define TIOCGLCKTRMIOS  0x5456
128 #define TIOCSLCKTRMIOS  0x5457
129 #define TIOCSERGSTRUCT  0x5458
130 #define TIOCSERGETLSR   0x5459
131 #define TIOCSER_TEMT    0x01
132 #define TIOCSERGETMULTI 0x545A
133 #define TIOCSERSETMULTI 0x545B
134
135 #define TIOCMIWAIT      0x545C
136 #define TIOCGICOUNT     0x545D
137
138
139 /* end kernel header ioctls.h */
140
141
142 #define TIOCTTYGSTRUCT  0x5426
143
144 #define TCGETX          0x5432
145 #define TCSETX          0x5433
146 #define TCSETXF         0x5434
147 #define TCSETXW         0x5435
148
149 #define TIOCGHAYESESP   0x545E
150 #define TIOCSHAYESESP   0x545F
151
152 struct winsize {
153         unsigned short ws_row;
154         unsigned short ws_col;
155         unsigned short ws_xpixel;
156         unsigned short ws_ypixel;
157 };
158
159 #define TIOCM_MODEM_BITS TIOCM_OUT2
160
161 #define N_TTY           0
162 #define N_SLIP          1
163 #define N_MOUSE         2
164 #define N_PPP           3
165 #define N_STRIP         4
166 #define N_AX25          5
167 #define N_X25           6
168 #define N_6PACK         7
169 #define N_MASC          8
170 #define N_R3964         9
171 #define N_PROFIBUS_FDL  10
172 #define N_IRDA          11
173 #define N_SMSBLOCK      12
174 #define N_HDLC          13
175 #define N_SYNC_PPP      14
176 #define N_HCI           15
177
178 #define FIOSETOWN       0x8901
179 #define SIOCSPGRP       0x8902
180 #define FIOGETOWN       0x8903
181 #define SIOCGPGRP       0x8904
182 #define SIOCATMARK      0x8905
183 #define SIOCGSTAMP      0x8906
184
185 #define SIOCADDRT       0x890B
186 #define SIOCDELRT       0x890C
187 #define SIOCRTMSG       0x890D
188
189 #define SIOCGIFNAME     0x8910
190 #define SIOCSIFLINK     0x8911
191 #define SIOCGIFCONF     0x8912
192 #define SIOCGIFFLAGS    0x8913
193 #define SIOCSIFFLAGS    0x8914
194 #define SIOCGIFADDR     0x8915
195 #define SIOCSIFADDR     0x8916
196 #define SIOCGIFDSTADDR  0x8917
197 #define SIOCSIFDSTADDR  0x8918
198 #define SIOCGIFBRDADDR  0x8919
199 #define SIOCSIFBRDADDR  0x891a
200 #define SIOCGIFNETMASK  0x891b
201 #define SIOCSIFNETMASK  0x891c
202 #define SIOCGIFMETRIC   0x891d
203 #define SIOCSIFMETRIC   0x891e
204 #define SIOCGIFMEM      0x891f
205 #define SIOCSIFMEM      0x8920
206 #define SIOCGIFMTU      0x8921
207 #define SIOCSIFMTU      0x8922
208 #define SIOCSIFHWADDR   0x8924
209 #define SIOCGIFENCAP    0x8925
210 #define SIOCSIFENCAP    0x8926
211 #define SIOCGIFHWADDR   0x8927
212 #define SIOCGIFSLAVE    0x8929
213 #define SIOCSIFSLAVE    0x8930
214 #define SIOCADDMULTI    0x8931
215 #define SIOCDELMULTI    0x8932
216 #define SIOCGIFINDEX    0x8933
217 #define SIOGIFINDEX     SIOCGIFINDEX
218 #define SIOCSIFPFLAGS   0x8934
219 #define SIOCGIFPFLAGS   0x8935
220 #define SIOCDIFADDR     0x8936
221 #define SIOCSIFHWBROADCAST 0x8937
222 #define SIOCGIFCOUNT    0x8938
223
224 #define SIOCGIFBR       0x8940
225 #define SIOCSIFBR       0x8941
226
227 #define SIOCGIFTXQLEN   0x8942
228 #define SIOCSIFTXQLEN   0x8943
229
230 #define SIOCDARP        0x8953
231 #define SIOCGARP        0x8954
232 #define SIOCSARP        0x8955
233
234 #define SIOCDRARP       0x8960
235 #define SIOCGRARP       0x8961
236 #define SIOCSRARP       0x8962
237
238 #define SIOCGIFMAP      0x8970
239 #define SIOCSIFMAP      0x8971
240
241 #define SIOCADDDLCI     0x8980
242 #define SIOCDELDLCI     0x8981
243
244 #define SIOCDEVPRIVATE          0x89F0
245 #define SIOCPROTOPRIVATE        0x89E0