1198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris/*
2198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris * This file is subject to the terms and conditions of the GNU General Public
3198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris * License.  See the file "COPYING" in the main directory of this archive
4198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris * for more details.
5198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris *
6198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris * Copyright (C) 1995, 1996, 2001 Ralf Baechle
7198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris * Copyright (C) 2001 MIPS Technologies, Inc.
8198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris */
9198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#ifndef __ASM_IOCTLS_H
10198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define __ASM_IOCTLS_H
11198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
12198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#include <asm/ioctl.h>
13198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
14198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCGETA		0x5401
15198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETA		0x5402	/* Clashes with SNDCTL_TMR_START sound ioctl */
16198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETAW		0x5403
17198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETAF		0x5404
18198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
19198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSBRK		0x5405
20198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCXONC		0x5406
21198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCFLSH		0x5407
22198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
23198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCGETS		0x540d
24198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETS		0x540e
25198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETSW		0x540f
26198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETSF		0x5410
27198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
28198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCEXCL	0x740d		/* set exclusive use of tty */
29198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCNXCL	0x740e		/* reset exclusive use of tty */
30198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCOUTQ	0x7472		/* output queue size */
31198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSTI		0x5472		/* simulate terminal input */
32198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCMGET	0x741d		/* get all modem bits */
33198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCMBIS	0x741b		/* bis modem bits */
34198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCMBIC	0x741c		/* bic modem bits */
35198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCMSET	0x741a		/* set all modem bits */
36198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCPKT		0x5470		/* pty: set/clear packet mode */
37198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_DATA		0x00	/* data packet */
38198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_FLUSHREAD	0x01	/* flush packet */
39198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_FLUSHWRITE	0x02	/* flush packet */
40198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_STOP		0x04	/* stop output */
41198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_START		0x08	/* start output */
42198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_NOSTOP		0x10	/* no more ^S, ^Q */
43198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_DOSTOP		0x20	/* now do ^S ^Q */
44198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define	 TIOCPKT_IOCTL		0x40	/* state change of pty driver */
45198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSWINSZ	_IOW('t', 103, struct winsize)	/* set window size */
46198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGWINSZ	_IOR('t', 104, struct winsize)	/* get window size */
47198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCNOTTY	0x5471		/* void tty association */
48198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSETD	0x7401
49198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGETD	0x7400
50198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
51198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define FIOCLEX		0x6601
52198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define FIONCLEX	0x6602
53198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define FIOASYNC	0x667d
54198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define FIONBIO		0x667e
55198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define FIOQSIZE	0x667f
56198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
57198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGLTC	0x7474			/* get special local chars */
58198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSLTC	0x7475			/* set special local chars */
59198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSPGRP	_IOW('t', 118, int)	/* set pgrp of tty */
60198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGPGRP	_IOR('t', 119, int)	/* get pgrp of tty */
61198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCCONS	_IOW('t', 120, int)	/* become virtual console */
62198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
63198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define FIONREAD	0x467f
64198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCINQ		FIONREAD
65198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
66198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGETP	0x7408
67198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSETP	0x7409
68198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSETN	0x740a			/* TIOCSETP wo flush */
69198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
70198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris/* #define TIOCSETA	_IOW('t', 20, struct termios) set termios struct */
71198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris/* #define TIOCSETAW	_IOW('t', 21, struct termios) drain output, set */
72198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris/* #define TIOCSETAF	_IOW('t', 22, struct termios) drn out, fls in, set */
73198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris/* #define TIOCGETD	_IOR('t', 26, int)	get line discipline */
74198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris/* #define TIOCSETD	_IOW('t', 27, int)	set line discipline */
75198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris						/* 127-124 compat */
76198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
77198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSBRK	0x5427	/* BSD compatibility */
78198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCCBRK	0x5428	/* BSD compatibility */
79198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGSID	0x7416	/* Return the session ID of FD */
80198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCGETS2		_IOR('T', 0x2A, struct termios2)
81198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETS2		_IOW('T', 0x2B, struct termios2)
82198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETSW2	_IOW('T', 0x2C, struct termios2)
83198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSETSF2	_IOW('T', 0x2D, struct termios2)
84198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGPTN	_IOR('T', 0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
85198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSPTLCK	_IOW('T', 0x31, int)  /* Lock/unlock Pty */
86198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGDEV	_IOR('T', 0x32, unsigned int) /* Get primary device node of /dev/console */
87198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSIG		_IOW('T', 0x36, int)  /* Generate signal on Pty slave */
88198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCVHANGUP	0x5437
89198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
90198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
91198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
92198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
93198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris/* I hope the range from 0x5480 on is free ... */
94198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSCTTY	0x5480		/* become controlling tty */
95198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGSOFTCAR	0x5481
96198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSSOFTCAR	0x5482
97198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCLINUX	0x5483
98198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGSERIAL	0x5484
99198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSSERIAL	0x5485
100198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TCSBRKP		0x5486	/* Needed for POSIX tcsendbreak() */
101198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSERCONFIG	0x5488
102198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSERGWILD	0x5489
103198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSERSWILD	0x548a
104198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGLCKTRMIOS	0x548b
105198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSLCKTRMIOS	0x548c
106198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSERGSTRUCT	0x548d /* For debugging only */
107198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSERGETLSR	0x548e /* Get line status register */
108198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSERGETMULTI 0x548f /* Get multiport config	*/
109198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCSERSETMULTI 0x5490 /* Set multiport config */
110198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCMIWAIT	0x5491 /* wait for a change on serial input line(s) */
111198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#define TIOCGICOUNT	0x5492 /* read serial port inline interrupt counts */
112198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris
113198084289b68143fd4ea72dec91515eec00d700fChristopher Ferris#endif /* __ASM_IOCTLS_H */
114