ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / drivers / char / fep.h
1
2 #define CSTART       0x400L
3 #define CMAX         0x800L
4 #define ISTART       0x800L
5 #define IMAX         0xC00L
6 #define CIN          0xD10L
7 #define GLOBAL       0xD10L
8 #define EIN          0xD18L
9 #define FEPSTAT      0xD20L
10 #define CHANSTRUCT   0x1000L
11 #define RXTXBUF      0x4000L
12
13
14 struct global_data {
15         volatile ushort cin;
16         volatile ushort cout;
17         volatile ushort cstart;
18         volatile ushort cmax;
19         volatile ushort ein;
20         volatile ushort eout;
21         volatile ushort istart;
22         volatile ushort imax;
23 };
24
25
26 struct board_chan {
27         int filler1; 
28         int filler2;
29         volatile ushort tseg;
30         volatile ushort tin;
31         volatile ushort tout;
32         volatile ushort tmax;
33         
34         volatile ushort rseg;
35         volatile ushort rin;
36         volatile ushort rout;
37         volatile ushort rmax;
38         
39         volatile ushort tlow;
40         volatile ushort rlow;
41         volatile ushort rhigh;
42         volatile ushort incr;
43         
44         volatile ushort etime;
45         volatile ushort edelay;
46         volatile unchar *dev;
47         
48         volatile ushort iflag;
49         volatile ushort oflag;
50         volatile ushort cflag;
51         volatile ushort gmask;
52         
53         volatile ushort col;
54         volatile ushort delay;
55         volatile ushort imask;
56         volatile ushort tflush;
57
58         int filler3;
59         int filler4;
60         int filler5;
61         int filler6;
62         
63         volatile unchar num;
64         volatile unchar ract;
65         volatile unchar bstat;
66         volatile unchar tbusy;
67         volatile unchar iempty;
68         volatile unchar ilow;
69         volatile unchar idata;
70         volatile unchar eflag;
71         
72         volatile unchar tflag;
73         volatile unchar rflag;
74         volatile unchar xmask;
75         volatile unchar xval;
76         volatile unchar mstat;
77         volatile unchar mchange;
78         volatile unchar mint;
79         volatile unchar lstat;
80
81         volatile unchar mtran;
82         volatile unchar orun;
83         volatile unchar startca;
84         volatile unchar stopca;
85         volatile unchar startc;
86         volatile unchar stopc;
87         volatile unchar vnext;
88         volatile unchar hflow;
89
90         volatile unchar fillc;
91         volatile unchar ochar;
92         volatile unchar omask;
93
94         unchar filler7;
95         unchar filler8[28];
96 }; 
97
98
99 #define SRXLWATER      0xE0
100 #define SRXHWATER      0xE1
101 #define STOUT          0xE2
102 #define PAUSETX        0xE3
103 #define RESUMETX       0xE4
104 #define SAUXONOFFC     0xE6
105 #define SENDBREAK      0xE8
106 #define SETMODEM       0xE9
107 #define SETIFLAGS      0xEA
108 #define SONOFFC        0xEB
109 #define STXLWATER      0xEC
110 #define PAUSERX        0xEE
111 #define RESUMERX       0xEF
112 #define SETBUFFER      0xF2
113 #define SETCOOKED      0xF3
114 #define SETHFLOW       0xF4
115 #define SETCTRLFLAGS   0xF5
116 #define SETVNEXT       0xF6
117
118
119 #define BREAK_IND        0x01
120 #define LOWTX_IND        0x02
121 #define EMPTYTX_IND      0x04
122 #define DATA_IND         0x08
123 #define MODEMCHG_IND     0x20
124
125
126 #define RTS   0x02
127 #define CD    0x08
128 #define DSR   0x10
129 #define CTS   0x20
130 #define RI    0x40
131 #define DTR   0x80
132
133         /* These are termios bits as the FEP understands them */
134
135 /* c_cflag bit meaning */
136 #define FEP_CBAUD       0000017
137 #define  FEP_B0         0000000         /* hang up */
138 #define  FEP_B50        0000001
139 #define  FEP_B75        0000002
140 #define  FEP_B110       0000003
141 #define  FEP_B134       0000004
142 #define  FEP_B150       0000005
143 #define  FEP_B200       0000006
144 #define  FEP_B300       0000007
145 #define  FEP_B600       0000010
146 #define  FEP_B1200      0000011
147 #define  FEP_B1800      0000012
148 #define  FEP_B2400      0000013
149 #define  FEP_B4800      0000014
150 #define  FEP_B9600      0000015
151 #define  FEP_B19200     0000016
152 #define  FEP_B38400     0000017
153 #define FEP_EXTA FEP_B19200
154 #define FEP_EXTB FEP_B38400
155 #define FEP_CSIZE       0000060
156 #define   FEP_CS5       0000000
157 #define   FEP_CS6       0000020
158 #define   FEP_CS7       0000040
159 #define   FEP_CS8       0000060
160 #define FEP_CSTOPB      0000100
161 #define FEP_CREAD       0000200
162 #define FEP_PARENB      0000400
163 #define FEP_PARODD      0001000
164 #define FEP_HUPCL       0002000
165 #define FEP_CLOCAL      0004000
166 #define FEP_CIBAUD      03600000                /* input baud rate (not used) */
167 #define FEP_CRTSCTS       020000000000          /* flow control */
168