rioinfo.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:3k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

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