diff options
Diffstat (limited to 'drivers/char/rio/cirrus.h')
-rw-r--r-- | drivers/char/rio/cirrus.h | 178 |
1 files changed, 89 insertions, 89 deletions
diff --git a/drivers/char/rio/cirrus.h b/drivers/char/rio/cirrus.h index cf056a990f18..217ff09f2fa1 100644 --- a/drivers/char/rio/cirrus.h +++ b/drivers/char/rio/cirrus.h | |||
@@ -73,20 +73,20 @@ | |||
73 | #define TIMER_TICK 0x82 | 73 | #define TIMER_TICK 0x82 |
74 | #define STOP_BREAK 0x83 | 74 | #define STOP_BREAK 0x83 |
75 | #define BASE(a) ((a) < 4 ? (short*)CIRRUS_FIRST : ((a) < 8 ? (short *)CIRRUS_SECOND : ((a) < 12 ? (short*)CIRRUS_THIRD : (short *)CIRRUS_FOURTH))) | 75 | #define BASE(a) ((a) < 4 ? (short*)CIRRUS_FIRST : ((a) < 8 ? (short *)CIRRUS_SECOND : ((a) < 12 ? (short*)CIRRUS_THIRD : (short *)CIRRUS_FOURTH))) |
76 | #define txack1 ((short *)0x7104) | 76 | #define txack1 ((short *)0x7104) |
77 | #define rxack1 ((short *)0x7102) | 77 | #define rxack1 ((short *)0x7102) |
78 | #define mdack1 ((short *)0x7106) | 78 | #define mdack1 ((short *)0x7106) |
79 | #define txack2 ((short *)0x7006) | 79 | #define txack2 ((short *)0x7006) |
80 | #define rxack2 ((short *)0x7004) | 80 | #define rxack2 ((short *)0x7004) |
81 | #define mdack2 ((short *)0x7100) | 81 | #define mdack2 ((short *)0x7100) |
82 | #define int_latch ((short *) 0x7800) | 82 | #define int_latch ((short *) 0x7800) |
83 | #define int_status ((short *) 0x7c00) | 83 | #define int_status ((short *) 0x7c00) |
84 | #define tx1_pending 0x20 | 84 | #define tx1_pending 0x20 |
85 | #define rx1_pending 0x10 | 85 | #define rx1_pending 0x10 |
86 | #define md1_pending 0x40 | 86 | #define md1_pending 0x40 |
87 | #define tx2_pending 0x02 | 87 | #define tx2_pending 0x02 |
88 | #define rx2_pending 0x01 | 88 | #define rx2_pending 0x01 |
89 | #define md2_pending 0x40 | 89 | #define md2_pending 0x40 |
90 | #define module1_bits 0x07 | 90 | #define module1_bits 0x07 |
91 | #define module1_modern 0x08 | 91 | #define module1_modern 0x08 |
92 | #define module2_bits 0x70 | 92 | #define module2_bits 0x70 |
@@ -113,65 +113,65 @@ | |||
113 | NB. These registers are relative values on 8 bit boundaries whereas | 113 | NB. These registers are relative values on 8 bit boundaries whereas |
114 | on the RTA's the CIRRUS registers are on word boundaries. Use pointer | 114 | on the RTA's the CIRRUS registers are on word boundaries. Use pointer |
115 | arithmetic (short *) to obtain the real addresses required */ | 115 | arithmetic (short *) to obtain the real addresses required */ |
116 | #define ccr 0x05 /* Channel Command Register */ | 116 | #define ccr 0x05 /* Channel Command Register */ |
117 | #define ier 0x06 /* Interrupt Enable Register */ | 117 | #define ier 0x06 /* Interrupt Enable Register */ |
118 | #define cor1 0x08 /* Channel Option Register 1 */ | 118 | #define cor1 0x08 /* Channel Option Register 1 */ |
119 | #define cor2 0x09 /* Channel Option Register 2 */ | 119 | #define cor2 0x09 /* Channel Option Register 2 */ |
120 | #define cor3 0x0a /* Channel Option Register 3 */ | 120 | #define cor3 0x0a /* Channel Option Register 3 */ |
121 | #define cor4 0x1e /* Channel Option Register 4 */ | 121 | #define cor4 0x1e /* Channel Option Register 4 */ |
122 | #define cor5 0x1f /* Channel Option Register 5 */ | 122 | #define cor5 0x1f /* Channel Option Register 5 */ |
123 | 123 | ||
124 | #define ccsr 0x0b /* Channel Control Status Register */ | 124 | #define ccsr 0x0b /* Channel Control Status Register */ |
125 | #define rdcr 0x0e /* Receive Data Count Register */ | 125 | #define rdcr 0x0e /* Receive Data Count Register */ |
126 | #define tdcr 0x12 /* Transmit Data Count Register */ | 126 | #define tdcr 0x12 /* Transmit Data Count Register */ |
127 | #define mcor1 0x15 /* Modem Change Option Register 1 */ | 127 | #define mcor1 0x15 /* Modem Change Option Register 1 */ |
128 | #define mcor2 0x16 /* Modem Change Option Regsiter 2 */ | 128 | #define mcor2 0x16 /* Modem Change Option Regsiter 2 */ |
129 | 129 | ||
130 | #define livr 0x18 /* Local Interrupt Vector Register */ | 130 | #define livr 0x18 /* Local Interrupt Vector Register */ |
131 | #define schr1 0x1a /* Special Character Register 1 */ | 131 | #define schr1 0x1a /* Special Character Register 1 */ |
132 | #define schr2 0x1b /* Special Character Register 2 */ | 132 | #define schr2 0x1b /* Special Character Register 2 */ |
133 | #define schr3 0x1c /* Special Character Register 3 */ | 133 | #define schr3 0x1c /* Special Character Register 3 */ |
134 | #define schr4 0x1d /* Special Character Register 4 */ | 134 | #define schr4 0x1d /* Special Character Register 4 */ |
135 | 135 | ||
136 | #define rtr 0x20 /* Receive Timer Register */ | 136 | #define rtr 0x20 /* Receive Timer Register */ |
137 | #define rtpr 0x21 /* Receive Timeout Period Register */ | 137 | #define rtpr 0x21 /* Receive Timeout Period Register */ |
138 | #define lnc 0x24 /* Lnext character */ | 138 | #define lnc 0x24 /* Lnext character */ |
139 | 139 | ||
140 | #define rivr 0x43 /* Receive Interrupt Vector Register */ | 140 | #define rivr 0x43 /* Receive Interrupt Vector Register */ |
141 | #define tivr 0x42 /* Transmit Interrupt Vector Register */ | 141 | #define tivr 0x42 /* Transmit Interrupt Vector Register */ |
142 | #define mivr 0x41 /* Modem Interrupt Vector Register */ | 142 | #define mivr 0x41 /* Modem Interrupt Vector Register */ |
143 | #define gfrcr 0x40 /* Global Firmware Revision code Reg */ | 143 | #define gfrcr 0x40 /* Global Firmware Revision code Reg */ |
144 | #define ricr 0x44 /* Receive Interrupting Channel Reg */ | 144 | #define ricr 0x44 /* Receive Interrupting Channel Reg */ |
145 | #define ticr 0x45 /* Transmit Interrupting Channel Reg */ | 145 | #define ticr 0x45 /* Transmit Interrupting Channel Reg */ |
146 | #define micr 0x46 /* Modem Interrupting Channel Register */ | 146 | #define micr 0x46 /* Modem Interrupting Channel Register */ |
147 | 147 | ||
148 | #define gcr 0x4b /* Global configuration register*/ | 148 | #define gcr 0x4b /* Global configuration register */ |
149 | #define misr 0x4c /* Modem interrupt status register */ | 149 | #define misr 0x4c /* Modem interrupt status register */ |
150 | 150 | ||
151 | #define rbusr 0x59 | 151 | #define rbusr 0x59 |
152 | #define tbusr 0x5a | 152 | #define tbusr 0x5a |
153 | #define mbusr 0x5b | 153 | #define mbusr 0x5b |
154 | 154 | ||
155 | #define eoir 0x60 /* End Of Interrupt Register */ | 155 | #define eoir 0x60 /* End Of Interrupt Register */ |
156 | #define rdsr 0x62 /* Receive Data / Status Register */ | 156 | #define rdsr 0x62 /* Receive Data / Status Register */ |
157 | #define tdr 0x63 /* Transmit Data Register */ | 157 | #define tdr 0x63 /* Transmit Data Register */ |
158 | #define svrr 0x67 /* Service Request Register */ | 158 | #define svrr 0x67 /* Service Request Register */ |
159 | 159 | ||
160 | #define car 0x68 /* Channel Access Register */ | 160 | #define car 0x68 /* Channel Access Register */ |
161 | #define mir 0x69 /* Modem Interrupt Register */ | 161 | #define mir 0x69 /* Modem Interrupt Register */ |
162 | #define tir 0x6a /* Transmit Interrupt Register */ | 162 | #define tir 0x6a /* Transmit Interrupt Register */ |
163 | #define rir 0x6b /* Receive Interrupt Register */ | 163 | #define rir 0x6b /* Receive Interrupt Register */ |
164 | #define msvr1 0x6c /* Modem Signal Value Register 1 */ | 164 | #define msvr1 0x6c /* Modem Signal Value Register 1 */ |
165 | #define msvr2 0x6d /* Modem Signal Value Register 2*/ | 165 | #define msvr2 0x6d /* Modem Signal Value Register 2 */ |
166 | #define psvr 0x6f /* Printer Signal Value Register*/ | 166 | #define psvr 0x6f /* Printer Signal Value Register */ |
167 | 167 | ||
168 | #define tbpr 0x72 /* Transmit Baud Rate Period Register */ | 168 | #define tbpr 0x72 /* Transmit Baud Rate Period Register */ |
169 | #define tcor 0x76 /* Transmit Clock Option Register */ | 169 | #define tcor 0x76 /* Transmit Clock Option Register */ |
170 | 170 | ||
171 | #define rbpr 0x78 /* Receive Baud Rate Period Register */ | 171 | #define rbpr 0x78 /* Receive Baud Rate Period Register */ |
172 | #define rber 0x7a /* Receive Baud Rate Extension Register */ | 172 | #define rber 0x7a /* Receive Baud Rate Extension Register */ |
173 | #define rcor 0x7c /* Receive Clock Option Register*/ | 173 | #define rcor 0x7c /* Receive Clock Option Register */ |
174 | #define ppr 0x7e /* Prescalar Period Register */ | 174 | #define ppr 0x7e /* Prescalar Period Register */ |
175 | 175 | ||
176 | /* Misc registers used for forcing the 1400 out of its reset woes */ | 176 | /* Misc registers used for forcing the 1400 out of its reset woes */ |
177 | #define airl 0x6d | 177 | #define airl 0x6d |
@@ -192,10 +192,10 @@ | |||
192 | 192 | ||
193 | /* RDSR - when status read from FIFO */ | 193 | /* RDSR - when status read from FIFO */ |
194 | #define RDSR_BREAK 0x08 /* Break received */ | 194 | #define RDSR_BREAK 0x08 /* Break received */ |
195 | #define RDSR_TIMEOUT 0x80 /* No new data timeout */ | 195 | #define RDSR_TIMEOUT 0x80 /* No new data timeout */ |
196 | #define RDSR_SC1 0x10 /* Special char 1 (tx XON) matched */ | 196 | #define RDSR_SC1 0x10 /* Special char 1 (tx XON) matched */ |
197 | #define RDSR_SC2 0x20 /* Special char 2 (tx XOFF) matched */ | 197 | #define RDSR_SC2 0x20 /* Special char 2 (tx XOFF) matched */ |
198 | #define RDSR_SC12_MASK 0x30 /* Mask for special chars 1 and 2 */ | 198 | #define RDSR_SC12_MASK 0x30 /* Mask for special chars 1 and 2 */ |
199 | 199 | ||
200 | /* PPR */ | 200 | /* PPR */ |
201 | #define PPR_DEFAULT 0x31 /* Default value - for a 25Mhz clock gives | 201 | #define PPR_DEFAULT 0x31 /* Default value - for a 25Mhz clock gives |
@@ -244,7 +244,7 @@ | |||
244 | #define IER_TIMEOUT 0x01 /* Timeout on no data */ | 244 | #define IER_TIMEOUT 0x01 /* Timeout on no data */ |
245 | 245 | ||
246 | #define IER_DEFAULT 0x94 /* Default values */ | 246 | #define IER_DEFAULT 0x94 /* Default values */ |
247 | #define IER_PARALLEL 0x84 /* Default for Parallel */ | 247 | #define IER_PARALLEL 0x84 /* Default for Parallel */ |
248 | #define IER_EMPTY 0x92 /* Transmitter empty rather than ready */ | 248 | #define IER_EMPTY 0x92 /* Transmitter empty rather than ready */ |
249 | 249 | ||
250 | /* COR1 - Driver only */ | 250 | /* COR1 - Driver only */ |
@@ -264,11 +264,11 @@ | |||
264 | #define COR1_7BITS 0x02 /* 7 data bits */ | 264 | #define COR1_7BITS 0x02 /* 7 data bits */ |
265 | #define COR1_8BITS 0x03 /* 8 data bits */ | 265 | #define COR1_8BITS 0x03 /* 8 data bits */ |
266 | 266 | ||
267 | #define COR1_HOST 0xef /* Safe host bits */ | 267 | #define COR1_HOST 0xef /* Safe host bits */ |
268 | 268 | ||
269 | /* RTA only */ | 269 | /* RTA only */ |
270 | #define COR1_CINPCK 0x00 /* Check parity of received characters */ | 270 | #define COR1_CINPCK 0x00 /* Check parity of received characters */ |
271 | #define COR1_CNINPCK 0x10 /* Don't check parity */ | 271 | #define COR1_CNINPCK 0x10 /* Don't check parity */ |
272 | 272 | ||
273 | /* COR2 bits for both RTA and driver use */ | 273 | /* COR2 bits for both RTA and driver use */ |
274 | #define COR2_IXANY 0x80 /* IXANY - any character is XON */ | 274 | #define COR2_IXANY 0x80 /* IXANY - any character is XON */ |
@@ -293,9 +293,9 @@ | |||
293 | #define COR3_FCT 0x20 /* Flow control transparency */ | 293 | #define COR3_FCT 0x20 /* Flow control transparency */ |
294 | #define COR3_SCD12 0x10 /* Special character detect for SCHR's 1 + 2 */ | 294 | #define COR3_SCD12 0x10 /* Special character detect for SCHR's 1 + 2 */ |
295 | #define COR3_FIFO12 0x0c /* 12 chars for receive FIFO threshold */ | 295 | #define COR3_FIFO12 0x0c /* 12 chars for receive FIFO threshold */ |
296 | #define COR3_FIFO10 0x0a /* 10 chars for receive FIFO threshold */ | 296 | #define COR3_FIFO10 0x0a /* 10 chars for receive FIFO threshold */ |
297 | #define COR3_FIFO8 0x08 /* 8 chars for receive FIFO threshold */ | 297 | #define COR3_FIFO8 0x08 /* 8 chars for receive FIFO threshold */ |
298 | #define COR3_FIFO6 0x06 /* 6 chars for receive FIFO threshold */ | 298 | #define COR3_FIFO6 0x06 /* 6 chars for receive FIFO threshold */ |
299 | 299 | ||
300 | #define COR3_THRESHOLD COR3_FIFO8 /* MUST BE LESS THAN MCOR_THRESHOLD */ | 300 | #define COR3_THRESHOLD COR3_FIFO8 /* MUST BE LESS THAN MCOR_THRESHOLD */ |
301 | 301 | ||
@@ -386,7 +386,7 @@ | |||
386 | 386 | ||
387 | #define MCOR_THRESHBITS 0x0F /* mask for ANDing out the above */ | 387 | #define MCOR_THRESHBITS 0x0F /* mask for ANDing out the above */ |
388 | 388 | ||
389 | #define MCOR_THRESHOLD MCOR_THRESH9 /* MUST BE GREATER THAN COR3_THRESHOLD */ | 389 | #define MCOR_THRESHOLD MCOR_THRESH9 /* MUST BE GREATER THAN COR3_THRESHOLD */ |
390 | 390 | ||
391 | 391 | ||
392 | /* RTPR */ | 392 | /* RTPR */ |
@@ -429,25 +429,25 @@ | |||
429 | #define CONFIG 0x01 /* Configure a port */ | 429 | #define CONFIG 0x01 /* Configure a port */ |
430 | #define MOPEN 0x02 /* Modem open (block for DCD) */ | 430 | #define MOPEN 0x02 /* Modem open (block for DCD) */ |
431 | #define CLOSE 0x03 /* Close a port */ | 431 | #define CLOSE 0x03 /* Close a port */ |
432 | #define WFLUSH (0x04 | PRE_EMPTIVE) /* Write flush */ | 432 | #define WFLUSH (0x04 | PRE_EMPTIVE) /* Write flush */ |
433 | #define RFLUSH (0x05 | PRE_EMPTIVE) /* Read flush */ | 433 | #define RFLUSH (0x05 | PRE_EMPTIVE) /* Read flush */ |
434 | #define RESUME (0x06 | PRE_EMPTIVE) /* Resume if xoffed */ | 434 | #define RESUME (0x06 | PRE_EMPTIVE) /* Resume if xoffed */ |
435 | #define SBREAK 0x07 /* Start break */ | 435 | #define SBREAK 0x07 /* Start break */ |
436 | #define EBREAK 0x08 /* End break */ | 436 | #define EBREAK 0x08 /* End break */ |
437 | #define SUSPEND (0x09 | PRE_EMPTIVE) /* Susp op (behave as tho xoffed) */ | 437 | #define SUSPEND (0x09 | PRE_EMPTIVE) /* Susp op (behave as tho xoffed) */ |
438 | #define FCLOSE (0x0a | PRE_EMPTIVE) /* Force close */ | 438 | #define FCLOSE (0x0a | PRE_EMPTIVE) /* Force close */ |
439 | #define XPRINT 0x0b /* Xprint packet */ | 439 | #define XPRINT 0x0b /* Xprint packet */ |
440 | #define MBIS (0x0c | PRE_EMPTIVE) /* Set modem lines */ | 440 | #define MBIS (0x0c | PRE_EMPTIVE) /* Set modem lines */ |
441 | #define MBIC (0x0d | PRE_EMPTIVE) /* Clear modem lines */ | 441 | #define MBIC (0x0d | PRE_EMPTIVE) /* Clear modem lines */ |
442 | #define MSET (0x0e | PRE_EMPTIVE) /* Set modem lines */ | 442 | #define MSET (0x0e | PRE_EMPTIVE) /* Set modem lines */ |
443 | #define PCLOSE 0x0f /* Pseudo close - Leaves rx/tx enabled */ | 443 | #define PCLOSE 0x0f /* Pseudo close - Leaves rx/tx enabled */ |
444 | #define MGET (0x10 | PRE_EMPTIVE) /* Force update of modem status */ | 444 | #define MGET (0x10 | PRE_EMPTIVE) /* Force update of modem status */ |
445 | #define MEMDUMP (0x11 | PRE_EMPTIVE) /* Send back mem from addr supplied */ | 445 | #define MEMDUMP (0x11 | PRE_EMPTIVE) /* Send back mem from addr supplied */ |
446 | #define READ_REGISTER (0x12 | PRE_EMPTIVE) /* Read CD1400 register (debug) */ | 446 | #define READ_REGISTER (0x12 | PRE_EMPTIVE) /* Read CD1400 register (debug) */ |
447 | 447 | ||
448 | /* "Command" packets going from remote to host COMPLETE and MODEM_STATUS | 448 | /* "Command" packets going from remote to host COMPLETE and MODEM_STATUS |
449 | use data[4] / data[3] to indicate current state and modem status respectively | 449 | use data[4] / data[3] to indicate current state and modem status respectively |
450 | */ | 450 | */ |
451 | 451 | ||
452 | #define COMPLETE (0x20 | PRE_EMPTIVE) | 452 | #define COMPLETE (0x20 | PRE_EMPTIVE) |
453 | /* Command complete */ | 453 | /* Command complete */ |