Logo Search packages:      
Sourcecode: linux version File versions  Download package

epca.h

#define XEMPORTS    0xC02
#define XEPORTS     0xC22

#define MAX_ALLOC   0x100

#define MAXBOARDS   12
#define FEPCODESEG  0x0200L
#define FEPCODE     0x2000L
#define BIOSCODE    0xf800L

#define MISCGLOBAL  0x0C00L
#define NPORT       0x0C22L
#define MBOX        0x0C40L
#define PORTBASE    0x0C90L

/* Begin code defines used for epca_setup */

#define INVALID_BOARD_TYPE   0x1
#define INVALID_NUM_PORTS    0x2
#define INVALID_MEM_BASE     0x4
#define INVALID_PORT_BASE    0x8
#define INVALID_BOARD_STATUS 0x10
#define INVALID_ALTPIN       0x20

/* End code defines used for epca_setup */


#define FEPCLR      0x00
#define FEPMEM      0x02
#define FEPRST      0x04
#define FEPINT      0x08
#define     FEPMASK     0x0e
#define     FEPWIN      0x80

#define PCXE    0
#define PCXEVE  1
#define PCXEM   2   
#define EISAXEM 3
#define PC64XE  4
#define PCXI    5
#define PCIXEM  7
#define PCICX   8
#define PCIXR   9
#define PCIXRJ  10
#define EPCA_NUM_TYPES 6


static char *board_desc[] = 
{
      "PC/Xe",
      "PC/Xeve",
      "PC/Xem",
      "EISA/Xem",
      "PC/64Xe",
      "PC/Xi",
      "unknown",
      "PCI/Xem",
      "PCI/CX",
      "PCI/Xr",
      "PCI/Xrj",
};

#define STARTC      021
#define STOPC       023
#define IAIXON      0x2000


#define TXSTOPPED  0x1
#define LOWWAIT    0x2
#define EMPTYWAIT  0x4
#define RXSTOPPED  0x8
#define TXBUSY     0x10

#define DISABLED   0
#define ENABLED    1
#define OFF        0
#define ON         1

#define FEPTIMEOUT 200000  
#define SERIAL_TYPE_NORMAL  1
#define SERIAL_TYPE_INFO    3
#define EPCA_EVENT_HANGUP   1
#define EPCA_MAGIC          0x5c6df104L

00085 struct channel 
{
      long   magic;
      unsigned char boardnum;
      unsigned char channelnum;
      unsigned char omodem;         /* FEP output modem status     */
      unsigned char imodem;         /* FEP input modem status      */
      unsigned char modemfake;      /* Modem values to be forced   */
      unsigned char modem;          /* Force values                */
      unsigned char hflow;
      unsigned char dsr;
      unsigned char dcd;
      unsigned char m_rts ;         /* The bits used in whatever FEP */
      unsigned char m_dcd ;         /* is indiginous to this board to */
      unsigned char m_dsr ;         /* represent each of the physical */
      unsigned char m_cts ;         /* handshake lines */
      unsigned char m_ri ;
      unsigned char m_dtr ;
      unsigned char stopc;
      unsigned char startc;
      unsigned char stopca;
      unsigned char startca;
      unsigned char fepstopc;
      unsigned char fepstartc;
      unsigned char fepstopca;
      unsigned char fepstartca;
      unsigned char txwin;
      unsigned char rxwin;
      unsigned short fepiflag;
      unsigned short fepcflag;
      unsigned short fepoflag;
      unsigned short txbufhead;
      unsigned short txbufsize;
      unsigned short rxbufhead;
      unsigned short rxbufsize;
      int    close_delay;
      int    count;
      int    blocked_open;
      unsigned long  event;
      int    asyncflags;
      uint   dev;
      unsigned long  statusflags;
      unsigned long  c_iflag;
      unsigned long  c_cflag;
      unsigned long  c_lflag;
      unsigned long  c_oflag;
      unsigned char __iomem *txptr;
      unsigned char __iomem *rxptr;
      struct board_info           *board;
      struct board_chan     __iomem *brdchan;
      struct digi_struct          digiext;
      struct tty_struct           *tty;
      wait_queue_head_t           open_wait;
      wait_queue_head_t           close_wait;
      struct work_struct          tqueue;
      struct global_data          __iomem *mailbox;
};

struct board_info 
{
      unsigned char status;
      unsigned char type;
      unsigned char altpin;
      unsigned short numports;
      unsigned long port;
      unsigned long membase;
      void __iomem *re_map_port;
      void __iomem *re_map_membase;
      unsigned long  memory_seg;
      void ( * memwinon )     (struct board_info *, unsigned int) ;
      void ( * memwinoff )    (struct board_info *, unsigned int) ;
      void ( * globalwinon )  (struct channel *) ;
      void ( * txwinon )      (struct channel *) ;
      void ( * rxwinon )      (struct channel *) ;
      void ( * memoff ) (struct channel *) ;
      void ( * assertgwinon ) (struct channel *) ;
      void ( * assertmemoff ) (struct channel *) ;
      unsigned char poller_inhibited ;
};


Generated by  Doxygen 1.6.0   Back to index