1 #define _IOC(a,b,c,d) ( ((a)<<29) | ((b)<<8) | (c) | ((d)<<16) )
2 #define _IOC_NONE  1U
3 #define _IOC_READ  2U
4 #define _IOC_WRITE 4U
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 TCGETA		0x5401
12 #define TCSETA		0x5402
13 #define TCSETAW		0x5403
14 #define TCSETAF		0x5404
15 #define TCSBRK		0x5405
16 #define TCXONC		0x5406
17 #define TCFLSH		0x5407
18 #define TCGETS		0x540D
19 #define TCSETS		0x540E
20 #define TCSETSW		0x540F
21 #define TCSETSF		0x5410
22 
23 #define TIOCEXCL	0x740D
24 #define TIOCNXCL	0x740E
25 #define TIOCOUTQ	0x7472
26 #define TIOCSTI		0x5472
27 #define TIOCMGET	0x741D
28 #define TIOCMBIS	0x741B
29 #define TIOCMBIC	0x741C
30 #define TIOCMSET	0x741A
31 
32 #define TIOCPKT		0x5470
33 #define TIOCSWINSZ	_IOW('t', 103, struct winsize)
34 #define TIOCGWINSZ	_IOR('t', 104, struct winsize)
35 #define TIOCNOTTY	0x5471
36 #define TIOCSETD	0x7401
37 #define TIOCGETD	0x7400
38 
39 #define FIOCLEX		0x6601
40 #define FIONCLEX	0x6602
41 #define FIOASYNC	0x667D
42 #define FIONBIO		0x667E
43 #define FIOQSIZE	0x667F
44 
45 #define TIOCGLTC        0x7474
46 #define TIOCSLTC        0x7475
47 #define TIOCSPGRP	_IOW('t', 118, int)
48 #define TIOCGPGRP	_IOR('t', 119, int)
49 #define TIOCCONS	_IOW('t', 120, int)
50 
51 #define FIONREAD	0x467F
52 #define TIOCINQ		FIONREAD
53 
54 #define TIOCGETP        0x7408
55 #define TIOCSETP        0x7409
56 #define TIOCSETN        0x740A
57 
58 #define TIOCSBRK	0x5427
59 #define TIOCCBRK	0x5428
60 #define TIOCGSID	0x7416
61 #define TIOCGRS485	_IOR('T', 0x2E, char[32])
62 #define TIOCSRS485	_IOWR('T', 0x2F, char[32])
63 #define TIOCGPTN	_IOR('T', 0x30, unsigned int)
64 #define TIOCSPTLCK	_IOW('T', 0x31, int)
65 #define TIOCGDEV	_IOR('T', 0x32, unsigned int)
66 #define TIOCSIG		_IOW('T', 0x36, int)
67 #define TIOCVHANGUP	0x5437
68 #define TIOCGPKT	_IOR('T', 0x38, int)
69 #define TIOCGPTLCK	_IOR('T', 0x39, int)
70 #define TIOCGEXCL	_IOR('T', 0x40, int)
71 #define TIOCGPTPEER	_IO('T', 0x41)
72 
73 #define TIOCSCTTY	0x5480
74 #define TIOCGSOFTCAR	0x5481
75 #define TIOCSSOFTCAR	0x5482
76 #define TIOCLINUX	0x5483
77 #define TIOCGSERIAL	0x5484
78 #define TIOCSSERIAL	0x5485
79 #define TCSBRKP		0x5486
80 
81 #define TIOCSERCONFIG	0x5488
82 #define TIOCSERGWILD	0x5489
83 #define TIOCSERSWILD	0x548A
84 #define TIOCGLCKTRMIOS	0x548B
85 #define TIOCSLCKTRMIOS	0x548C
86 #define TIOCSERGSTRUCT	0x548D
87 #define TIOCSERGETLSR   0x548E
88 #define TIOCSERGETMULTI 0x548F
89 #define TIOCSERSETMULTI 0x5490
90 #define TIOCMIWAIT	0x5491
91 #define TIOCGICOUNT	0x5492
92 
93 #define TIOCM_LE	0x001
94 #define TIOCM_DTR	0x002
95 #define TIOCM_RTS	0x004
96 #define TIOCM_ST	0x010
97 #define TIOCM_SR	0x020
98 #define TIOCM_CTS	0x040
99 #define TIOCM_CAR	0x100
100 #define TIOCM_CD	TIOCM_CAR
101 #define TIOCM_RNG	0x200
102 #define TIOCM_RI	TIOCM_RNG
103 #define TIOCM_DSR	0x400
104 #define TIOCM_OUT1	0x2000
105 #define TIOCM_OUT2	0x4000
106 #define TIOCM_LOOP	0x8000
107 
108 #define FIOGETOWN       _IOR('f', 123, int)
109 #define FIOSETOWN       _IOW('f', 124, int)
110 #define SIOCATMARK      _IOR('s', 7, int)
111 #define SIOCSPGRP       _IOW('s', 8, pid_t)
112 #define SIOCGPGRP       _IOR('s', 9, pid_t)
113 #define SIOCGSTAMP      0x8906
114 #define SIOCGSTAMPNS    0x8907