• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 ** -----------------------------------------------------------------------------
3 **
4 **  Perle Specialix driver for Linux
5 **  Ported from existing RIO Driver for SCO sources.
6  *
7  *  (C) 1990 - 2000 Specialix International Ltd., Byfleet, Surrey, UK.
8  *
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.
13  *
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.
18  *
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.
22 **
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
27 **
28 **  ident @(#)rioinfo.h	1.2
29 **
30 ** -----------------------------------------------------------------------------
31 */
32 
33 #ifndef __rioinfo_h
34 #define __rioinfo_h
35 
36 /*
37 ** Host card data structure
38 */
39 struct RioHostInfo {
40 	long location;		/* RIO Card Base I/O address */
41 	long vector;		/* RIO Card IRQ vector */
42 	int bus;		/* ISA/EISA/MCA/PCI */
43 	int mode;		/* pointer to host mode - INTERRUPT / POLLED */
44 	struct old_sgttyb
45 	*Sg;			/* pointer to default term characteristics */
46 };
47 
48 
49 /* Mode in rio device info */
50 #define INTERRUPTED_MODE	0x01	/* Interrupt is generated */
51 #define POLLED_MODE		0x02	/* No interrupt */
52 #define AUTO_MODE		0x03	/* Auto mode */
53 
54 #define WORD_ACCESS_MODE	0x10	/* Word Access Mode */
55 #define BYTE_ACCESS_MODE	0x20	/* Byte Access Mode */
56 
57 
58 /* Bus type that RIO supports */
59 #define ISA_BUS			0x01	/* The card is ISA */
60 #define EISA_BUS		0x02	/* The card is EISA */
61 #define MCA_BUS			0x04	/* The card is MCA */
62 #define PCI_BUS			0x08	/* The card is PCI */
63 
64 /*
65 ** 11.11.1998 ARG - ESIL ???? part fix
66 ** Moved definition for 'CHAN' here from rioinfo.c (it is now
67 ** called 'DEF_TERM_CHARACTERISTICS').
68 */
69 
70 #define DEF_TERM_CHARACTERISTICS \
71 { \
72 	B19200, B19200,				/* input and output speed */ \
73 	'H' - '@',				/* erase char */ \
74 	-1,					/* 2nd erase char */ \
75 	'U' - '@',				/* kill char */ \
76 	ECHO | CRMOD,				/* mode */ \
77 	'C' - '@',				/* interrupt character */ \
78 	'\\' - '@',				/* quit char */ \
79 	'Q' - '@',				/* start char */ \
80 	'S' - '@',				/* stop char */ \
81 	'D' - '@',				/* EOF */ \
82 	-1,					/* brk */ \
83 	(LCRTBS | LCRTERA | LCRTKIL | LCTLECH),	/* local mode word */ \
84 	'Z' - '@',				/* process stop */ \
85 	'Y' - '@',				/* delayed stop */ \
86 	'R' - '@',				/* reprint line */ \
87 	'O' - '@',				/* flush output */ \
88 	'W' - '@',				/* word erase */ \
89 	'V' - '@'				/* literal next char */ \
90 }
91 
92 #endif				/* __rioinfo_h */
93