blob: 740219c2c8943df14abe39c7e3dde6c4d2149f0d [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * Copyright (C) 1995, 1996, 2001 Ralf Baechle
7 * Copyright (C) 2001 MIPS Technologies, Inc.
8 */
9#ifndef __ASM_IOCTLS_H
10#define __ASM_IOCTLS_H
11
12#include <asm/ioctl.h>
13
14#define TCGETA 0x5401
15#define TCSETA 0x5402 /* Clashes with SNDCTL_TMR_START sound ioctl */
16#define TCSETAW 0x5403
17#define TCSETAF 0x5404
18
19#define TCSBRK 0x5405
20#define TCXONC 0x5406
21#define TCFLSH 0x5407
22
23#define TCGETS 0x540d
24#define TCSETS 0x540e
25#define TCSETSW 0x540f
26#define TCSETSF 0x5410
27
28#define TIOCEXCL 0x740d /* set exclusive use of tty */
29#define TIOCNXCL 0x740e /* reset exclusive use of tty */
30#define TIOCOUTQ 0x7472 /* output queue size */
31#define TIOCSTI 0x5472 /* simulate terminal input */
32#define TIOCMGET 0x741d /* get all modem bits */
33#define TIOCMBIS 0x741b /* bis modem bits */
34#define TIOCMBIC 0x741c /* bic modem bits */
35#define TIOCMSET 0x741a /* set all modem bits */
36#define TIOCPKT 0x5470 /* pty: set/clear packet mode */
37#define TIOCPKT_DATA 0x00 /* data packet */
38#define TIOCPKT_FLUSHREAD 0x01 /* flush packet */
39#define TIOCPKT_FLUSHWRITE 0x02 /* flush packet */
40#define TIOCPKT_STOP 0x04 /* stop output */
41#define TIOCPKT_START 0x08 /* start output */
42#define TIOCPKT_NOSTOP 0x10 /* no more ^S, ^Q */
43#define TIOCPKT_DOSTOP 0x20 /* now do ^S ^Q */
Ralf Baechle70342282013-01-22 12:59:30 +010044#define TIOCPKT_IOCTL 0x40 /* state change of pty driver */
Linus Torvalds1da177e2005-04-16 15:20:36 -070045#define TIOCSWINSZ _IOW('t', 103, struct winsize) /* set window size */
46#define TIOCGWINSZ _IOR('t', 104, struct winsize) /* get window size */
47#define TIOCNOTTY 0x5471 /* void tty association */
48#define TIOCSETD 0x7401
49#define TIOCGETD 0x7400
50
51#define FIOCLEX 0x6601
52#define FIONCLEX 0x6602
53#define FIOASYNC 0x667d
54#define FIONBIO 0x667e
55#define FIOQSIZE 0x667f
56
57#define TIOCGLTC 0x7474 /* get special local chars */
58#define TIOCSLTC 0x7475 /* set special local chars */
59#define TIOCSPGRP _IOW('t', 118, int) /* set pgrp of tty */
60#define TIOCGPGRP _IOR('t', 119, int) /* get pgrp of tty */
61#define TIOCCONS _IOW('t', 120, int) /* become virtual console */
62
63#define FIONREAD 0x467f
64#define TIOCINQ FIONREAD
65
Ralf Baechle70342282013-01-22 12:59:30 +010066#define TIOCGETP 0x7408
67#define TIOCSETP 0x7409
68#define TIOCSETN 0x740a /* TIOCSETP wo flush */
Linus Torvalds1da177e2005-04-16 15:20:36 -070069
70/* #define TIOCSETA _IOW('t', 20, struct termios) set termios struct */
71/* #define TIOCSETAW _IOW('t', 21, struct termios) drain output, set */
72/* #define TIOCSETAF _IOW('t', 22, struct termios) drn out, fls in, set */
73/* #define TIOCGETD _IOR('t', 26, int) get line discipline */
74/* #define TIOCSETD _IOW('t', 27, int) set line discipline */
75 /* 127-124 compat */
76
Ralf Baechle70342282013-01-22 12:59:30 +010077#define TIOCSBRK 0x5427 /* BSD compatibility */
78#define TIOCCBRK 0x5428 /* BSD compatibility */
79#define TIOCGSID 0x7416 /* Return the session ID of FD */
Ralf Baechle21a151d2007-10-11 23:46:15 +010080#define TCGETS2 _IOR('T', 0x2A, struct termios2)
81#define TCSETS2 _IOW('T', 0x2B, struct termios2)
82#define TCSETSW2 _IOW('T', 0x2C, struct termios2)
83#define TCSETSF2 _IOW('T', 0x2D, struct termios2)
Ricardo Ribalda Delgado1c84cd42014-09-10 10:57:08 +020084#define TIOCGRS485 _IOR('T', 0x2E, struct serial_rs485)
85#define TIOCSRS485 _IOWR('T', 0x2F, struct serial_rs485)
Ralf Baechle21a151d2007-10-11 23:46:15 +010086#define TIOCGPTN _IOR('T', 0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
87#define TIOCSPTLCK _IOW('T', 0x31, int) /* Lock/unlock Pty */
Werner Finkb7b8de02010-12-03 12:48:23 +010088#define TIOCGDEV _IOR('T', 0x32, unsigned int) /* Get primary device node of /dev/console */
hyc@symas.com26df6d12010-06-22 10:14:49 -070089#define TIOCSIG _IOW('T', 0x36, int) /* Generate signal on Pty slave */
Kay Sievers3c95c982011-02-17 18:39:28 +010090#define TIOCVHANGUP 0x5437
Cyrill Gorcunovc6298032012-10-24 23:43:21 +040091#define TIOCGPKT _IOR('T', 0x38, int) /* Get packet mode state */
92#define TIOCGPTLCK _IOR('T', 0x39, int) /* Get Pty lock state */
93#define TIOCGEXCL _IOR('T', 0x40, int) /* Get exclusive mode state */
Linus Torvalds1da177e2005-04-16 15:20:36 -070094
95/* I hope the range from 0x5480 on is free ... */
96#define TIOCSCTTY 0x5480 /* become controlling tty */
97#define TIOCGSOFTCAR 0x5481
98#define TIOCSSOFTCAR 0x5482
99#define TIOCLINUX 0x5483
100#define TIOCGSERIAL 0x5484
101#define TIOCSSERIAL 0x5485
102#define TCSBRKP 0x5486 /* Needed for POSIX tcsendbreak() */
103#define TIOCSERCONFIG 0x5488
104#define TIOCSERGWILD 0x5489
105#define TIOCSERSWILD 0x548a
106#define TIOCGLCKTRMIOS 0x548b
107#define TIOCSLCKTRMIOS 0x548c
108#define TIOCSERGSTRUCT 0x548d /* For debugging only */
Ralf Baechle70342282013-01-22 12:59:30 +0100109#define TIOCSERGETLSR 0x548e /* Get line status register */
110#define TIOCSERGETMULTI 0x548f /* Get multiport config */
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111#define TIOCSERSETMULTI 0x5490 /* Set multiport config */
Ralf Baechle70342282013-01-22 12:59:30 +0100112#define TIOCMIWAIT 0x5491 /* wait for a change on serial input line(s) */
113#define TIOCGICOUNT 0x5492 /* read serial port inline interrupt counts */
Linus Torvalds1da177e2005-04-16 15:20:36 -0700114
115#endif /* __ASM_IOCTLS_H */