2005-04-17 02:20:36 +04:00
/*
* * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* *
* * Perle Specialix driver for Linux
* * Ported from existing RIO Driver for SCO sources .
*
* ( C ) 1990 - 2000 Specialix International Ltd . , Byfleet , Surrey , UK .
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation ; either version 2 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to the Free Software
* Foundation , Inc . , 675 Mass Ave , Cambridge , MA 0213 9 , USA .
* *
* * Module : rioinfo . h
* * SID : 1.2
* * Last Modified : 11 / 6 / 98 14 : 07 : 49
* * Retrieved : 11 / 6 / 98 14 : 07 : 50
* *
* * ident @ ( # ) rioinfo . h 1.2
* *
* * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
# ifndef __rioinfo_h
# define __rioinfo_h
/*
* * Host card data structure
*/
struct RioHostInfo {
2006-01-11 23:17:49 +03:00
long location ; /* RIO Card Base I/O address */
long vector ; /* RIO Card IRQ vector */
int bus ; /* ISA/EISA/MCA/PCI */
int mode ; /* pointer to host mode - INTERRUPT / POLLED */
2005-04-17 02:20:36 +04:00
struct old_sgttyb
2006-01-11 23:17:49 +03:00
* Sg ; /* pointer to default term characteristics */
2005-04-17 02:20:36 +04:00
} ;
/* Mode in rio device info */
2006-01-11 23:17:49 +03:00
# define INTERRUPTED_MODE 0x01 /* Interrupt is generated */
# define POLLED_MODE 0x02 /* No interrupt */
# define AUTO_MODE 0x03 /* Auto mode */
2005-04-17 02:20:36 +04:00
2006-01-11 23:17:49 +03:00
# define WORD_ACCESS_MODE 0x10 /* Word Access Mode */
# define BYTE_ACCESS_MODE 0x20 /* Byte Access Mode */
2005-04-17 02:20:36 +04:00
/* Bus type that RIO supports */
2006-01-11 23:17:49 +03:00
# define ISA_BUS 0x01 /* The card is ISA */
# define EISA_BUS 0x02 /* The card is EISA */
# define MCA_BUS 0x04 /* The card is MCA */
# define PCI_BUS 0x08 /* The card is PCI */
2005-04-17 02:20:36 +04:00
/*
* * 11.11 .1998 ARG - ESIL ? ? ? ? part fix
* * Moved definition for ' CHAN ' here from rioinfo . c ( it is now
* * called ' DEF_TERM_CHARACTERISTICS ' ) .
*/
# define DEF_TERM_CHARACTERISTICS \
{ \
B19200 , B19200 , /* input and output speed */ \
' H ' - ' @ ' , /* erase char */ \
- 1 , /* 2nd erase char */ \
' U ' - ' @ ' , /* kill char */ \
ECHO | CRMOD , /* mode */ \
' C ' - ' @ ' , /* interrupt character */ \
' \\ ' - ' @ ' , /* quit char */ \
' Q ' - ' @ ' , /* start char */ \
' S ' - ' @ ' , /* stop char */ \
' D ' - ' @ ' , /* EOF */ \
- 1 , /* brk */ \
( LCRTBS | LCRTERA | LCRTKIL | LCTLECH ) , /* local mode word */ \
' Z ' - ' @ ' , /* process stop */ \
' Y ' - ' @ ' , /* delayed stop */ \
' R ' - ' @ ' , /* reprint line */ \
' O ' - ' @ ' , /* flush output */ \
' W ' - ' @ ' , /* word erase */ \
' V ' - ' @ ' /* literal next char */ \
}
2006-01-11 23:17:49 +03:00
# endif /* __rioinfo_h */