Linux 2.6.21.1
[linux/fpc-iii.git] / drivers / char / rio / rioinfo.h
blob8de7966e603a6070d51b81ca4d2289826d34fbff
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 : rioinfo.h
24 ** SID : 1.2
25 ** Last Modified : 11/6/98 14:07:49
26 ** Retrieved : 11/6/98 14:07:50
28 ** ident @(#)rioinfo.h 1.2
30 ** -----------------------------------------------------------------------------
33 #ifndef __rioinfo_h
34 #define __rioinfo_h
36 #ifdef SCCS_LABELS
37 static char *_rioinfo_h_sccs_ = "@(#)rioinfo.h 1.2";
38 #endif
41 ** Host card data structure
43 struct RioHostInfo {
44 long location; /* RIO Card Base I/O address */
45 long vector; /* RIO Card IRQ vector */
46 int bus; /* ISA/EISA/MCA/PCI */
47 int mode; /* pointer to host mode - INTERRUPT / POLLED */
48 struct old_sgttyb
49 *Sg; /* pointer to default term characteristics */
53 /* Mode in rio device info */
54 #define INTERRUPTED_MODE 0x01 /* Interrupt is generated */
55 #define POLLED_MODE 0x02 /* No interrupt */
56 #define AUTO_MODE 0x03 /* Auto mode */
58 #define WORD_ACCESS_MODE 0x10 /* Word Access Mode */
59 #define BYTE_ACCESS_MODE 0x20 /* Byte Access Mode */
62 /* Bus type that RIO supports */
63 #define ISA_BUS 0x01 /* The card is ISA */
64 #define EISA_BUS 0x02 /* The card is EISA */
65 #define MCA_BUS 0x04 /* The card is MCA */
66 #define PCI_BUS 0x08 /* The card is PCI */
69 ** 11.11.1998 ARG - ESIL ???? part fix
70 ** Moved definition for 'CHAN' here from rioinfo.c (it is now
71 ** called 'DEF_TERM_CHARACTERISTICS').
74 #define DEF_TERM_CHARACTERISTICS \
75 { \
76 B19200, B19200, /* input and output speed */ \
77 'H' - '@', /* erase char */ \
78 -1, /* 2nd erase char */ \
79 'U' - '@', /* kill char */ \
80 ECHO | CRMOD, /* mode */ \
81 'C' - '@', /* interrupt character */ \
82 '\\' - '@', /* quit char */ \
83 'Q' - '@', /* start char */ \
84 'S' - '@', /* stop char */ \
85 'D' - '@', /* EOF */ \
86 -1, /* brk */ \
87 (LCRTBS | LCRTERA | LCRTKIL | LCTLECH), /* local mode word */ \
88 'Z' - '@', /* process stop */ \
89 'Y' - '@', /* delayed stop */ \
90 'R' - '@', /* reprint line */ \
91 'O' - '@', /* flush output */ \
92 'W' - '@', /* word erase */ \
93 'V' - '@' /* literal next char */ \
96 #endif /* __rioinfo_h */