Linux-2.6.12-rc2
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / char / rio / rioioctl.h
blobc3d679733c9a6dd50a48235e08341362db3df4aa
1 /*
2 ** -----------------------------------------------------------------------------
3 **
4 ** Perle Specialix driver for Linux
5 ** Ported from existing RIO Driver for SCO sources.
7 * (C) 1990 - 2000 Specialix International Ltd., Byfleet, Surrey, UK.
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
23 ** Module : rioioctl.h
24 ** SID : 1.2
25 ** Last Modified : 11/6/98 11:34:13
26 ** Retrieved : 11/6/98 11:34:22
28 ** ident @(#)rioioctl.h 1.2
30 ** -----------------------------------------------------------------------------
33 #ifndef __rioioctl_h__
34 #define __rioioctl_h__
36 #ifdef SCCS_LABELS
37 static char *_rioioctl_h_sccs_ = "@(#)rioioctl.h 1.2";
38 #endif
41 ** RIO device driver - user ioctls and associated structures.
44 struct portStats {
45 int port;
46 int gather;
47 ulong txchars;
48 ulong rxchars;
49 ulong opens;
50 ulong closes;
51 ulong ioctls;
52 };
55 #define rIOC ('r'<<8)
56 #define TCRIOSTATE (rIOC | 1)
57 #define TCRIOXPON (rIOC | 2)
58 #define TCRIOXPOFF (rIOC | 3)
59 #define TCRIOXPCPS (rIOC | 4)
60 #define TCRIOXPRINT (rIOC | 5)
61 #define TCRIOIXANYON (rIOC | 6)
62 #define TCRIOIXANYOFF (rIOC | 7)
63 #define TCRIOIXONON (rIOC | 8)
64 #define TCRIOIXONOFF (rIOC | 9)
65 #define TCRIOMBIS (rIOC | 10)
66 #define TCRIOMBIC (rIOC | 11)
67 #define TCRIOTRIAD (rIOC | 12)
68 #define TCRIOTSTATE (rIOC | 13)
71 ** 15.10.1998 ARG - ESIL 0761 part fix
72 ** Add RIO ioctls for manipulating RTS and CTS flow control, (as LynxOS
73 ** appears to not support hardware flow control).
75 #define TCRIOCTSFLOWEN (rIOC | 14) /* enable CTS flow control */
76 #define TCRIOCTSFLOWDIS (rIOC | 15) /* disable CTS flow control */
77 #define TCRIORTSFLOWEN (rIOC | 16) /* enable RTS flow control */
78 #define TCRIORTSFLOWDIS (rIOC | 17) /* disable RTS flow control */
81 ** 09.12.1998 ARG - ESIL 0776 part fix
82 ** Definition for 'RIOC' also appears in daemon.h, so we'd better do a
83 ** #ifndef here first.
84 ** 'RIO_QUICK_CHECK' also #define'd here as this ioctl is now
85 ** allowed to be used by customers.
87 ** 05.02.1999 ARG -
88 ** This is what I've decied to do with ioctls etc., which are intended to be
89 ** invoked from users applications :
90 ** Anything that needs to be defined here will be removed from daemon.h, that
91 ** way it won't end up having to be defined/maintained in two places. The only
92 ** consequence of this is that this file should now be #include'd by daemon.h
94 ** 'stats' ioctls now #define'd here as they are to be used by customers.
96 #define RIOC ('R'<<8)|('i'<<16)|('o'<<24)
98 #define RIO_QUICK_CHECK (RIOC | 105)
99 #define RIO_GATHER_PORT_STATS (RIOC | 193)
100 #define RIO_RESET_PORT_STATS (RIOC | 194)
101 #define RIO_GET_PORT_STATS (RIOC | 195)
103 #endif /* __rioioctl_h__ */