1/*
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 */
44/* #define  TIOCPKT_IOCTL		0x40	state change of pty driver */
45#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
66#define TIOCGETP        0x7408
67#define TIOCSETP        0x7409
68#define TIOCSETN        0x740a			/* TIOCSETP wo flush */
69
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
77#define TIOCSBRK	0x5427  /* BSD compatibility */
78#define TIOCCBRK	0x5428  /* BSD compatibility */
79#define TIOCGSID	0x7416  /* Return the session ID of FD */
80#define TIOCGPTN	_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
81#define TIOCSPTLCK	_IOW('T',0x31, int)  /* Lock/unlock Pty */
82
83/* I hope the range from 0x5480 on is free ... */
84#define TIOCSCTTY	0x5480		/* become controlling tty */
85#define TIOCGSOFTCAR	0x5481
86#define TIOCSSOFTCAR	0x5482
87#define TIOCLINUX	0x5483
88#define TIOCGSERIAL	0x5484
89#define TIOCSSERIAL	0x5485
90#define TCSBRKP		0x5486	/* Needed for POSIX tcsendbreak() */
91#define TIOCSERCONFIG	0x5488
92#define TIOCSERGWILD	0x5489
93#define TIOCSERSWILD	0x548a
94#define TIOCGLCKTRMIOS	0x548b
95#define TIOCSLCKTRMIOS	0x548c
96#define TIOCSERGSTRUCT	0x548d /* For debugging only */
97#define TIOCSERGETLSR   0x548e /* Get line status register */
98#define TIOCSERGETMULTI 0x548f /* Get multiport config  */
99#define TIOCSERSETMULTI 0x5490 /* Set multiport config */
100#define TIOCMIWAIT      0x5491 /* wait for a change on serial input line(s) */
101#define TIOCGICOUNT     0x5492 /* read serial port inline interrupt counts */
102#define TIOCGHAYESESP	0x5493 /* Get Hayes ESP configuration */
103#define TIOCSHAYESESP	0x5494 /* Set Hayes ESP configuration */
104
105#endif /* __ASM_IOCTLS_H */
106