root/drivers/char/pcxx.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 #define FEPCODESEG  0x0200L
   2 #define FEPCODE     0x2000L
   3 #define BIOSCODE    0xf800L
   4 
   5 #define MISCGLOBAL  0x0C00L
   6 #define NPORT       0x0C22L
   7 #define MBOX        0x0C40L
   8 #define PORTBASE    0x0C90L
   9 
  10 #define FEPCLR      0x00
  11 #define FEPMEM      0x02
  12 #define FEPRST      0x04
  13 #define FEPINT      0x08
  14 #define FEPMASK     0x0e
  15 #define FEPWIN      0x80
  16 
  17 /* Maximum Number of Boards supported */
  18 #define MAX_DIGI_BOARDS 4
  19 
  20 #define PCXX_NUM_TYPES  4
  21 
  22 #define PCXI            0
  23 #define PCXE            1
  24 #define PCXEVE          2
  25 #define PCXEM           3
  26 
  27 static char *board_desc[] = {
  28         "PC/Xi",
  29         "PC/Xe",
  30         "PC/Xeve",
  31         "PC/Xem",
  32 };
  33 
  34 static char *board_mem[] = {
  35         "64k",
  36         "64k",
  37         "8k",
  38         "32k",
  39 };
  40 #define STARTC      021
  41 #define STOPC       023
  42 #define IAIXON      0x2000
  43 
  44 
  45 struct board_info       {
  46         unchar status;
  47         unchar type;
  48         unchar altpin;
  49         ushort numports;
  50         ushort port;
  51         ulong  membase;
  52         ushort first_minor;
  53 };
  54 
  55 
  56 #define TXSTOPPED   0x01
  57 #define LOWWAIT         0x02
  58 #define EMPTYWAIT       0x04
  59 #define RXSTOPPED       0x08
  60 #define TXBUSY          0x10
  61 
  62 #define DISABLED   0
  63 #define ENABLED    1
  64 #define OFF        0
  65 #define ON         1
  66 
  67 #define FEPTIMEOUT 200000  
  68 #define SERIAL_TYPE_NORMAL      1
  69 #define SERIAL_TYPE_CALLOUT     2
  70 #define PCXE_EVENT_HANGUP   1
  71 #define PCXX_MAGIC      0x5c6df104L
  72 
  73 struct channel {
  74                                                         /* --------- Board/channel information ---------- */
  75         long                                            magic;
  76         unchar                                          boardnum;
  77         unchar                                          channelnum;
  78         uint                                            dev;
  79         long                                            session;
  80         long                                            pgrp;
  81         struct tty_struct                       *tty;
  82         struct board_info                       *board;
  83         volatile struct board_chan      *brdchan;
  84         volatile struct global_data *mailbox;
  85         int                                                     asyncflags;
  86         int                                                     count;
  87         int                                                     blocked_open;
  88         int                                                     close_delay;
  89         int                                                     event;
  90         struct wait_queue                       *open_wait;
  91         struct wait_queue                       *close_wait;
  92         struct tq_struct                        tqueue;
  93                                                         /* ------------ Async control data ------------- */
  94         unchar                                          modemfake;      /* Modem values to be forced */
  95         unchar                                          modem;          /* Force values */
  96         ulong                                           statusflags;
  97         unchar                                          omodem;         /* FEP output modem status */
  98         unchar                                          imodem;         /* FEP input modem status */
  99         unchar                                          hflow;
 100         unchar                                          dsr;
 101         unchar                                          dcd;
 102         unchar                                          stopc;
 103         unchar                                          startc;
 104         unchar                                          stopca;
 105         unchar                                          startca;
 106         unchar                                          fepstopc;
 107         unchar                                          fepstartc;
 108         unchar                                          fepstopca;
 109         unchar                                          fepstartca;
 110         ushort                                          fepiflag;
 111         ushort                                          fepcflag;
 112         ushort                                          fepoflag;
 113                                                         /* ---------- Transmit/receive system ---------- */
 114         unchar                                          txwin;
 115         unchar                                          rxwin;
 116         ushort                                          txbufsize;
 117         ushort                                          rxbufsize;
 118         unchar                                          *txptr;
 119         unchar                                          *rxptr;
 120         unchar                                          *tmp_buf;               /* Temp buffer */
 121                                                         /* ---- Termios data ---- */
 122         ulong                                           c_iflag;
 123         ulong                                           c_cflag;
 124         ulong                                           c_lflag;
 125         ulong                                           c_oflag;
 126         struct termios                          normal_termios;
 127         struct termios                          callout_termios;
 128         struct digi_struct                      digiext;
 129         ulong                                           dummy[8];
 130 };

/* [previous][next][first][last][top][bottom][index][help] */