1 /* $NetBSD: pucdata.c,v 1.57 2009/08/29 13:55:29 tsutsui Exp $ */
4 * Copyright (c) 1998, 1999 Christopher G. Demetriou. All rights reserved.
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. All advertising materials mentioning features or use of this software
15 * must display the following acknowledgement:
16 * This product includes software developed by Christopher G. Demetriou
17 * for the NetBSD Project.
18 * 4. The name of the author may not be used to endorse or promote products
19 * derived from this software without specific prior written permission
21 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
22 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
23 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
24 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
25 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
26 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34 * PCI "universal" communications card driver configuration data (used to
35 * match/attach the cards).
38 #include <sys/cdefs.h>
39 __KERNEL_RCSID(0, "$NetBSD: pucdata.c,v 1.57 2009/08/29 13:55:29 tsutsui Exp $");
41 #include <sys/param.h>
42 #include <sys/systm.h>
43 #include <sys/device.h>
45 #include <dev/pci/pcidevs.h>
46 #include <dev/pci/pcireg.h>
47 #include <dev/pci/pcivar.h>
48 #include <dev/pci/pucvar.h>
49 #include <dev/ic/comreg.h>
51 const struct puc_device_description puc_devices
[] = {
53 * SUNIX 40XX series of serial/parallel combo cards.
54 * Tested with 4055A and 4065A.
57 { 0x1409, 0x7168, 0x1409, 0x4000 },
58 { 0xffff, 0xffff, 0xffff, 0xeff0 },
60 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
65 { 0x1409, 0x7168, 0x1409, 0x4010 },
66 { 0xffff, 0xffff, 0xffff, 0xeff0 },
68 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
69 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
74 { 0x1409, 0x7168, 0x1409, 0x4020 },
75 { 0xffff, 0xffff, 0xffff, 0xeff0 },
77 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
82 { 0x1409, 0x7168, 0x1409, 0x4030 },
83 { 0xffff, 0xffff, 0xffff, 0xeff0 },
85 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
86 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8},
91 { 0x1409, 0x7168, 0x1409, 0x4050 },
92 { 0xffff, 0xffff, 0xffff, 0xeff0 },
94 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
95 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8},
96 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
97 { PUC_PORT_TYPE_COM
, 0x14, 0x08, COM_FREQ
},
102 { 0x1409, 0x7168, 0x1409, 0x4060 },
103 { 0xffff, 0xffff, 0xffff, 0xeff0 },
105 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
106 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8},
107 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
108 { PUC_PORT_TYPE_COM
, 0x14, 0x08, COM_FREQ
},
109 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
110 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
111 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
},
112 { PUC_PORT_TYPE_COM
, 0x24, 0x00, COM_FREQ
},
116 { "SUNIX 407X 2S/1P",
117 { 0x1409, 0x7168, 0x1409, 0x4070 },
118 { 0xffff, 0xffff, 0xffff, 0xeff0 },
120 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
121 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8},
122 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
126 { "SUNIX 408X 2S/2P",
127 { 0x1409, 0x7168, 0x1409, 0x4080 },
128 { 0xffff, 0xffff, 0xffff, 0xeff0 },
130 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
131 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8},
132 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
133 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
137 { "SUNIX 409X 4S/2P",
138 { 0x1409, 0x7168, 0x1409, 0x4090 },
139 { 0xffff, 0xffff, 0xffff, 0xeff0 },
141 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
142 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8},
143 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
144 { PUC_PORT_TYPE_COM
, 0x14, 0x08, COM_FREQ
},
145 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
146 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
151 * XXX no entry because I have no data:
152 * XXX Dolphin Peripherals 4006 (single parallel)
156 * Dolphin Peripherals 4014 (dual parallel port) card. PLX 9050, with
157 * a seemingly-lame EEPROM setup that puts the Dolphin IDs
158 * into the subsystem fields, and claims that it's a
159 * network/misc (0x02/0x80) device.
161 { "Dolphin Peripherals 4014",
162 { 0x10b5, 0x9050, 0xd84d, 0x6810 },
163 { 0xffff, 0xffff, 0xffff, 0xffff },
165 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
166 { PUC_PORT_TYPE_LPT
, 0x24, 0x00, 0x00 },
171 * XXX Dolphin Peripherals 4025 (single serial)
172 * (clashes with Dolphin Peripherals 4036 (2s variant)
176 * Dolphin Peripherals 4035 (dual serial port) card. PLX 9050, with
177 * a seemingly-lame EEPROM setup that puts the Dolphin IDs
178 * into the subsystem fields, and claims that it's a
179 * network/misc (0x02/0x80) device.
181 { "Dolphin Peripherals 4035",
182 { 0x10b5, 0x9050, 0xd84d, 0x6808 },
183 { 0xffff, 0xffff, 0xffff, 0xffff },
185 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
186 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
191 * Dolphin Peripherals 4036 (dual serial port) card.
192 * (Dolpin 4025 has the same ID but only one port)
194 { "Dolphin Peripherals 4036",
195 { 0x1409, 0x7168, 0x0, 0x0 },
196 { 0xffff, 0xffff, 0x0, 0x0 },
198 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8},
199 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8},
204 * XXX no entry because I have no data:
205 * XXX Dolphin Peripherals 4078 (dual serial and single parallel)
212 * SIIG provides documentation for their boards at:
213 * <URL:http://www.siig.com/driver.htm>
215 * Please excuse the weird ordering, it's the order they
216 * use in their documentation.
220 * SIIG "10x" family boards.
223 /* SIIG Cyber Serial PCI 16C550 (10x family): 1S */
224 { "SIIG Cyber Serial PCI 16C550 (10x family)",
225 { 0x131f, 0x1000, 0, 0 },
226 { 0xffff, 0xffff, 0, 0 },
228 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
229 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR1
},
233 /* SIIG Cyber Serial PCI 16C650 (10x family): 1S */
234 { "SIIG Cyber Serial PCI 16C650 (10x family)",
235 { 0x131f, 0x1001, 0, 0 },
236 { 0xffff, 0xffff, 0, 0 },
238 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
239 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR1
},
243 /* SIIG Cyber Serial PCI 16C850 (10x family): 1S */
244 { "SIIG Cyber Serial PCI 16C850 (10x family)",
245 { 0x131f, 0x1002, 0, 0 },
246 { 0xffff, 0xffff, 0, 0 },
248 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
249 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR1
},
253 /* SIIG Cyber I/O PCI 16C550 (10x family): 1S, 1P */
254 { "SIIG Cyber I/O PCI 16C550 (10x family)",
255 { 0x131f, 0x1010, 0, 0 },
256 { 0xffff, 0xffff, 0, 0 },
258 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
259 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR0
},
260 { PUC_PORT_TYPE_LPT
, 0x1c, 0x00, 0x00 },
264 /* SIIG Cyber I/O PCI 16C650 (10x family): 1S, 1P */
265 { "SIIG Cyber I/O PCI 16C650 (10x family)",
266 { 0x131f, 0x1011, 0, 0 },
267 { 0xffff, 0xffff, 0, 0 },
269 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
270 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR0
},
271 { PUC_PORT_TYPE_LPT
, 0x1c, 0x00, 0x00 },
275 /* SIIG Cyber I/O PCI 16C850 (10x family): 1S, 1P */
276 { "SIIG Cyber I/O PCI 16C850 (10x family)",
277 { 0x131f, 0x1012, 0, 0 },
278 { 0xffff, 0xffff, 0, 0 },
280 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
281 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR0
},
282 { PUC_PORT_TYPE_LPT
, 0x1c, 0x00, 0x00 },
286 /* SIIG Cyber Parallel PCI (10x family): 1P */
287 { "SIIG Cyber Parallel PCI (10x family)",
288 { 0x131f, 0x1020, 0, 0 },
289 { 0xffff, 0xffff, 0, 0 },
291 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
295 /* SIIG Cyber Parallel Dual PCI (10x family): 2P */
296 { "SIIG Cyber Parallel Dual PCI (10x family)",
297 { 0x131f, 0x1021, 0, 0 },
298 { 0xffff, 0xffff, 0, 0 },
300 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
301 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
305 /* SIIG Cyber Serial Dual PCI 16C550 (10x family): 2S */
306 { "SIIG Cyber Serial Dual PCI 16C550 (10x family)",
307 { 0x131f, 0x1030, 0, 0 },
308 { 0xffff, 0xffff, 0, 0 },
310 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
311 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR2
},
312 { PUC_PORT_TYPE_COM
, 0x1c, 0x00,
313 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR3
},
317 /* SIIG Cyber Serial Dual PCI 16C650 (10x family): 2S */
318 { "SIIG Cyber Serial Dual PCI 16C650 (10x family)",
319 { 0x131f, 0x1031, 0, 0 },
320 { 0xffff, 0xffff, 0, 0 },
322 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
323 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR2
},
324 { PUC_PORT_TYPE_COM
, 0x1c, 0x00,
325 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR3
},
329 /* SIIG Cyber Serial Dual PCI 16C850 (10x family): 2S */
330 { "SIIG Cyber Serial Dual PCI 16C850 (10x family)",
331 { 0x131f, 0x1032, 0, 0 },
332 { 0xffff, 0xffff, 0, 0 },
334 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
335 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR2
},
336 { PUC_PORT_TYPE_COM
, 0x1c, 0x00,
337 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR3
},
341 /* SIIG Cyber 2S1P PCI 16C550 (10x family): 2S, 1P */
342 { "SIIG Cyber 2S1P PCI 16C550 (10x family)",
343 { 0x131f, 0x1034, 0, 0 }, /* XXX really? */
344 { 0xffff, 0xffff, 0, 0 },
346 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
347 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR2
},
348 { PUC_PORT_TYPE_COM
, 0x1c, 0x00,
349 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR3
},
350 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
354 /* SIIG Cyber 2S1P PCI 16C650 (10x family): 2S, 1P */
355 { "SIIG Cyber 2S1P PCI 16C650 (10x family)",
356 { 0x131f, 0x1035, 0, 0 }, /* XXX really? */
357 { 0xffff, 0xffff, 0, 0 },
359 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
360 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR2
},
361 { PUC_PORT_TYPE_COM
, 0x1c, 0x00,
362 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR3
},
363 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
367 /* SIIG Cyber 2S1P PCI 16C850 (10x family): 2S, 1P */
368 { "SIIG Cyber 2S1P PCI 16C850 (10x family)",
369 { 0x131f, 0x1036, 0, 0 }, /* XXX really? */
370 { 0xffff, 0xffff, 0, 0 },
372 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
373 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR2
},
374 { PUC_PORT_TYPE_COM
, 0x1c, 0x00,
375 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR3
},
376 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
380 /* SIIG Cyber 4S PCI 16C550 (10x family): 4S */
381 { "SIIG Cyber 4S PCI 16C550 (10x family)",
382 { 0x131f, 0x1050, 0, 0 },
383 { 0xffff, 0xffff, 0, 0 },
385 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
386 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR0
},
387 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
388 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
* 8 },
389 { PUC_PORT_TYPE_COM
, 0x24, 0x00, COM_FREQ
* 8 },
393 /* SIIG Cyber 4S PCI 16C650 (10x family): 4S */
394 { "SIIG Cyber 4S PCI 16C650 (10x family)",
395 { 0x131f, 0x1051, 0, 0 },
396 { 0xffff, 0xffff, 0, 0 },
398 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
399 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR0
},
400 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
401 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
* 8 },
402 { PUC_PORT_TYPE_COM
, 0x24, 0x00, COM_FREQ
* 8 },
406 /* SIIG Cyber 4S PCI 16C850 (10x family): 4S */
407 { "SIIG Cyber 4S PCI 16C850 (10x family)",
408 { 0x131f, 0x1052, 0, 0 },
409 { 0xffff, 0xffff, 0, 0 },
411 { PUC_PORT_TYPE_COM
, 0x18, 0x00,
412 (COM_FREQ
* 8)|PUC_COM_SIIG10x
|PUC_PORT_USR0
},
413 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
414 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
* 8 },
415 { PUC_PORT_TYPE_COM
, 0x24, 0x00, COM_FREQ
* 8 },
420 * SIIG "20x" family boards.
423 /* SIIG Cyber Parallel PCI (20x family): 1P */
424 { "SIIG Cyber Parallel PCI (20x family)",
425 { 0x131f, 0x2020, 0, 0 },
426 { 0xffff, 0xffff, 0, 0 },
428 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
432 /* SIIG Cyber Parallel Dual PCI (20x family): 2P */
433 { "SIIG Cyber Parallel Dual PCI (20x family)",
434 { 0x131f, 0x2021, 0, 0 },
435 { 0xffff, 0xffff, 0, 0 },
437 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
438 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
442 /* SIIG Cyber 2P1S PCI 16C550 (20x family): 1S, 2P */
443 { "SIIG Cyber 2P1S PCI 16C550 (20x family)",
444 { 0x131f, 0x2040, 0, 0 },
445 { 0xffff, 0xffff, 0, 0 },
447 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
448 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
449 { PUC_PORT_TYPE_LPT
, 0x14, 0x00, 0x00 },
450 { PUC_PORT_TYPE_LPT
, 0x1c, 0x00, 0x00 },
454 /* SIIG Cyber 2P1S PCI 16C650 (20x family): 1S, 2P */
455 { "SIIG Cyber 2P1S PCI 16C650 (20x family)",
456 { 0x131f, 0x2041, 0, 0 },
457 { 0xffff, 0xffff, 0, 0 },
459 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
460 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
461 { PUC_PORT_TYPE_LPT
, 0x14, 0x00, 0x00 },
462 { PUC_PORT_TYPE_LPT
, 0x1c, 0x00, 0x00 },
466 /* SIIG Cyber 2P1S PCI 16C850 (20x family): 1S, 2P */
467 { "SIIG Cyber 2P1S PCI 16C850 (20x family)",
468 { 0x131f, 0x2042, 0, 0 },
469 { 0xffff, 0xffff, 0, 0 },
471 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
472 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
473 { PUC_PORT_TYPE_LPT
, 0x14, 0x00, 0x00 },
474 { PUC_PORT_TYPE_LPT
, 0x1c, 0x00, 0x00 },
478 /* SIIG Cyber Serial PCI 16C550 (20x family): 1S */
479 { "SIIG Cyber Serial PCI 16C550 (20x family)",
480 { 0x131f, 0x2000, 0, 0 },
481 { 0xffff, 0xffff, 0, 0 },
483 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
484 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
488 /* SIIG Cyber Serial PCI 16C650 (20x family): 1S */
489 { "SIIG Cyber Serial PCI 16C650 (20x family)",
490 { 0x131f, 0x2001, 0, 0 },
491 { 0xffff, 0xffff, 0, 0 },
493 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
494 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
498 /* SIIG Cyber Serial PCI 16C850 (20x family): 1S */
499 { "SIIG Cyber Serial PCI 16C850 (20x family)",
500 { 0x131f, 0x2002, 0, 0 },
501 { 0xffff, 0xffff, 0, 0 },
503 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
504 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
508 /* SIIG Cyber I/O PCI 16C550 (20x family): 1S, 1P */
509 { "SIIG Cyber I/O PCI 16C550 (20x family)",
510 { 0x131f, 0x2010, 0, 0 },
511 { 0xffff, 0xffff, 0, 0 },
513 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
514 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
515 { PUC_PORT_TYPE_LPT
, 0x14, 0x00, 0x00 },
519 /* SIIG Cyber I/O PCI 16C650 (20x family): 1S, 1P */
520 { "SIIG Cyber I/O PCI 16C650 (20x family)",
521 { 0x131f, 0x2011, 0, 0 },
522 { 0xffff, 0xffff, 0, 0 },
524 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
525 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
526 { PUC_PORT_TYPE_LPT
, 0x14, 0x00, 0x00 },
530 /* SIIG Cyber I/O PCI 16C850 (20x family): 1S, 1P */
531 { "SIIG Cyber I/O PCI 16C850 (20x family)",
532 { 0x131f, 0x2012, 0, 0 },
533 { 0xffff, 0xffff, 0, 0 },
535 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
536 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
537 { PUC_PORT_TYPE_LPT
, 0x14, 0x00, 0x00 },
541 /* SIIG Cyber Serial Dual PCI 16C550 (20x family): 2S */
542 { "SIIG Cyber Serial Dual PCI 16C550 (20x family)",
543 { 0x131f, 0x2030, 0, 0 },
544 { 0xffff, 0xffff, 0, 0 },
546 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
547 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
548 { PUC_PORT_TYPE_COM
, 0x14, 0x00,
549 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR1
},
553 /* SIIG Cyber Serial Dual PCI 16C650 (20x family): 2S */
554 { "SIIG Cyber Serial Dual PCI 16C650 (20x family)",
555 { 0x131f, 0x2031, 0, 0 },
556 { 0xffff, 0xffff, 0, 0 },
558 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
559 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
560 { PUC_PORT_TYPE_COM
, 0x14, 0x00,
561 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR1
},
565 /* SIIG Cyber Serial Dual PCI 16C850 (20x family): 2S */
566 { "SIIG Cyber Serial Dual PCI 16C850 (20x family)",
567 { 0x131f, 0x2032, 0, 0 },
568 { 0xffff, 0xffff, 0, 0 },
570 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
571 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
572 { PUC_PORT_TYPE_COM
, 0x14, 0x00,
573 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR1
},
577 /* SIIG Cyber 2S1P PCI 16C550 (20x family): 2S, 1P */
578 { "SIIG Cyber 2S1P PCI 16C550 (20x family)",
579 { 0x131f, 0x2060, 0, 0 },
580 { 0xffff, 0xffff, 0, 0 },
582 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
583 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
584 { PUC_PORT_TYPE_COM
, 0x14, 0x00,
585 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR1
},
586 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
590 /* SIIG Cyber 2S1P PCI 16C650 (20x family): 2S, 1P */
591 { "SIIG Cyber 2S1P PCI 16C650 (20x family)",
592 { 0x131f, 0x2061, 0, 0 },
593 { 0xffff, 0xffff, 0, 0 },
595 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
596 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
597 { PUC_PORT_TYPE_COM
, 0x14, 0x00,
598 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR1
},
599 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
603 /* SIIG Cyber 2S1P PCI 16C850 (20x family): 2S, 1P */
604 { "SIIG Cyber 2S1P PCI 16C850 (20x family)",
605 { 0x131f, 0x2062, 0, 0 },
606 { 0xffff, 0xffff, 0, 0 },
608 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
609 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
610 { PUC_PORT_TYPE_COM
, 0x14, 0x00,
611 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR1
},
612 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
616 /* SIIG Cyber 4S PCI 16C550 (20x family): 4S */
617 { "SIIG Cyber 4S PCI 16C550 (20x family)",
618 { 0x131f, 0x2050, 0, 0 },
619 { 0xffff, 0xffff, 0, 0 },
621 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
622 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
623 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
624 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
625 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
629 /* SIIG Cyber 4S PCI 16C650 (20x family): 4S */
630 { "SIIG Cyber 4S PCI 16C650 (20x family)",
631 { 0x131f, 0x2051, 0, 0 },
632 { 0xffff, 0xffff, 0, 0 },
634 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
635 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
636 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
637 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
638 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
642 /* SIIG Cyber 4S PCI 16C850 (20x family): 4S */
643 { "SIIG Cyber 4S PCI 16C850 (20x family)",
644 { 0x131f, 0x2052, 0, 0 },
645 { 0xffff, 0xffff, 0, 0 },
647 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
648 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
649 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
650 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
651 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
655 /* SIIG PS8000 PCI 8S 16C550 (20x family): 8S - 16 Byte FIFOs */
656 { "SIIG PS8000 PCI 8S 16C550 (20x family)",
657 { 0x131f, 0x2080, 0, 0 },
658 { 0xffff, 0xffff, 0, 0 },
660 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
661 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
662 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
663 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
664 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
665 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
* 8 },
666 { PUC_PORT_TYPE_COM
, 0x20, 0x08, COM_FREQ
* 8 },
667 { PUC_PORT_TYPE_COM
, 0x20, 0x10, COM_FREQ
* 8 },
668 { PUC_PORT_TYPE_COM
, 0x20, 0x18, COM_FREQ
* 8 },
672 /* SIIG PS8000 PCI 8S 16C650 (20x family): 8S - 32 Byte FIFOs */
673 { "SIIG PS8000 PCI 8S 16C650 (20x family)",
674 { 0x131f, 0x2081, 0, 0 },
675 { 0xffff, 0xffff, 0, 0 },
677 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
678 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
679 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
680 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
681 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
682 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
* 8 },
683 { PUC_PORT_TYPE_COM
, 0x20, 0x08, COM_FREQ
* 8 },
684 { PUC_PORT_TYPE_COM
, 0x20, 0x10, COM_FREQ
* 8 },
685 { PUC_PORT_TYPE_COM
, 0x20, 0x18, COM_FREQ
* 8 },
689 /* SIIG PS8000 PCI 8S 16C850 (20x family): 8S - 128 Byte FIFOs */
690 { "SIIG PS8000 PCI 8S 16C850 (20x family)",
691 { 0x131f, 0x2082, 0, 0 },
692 { 0xffff, 0xffff, 0, 0 },
694 { PUC_PORT_TYPE_COM
, 0x10, 0x00,
695 (COM_FREQ
* 8)|PUC_COM_SIIG20x
|PUC_PORT_USR0
},
696 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
697 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
698 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
699 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
* 8 },
700 { PUC_PORT_TYPE_COM
, 0x20, 0x08, COM_FREQ
* 8 },
701 { PUC_PORT_TYPE_COM
, 0x20, 0x10, COM_FREQ
* 8 },
702 { PUC_PORT_TYPE_COM
, 0x20, 0x18, COM_FREQ
* 8 },
705 /* VScom PCI-200: 2S */
707 { 0x10b5, 0x1103, 0x10b5, 0x1103 },
708 { 0xffff, 0xffff, 0xffff, 0xffff },
710 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
711 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
* 8 },
715 /* VScom PCI-400: 4S */
717 { 0x10b5, 0x1077, 0x10b5, 0x1077 },
718 { 0xffff, 0xffff, 0xffff, 0xffff },
720 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
721 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 8 },
722 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 8 },
723 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 8 },
727 /* VScom PCI-800: 8S */
729 { 0x10b5, 0x1076, 0x10b5, 0x1076 },
730 { 0xffff, 0xffff, 0xffff, 0xffff },
732 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
733 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 8 },
734 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 8 },
735 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 8 },
736 { PUC_PORT_TYPE_COM
, 0x18, 0x20, COM_FREQ
* 8 },
737 { PUC_PORT_TYPE_COM
, 0x18, 0x28, COM_FREQ
* 8 },
738 { PUC_PORT_TYPE_COM
, 0x18, 0x30, COM_FREQ
* 8 },
739 { PUC_PORT_TYPE_COM
, 0x18, 0x38, COM_FREQ
* 8 },
743 { "Titan PCI-010HV2",
744 { 0x14d2, 0xe001, 0, 0 },
745 { 0xffff, 0xffff, 0, 0 },
747 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
750 { "Titan PCI-200HV2",
751 { 0x14d2, 0xe020, 0, 0 },
752 { 0xffff, 0xffff, 0, 0 },
754 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8 },
755 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
760 * VScom PCI-800H. Uses 8 16950 UART, behind a PCI chips that offers
761 * 4 com port on PCI device 0 and 4 on PCI device 1. PCI device 0 has
762 * device ID 3 and PCI device 1 device ID 4.
765 { 0x14d2, 0xa003, 0, 0 },
766 { 0xffff, 0xffff, 0, 0 },
768 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8 },
769 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8 },
770 { PUC_PORT_TYPE_COM
, 0x10, 0x10, COM_FREQ
* 8 },
771 { PUC_PORT_TYPE_COM
, 0x10, 0x18, COM_FREQ
* 8 },
775 { 0x14d2, 0xa004, 0, 0 },
776 { 0xffff, 0xffff, 0, 0 },
778 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8 },
779 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8 },
780 { PUC_PORT_TYPE_COM
, 0x10, 0x10, COM_FREQ
* 8 },
781 { PUC_PORT_TYPE_COM
, 0x10, 0x18, COM_FREQ
* 8 },
785 { 0x14d2, 0xa005, 0, 0 },
786 { 0xffff, 0xffff, 0, 0 },
788 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 8 },
789 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 8 },
793 { 0x14d2, 0x8080, 0, 0 },
794 { 0xffff, 0xffff, 0, 0 },
796 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
* 8 },
797 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
798 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
* 8 },
799 { PUC_PORT_TYPE_COM
, 0x20, 0x08, COM_FREQ
* 8 },
800 { PUC_PORT_TYPE_COM
, 0x20, 0x10, COM_FREQ
* 8 },
801 { PUC_PORT_TYPE_COM
, 0x20, 0x18, COM_FREQ
* 8 },
802 { PUC_PORT_TYPE_COM
, 0x20, 0x20, COM_FREQ
* 8 },
803 { PUC_PORT_TYPE_COM
, 0x20, 0x28, COM_FREQ
* 8 },
806 /* NEC PK-UG-X001 K56flex PCI Modem card.
807 NEC MARTH bridge chip and Rockwell RCVDL56ACF/SP using. */
808 { "NEC PK-UG-X001 K56flex PCI Modem",
809 { 0x1033, 0x0074, 0x1033, 0x8014 },
810 { 0xffff, 0xffff, 0xffff, 0xffff },
812 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
818 { 0x1033, 0x007d, 0x1033, 0x8012 },
819 { 0xffff, 0xffff, 0xffff, 0xffff },
821 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
825 /* Lava Computers 2SP-PCI */
826 { "Lava Computers 2SP-PCI parallel port",
827 { 0x1407, 0x8000, 0, 0 },
828 { 0xffff, 0xffff, 0, 0 },
830 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
834 /* Lava Computers 2SP-PCI and Quattro-PCI serial ports */
835 { "Lava Computers dual serial port",
836 { 0x1407, 0x0100, 0, 0 },
837 { 0xffff, 0xfffc, 0, 0 },
839 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
840 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
844 /* Lava Computers DSerial PCI serial ports */
845 { "Lava Computers serial port",
846 { 0x1407, 0x0110, 0, 0 },
847 { 0xffff, 0xfffc, 0, 0 },
849 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
853 /* Lava Computers Quattro-PCI serial ports */
854 { "Lava Quattro-PCI 4-port serial",
855 { 0x1407, 0x0120, 0, 0 },
856 { 0xffff, 0xfffc, 0, 0 },
858 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
859 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
863 /* Lava Computers Octopus-550 serial ports */
864 { "Lava Computers Octopus-550 8-port serial",
865 { 0x1407, 0x0180, 0, 0 },
866 { 0xffff, 0xfffc, 0, 0 },
868 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
869 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
870 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
871 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
875 /* US Robotics (3Com) PCI Modems */
876 { "US Robotics (3Com) 3CP5609 PCI 16550 Modem",
877 { 0x12b9, 0x1008, 0, 0 },
878 { 0xffff, 0xffff, 0, 0 },
880 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
884 /* Actiontec 56K PCI Master */
885 { "Actiontec 56K PCI Master",
886 { 0x11c1, 0x0480, 0x0, 0x0 },
887 { 0xffff, 0xffff, 0x0, 0x0 },
889 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
894 * Boards with an Oxford Semiconductor chip.
896 * Oxford Semiconductor provides documentation for their chip at:
897 * <URL:http://www.plxtech.com/products/uart>
899 * As sold by Kouwell <URL:http://www.kouwell.com/>.
900 * I/O Flex PCI I/O Card Model-223 with 4 serial and 1 parallel ports.
903 /* Oxford Semiconductor OXmPCI952 PCI UARTs */
904 { "Oxford Semiconductor OXmPCI952 UARTs",
905 { 0x1415, 0x950a, 0, 0 },
906 { 0xffff, 0xffff, 0, 0 },
908 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 10 },
909 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 10 },
913 /* Oxford Semiconductor OX16PCI952 PCI `950 UARTs - 128 byte FIFOs */
914 { "Oxford Semiconductor OX16PCI952 UARTs",
915 { 0x1415, 0x9521, 0, 0 },
916 { 0xffff, 0xffff, 0, 0 },
918 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
919 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
923 /* Oxford Semiconductor OX16PCI952 PCI Parallel port */
924 { "Oxford Semiconductor OX16PCI952 Parallel port",
925 { 0x1415, 0x9523, 0, 0 },
926 { 0xffff, 0xffff, 0, 0 },
928 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
932 /* OEM of Oxford Semiconductor PCI UARTs? */
933 { "Avlab LP PCI 4S Quartet",
934 { 0x1415, 0x9501, 0x14db, 0x2150 },
935 { 0xffff, 0xffff, 0xffff, 0xffff },
937 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
* 10 },
938 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
* 10 },
939 { PUC_PORT_TYPE_COM
, 0x10, 0x10, COM_FREQ
* 10 },
940 { PUC_PORT_TYPE_COM
, 0x10, 0x18, COM_FREQ
* 10 },
944 /* Oxford Semiconductor OX16PCI954 PCI UARTs */
945 { "Oxford Semiconductor OX16PCI954 UARTs",
946 { 0x1415, 0x9501, 0, 0 },
947 { 0xffff, 0xffff, 0, 0 },
949 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
950 { PUC_PORT_TYPE_COM
, 0x10, 0x08, COM_FREQ
},
951 { PUC_PORT_TYPE_COM
, 0x10, 0x10, COM_FREQ
},
952 { PUC_PORT_TYPE_COM
, 0x10, 0x18, COM_FREQ
},
956 /* Oxford Semiconductor OX16PCI954 PCI Parallel port */
957 { "Oxford Semiconductor OX16PCI954 Parallel port",
958 { 0x1415, 0x9513, 0, 0 },
959 { 0xffff, 0xffff, 0, 0 },
961 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
965 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232/422/485 */
966 { "Moxa Technologies, SmartIO C104H/PCI",
967 { 0x1393, 0x1040, 0, 0 },
968 { 0xffff, 0xffff, 0, 0 },
970 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
971 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 8 },
972 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 8 },
973 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 8 },
977 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232 */
978 { "Moxa Technologies, SmartIO CP104/PCI",
979 { 0x1393, 0x1041, 0, 0 },
980 { 0xffff, 0xffff, 0, 0 },
982 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
983 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 8 },
984 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 8 },
985 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 8 },
989 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232 */
990 { "Moxa Technologies, SmartIO CP104-V2/PCI",
991 { 0x1393, 0x1042, 0, 0 },
992 { 0xffff, 0xffff, 0, 0 },
994 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
995 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 8 },
996 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 8 },
997 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 8 },
1001 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232/422/485 */
1002 { "Moxa Technologies, SmartIO CP-114/PCI",
1003 { 0x1393, 0x1141, 0, 0 },
1004 { 0xffff, 0xffff, 0, 0 },
1006 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
1007 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 8 },
1008 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 8 },
1009 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 8 },
1013 /* Moxa Technologies Co., Ltd. PCI I/O Card 8S RS232 */
1014 { "Moxa Technologies, SmartIO C168H/PCI",
1015 { 0x1393, 0x1680, 0, 0 },
1016 { 0xffff, 0xffff, 0, 0 },
1018 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 8 },
1019 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 8 },
1020 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 8 },
1021 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 8 },
1022 { PUC_PORT_TYPE_COM
, 0x18, 0x20, COM_FREQ
* 8 },
1023 { PUC_PORT_TYPE_COM
, 0x18, 0x28, COM_FREQ
* 8 },
1024 { PUC_PORT_TYPE_COM
, 0x18, 0x30, COM_FREQ
* 8 },
1025 { PUC_PORT_TYPE_COM
, 0x18, 0x38, COM_FREQ
* 8 },
1029 /* NetMos 1P PCI : 1P */
1030 { "NetMos NM9805 1284 Printer port",
1031 { 0x9710, 0x9805, 0, 0 },
1032 { 0xffff, 0xffff, 0, 0 },
1034 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
1038 /* NetMos 2P PCI : 2P */
1039 { "NetMos NM9815 Dual 1284 Printer port",
1040 { 0x9710, 0x9815, 0, 0 },
1041 { 0xffff, 0xffff, 0, 0 },
1043 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
1044 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
1048 /* NetMos 2S PCI NM9835 : 2S */
1049 { "NetMos NM9835 Dual UART",
1050 { 0x9710, 0x9835, 0x1000, 0x0002 },
1051 { 0xffff, 0xffff, 0xffff, 0xffff },
1053 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1054 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1058 /* NetMos 2S1P PCI 16C650 : 2S, 1P */
1059 { "NetMos NM9835 Dual UART and 1284 Printer port",
1060 { 0x9710, 0x9835, 0, 0 },
1061 { 0xffff, 0xffff, 0, 0 },
1063 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1064 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1065 { PUC_PORT_TYPE_LPT
, 0x18, 0x00, 0x00 },
1069 /* NetMos 4S0P PCI NM9845 : 4S, 0P */
1070 { "NetMos NM9845 Quad UART",
1071 { 0x9710, 0x9845, 0x1000, 0x0004 },
1072 { 0xffff, 0xffff, 0xffff, 0xffff },
1074 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1075 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1076 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1077 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
1081 /* NetMos 4S1P PCI NM9845 : 4S, 1P */
1082 { "NetMos NM9845 Quad UART and 1284 Printer port",
1083 { 0x9710, 0x9845, 0x1000, 0x0014 },
1084 { 0xffff, 0xffff, 0xffff, 0xffff },
1086 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1087 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1088 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1089 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
1090 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
1094 /* NetMos 6S PCI 16C650 : 6S, 0P */
1095 { "NetMos NM9845 6 UART",
1096 { 0x9710, 0x9845, 0x1000, 0x0006 },
1097 { 0xffff, 0xffff, 0xffff, 0xffff },
1099 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1100 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1101 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1102 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
1103 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
},
1104 { PUC_PORT_TYPE_COM
, 0x24, 0x00, COM_FREQ
},
1108 /* NetMos 4S1P PCI NM9845 : 4S, 1P */
1109 { "NetMos NM9845 Quad UART and 1284 Printer port (unknown type)",
1110 { 0x9710, 0x9845, 0, 0 },
1111 { 0xffff, 0xffff, 0, 0 },
1113 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1114 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1115 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1116 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
1117 { PUC_PORT_TYPE_LPT
, 0x20, 0x00, 0x00 },
1121 /* NetMos 4S1P PCI NM9855 : 4S, 1P */
1122 { "NetMos NM9855 Quad UART and 1284 Printer port (unknown type)",
1123 { 0x9710, 0x9855, 0x1000, 0x0014 },
1124 { 0xffff, 0xffff, 0xffff, 0xffff },
1126 { PUC_PORT_TYPE_LPT
, 0x10, 0x00, 0x00 },
1127 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1128 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
1129 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
},
1130 { PUC_PORT_TYPE_COM
, 0x24, 0x00, COM_FREQ
},
1135 * This is the Middle Digital, Inc. PCI-Weasel, which
1136 * uses a PCI interface implemented in FPGA.
1138 { "Middle Digital, Inc. Weasel serial port",
1139 { 0xdeaf, 0x9051, 0, 0 },
1140 { 0xffff, 0xffff, 0, 0 },
1142 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1146 /* Avlab Technology, Inc. Low Profile PCI 4 Serial: 4S */
1147 { "Avlab Low Profile PCI 4 Serial",
1148 { 0x14db, 0x2150, 0, 0 },
1149 { 0xffff, 0xffff, 0, 0 },
1151 { PUC_PORT_TYPE_COM
, 0x10, 0x00, COM_FREQ
},
1152 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1153 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1154 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
1159 * Perle PCI-RAS 4 Modem ports
1161 { "Perle Systems PCI-RAS 4 modem ports",
1162 { 0x10b5, 0x9030, 0x155f, 0xf001 },
1163 { 0xffff, 0xffff, 0xffff, 0xffff },
1165 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 4 },
1166 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 4 },
1167 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 4 },
1168 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 4 },
1173 * Perle PCI-RASV92 4 Modem ports
1175 { "Perle Systems PCI-RASV92 4 modem ports",
1176 { 0x10b5, 0x9050, 0x155f, 0xf001 },
1177 { 0xffff, 0xffff, 0xffff, 0xffff },
1179 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 4 },
1180 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 4 },
1181 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 4 },
1182 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 4 },
1187 * Perle PCI-RAS 8 Modem ports
1189 { "Perle Systems PCI-RAS 8 modem ports",
1190 { 0x10b5, 0x9030, 0x155f, 0xf010 },
1191 { 0xffff, 0xffff, 0xffff, 0xffff },
1193 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 4 },
1194 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 4 },
1195 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 4 },
1196 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 4 },
1197 { PUC_PORT_TYPE_COM
, 0x18, 0x20, COM_FREQ
* 4 },
1198 { PUC_PORT_TYPE_COM
, 0x18, 0x28, COM_FREQ
* 4 },
1199 { PUC_PORT_TYPE_COM
, 0x18, 0x30, COM_FREQ
* 4 },
1200 { PUC_PORT_TYPE_COM
, 0x18, 0x38, COM_FREQ
* 4 },
1205 * Perle PCI-RASV92 8 Modem ports
1207 { "Perle Systems PCI-RASV92 8 modem ports",
1208 { 0x10b5, 0x9050, 0x155f, 0xf010 },
1209 { 0xffff, 0xffff, 0xffff, 0xffff },
1211 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 4 },
1212 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 4 },
1213 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 4 },
1214 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 4 },
1215 { PUC_PORT_TYPE_COM
, 0x18, 0x20, COM_FREQ
* 4 },
1216 { PUC_PORT_TYPE_COM
, 0x18, 0x28, COM_FREQ
* 4 },
1217 { PUC_PORT_TYPE_COM
, 0x18, 0x30, COM_FREQ
* 4 },
1218 { PUC_PORT_TYPE_COM
, 0x18, 0x38, COM_FREQ
* 4 },
1223 * Boca Research Turbo Serial 654 (4 serial port) card.
1224 * Appears to be the same as Chase Research PLC PCI-FAST4
1225 * and Perle PCI-FAST4 Multi-Port serial cards.
1227 { "Boca Research Turbo Serial 654",
1228 { 0x10b5, 0x9050, 0x12e0, 0x0031 },
1229 { 0xffff, 0xffff, 0xffff, 0xffff },
1231 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 4 },
1232 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 4 },
1233 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 4 },
1234 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 4 },
1239 * Boca Research Turbo Serial 658 (8 serial port) card.
1240 * Appears to be the same as Chase Research PLC PCI-FAST8
1241 * and Perle PCI-FAST8 Multi-Port serial cards.
1243 { "Boca Research Turbo Serial 658",
1244 { 0x10b5, 0x9050, 0x12e0, 0x0021 },
1245 { 0xffff, 0xffff, 0xffff, 0xffff },
1247 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
* 4 },
1248 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
* 4 },
1249 { PUC_PORT_TYPE_COM
, 0x18, 0x10, COM_FREQ
* 4 },
1250 { PUC_PORT_TYPE_COM
, 0x18, 0x18, COM_FREQ
* 4 },
1251 { PUC_PORT_TYPE_COM
, 0x18, 0x20, COM_FREQ
* 4 },
1252 { PUC_PORT_TYPE_COM
, 0x18, 0x28, COM_FREQ
* 4 },
1253 { PUC_PORT_TYPE_COM
, 0x18, 0x30, COM_FREQ
* 4 },
1254 { PUC_PORT_TYPE_COM
, 0x18, 0x38, COM_FREQ
* 4 },
1259 * Addi-Data APCI-7800 8-port serial card.
1260 * Uses an AMCC chip as PCI bridge.
1262 { "Addi-Data APCI-7800",
1263 { 0x10e8, 0x818e, 0, 0 },
1264 { 0xffff, 0xffff, 0, 0 },
1266 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1267 { PUC_PORT_TYPE_COM
, 0x14, 0x08, COM_FREQ
},
1268 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1269 { PUC_PORT_TYPE_COM
, 0x18, 0x08, COM_FREQ
},
1270 { PUC_PORT_TYPE_COM
, 0x1c, 0x00, COM_FREQ
},
1271 { PUC_PORT_TYPE_COM
, 0x1c, 0x08, COM_FREQ
},
1272 { PUC_PORT_TYPE_COM
, 0x20, 0x00, COM_FREQ
},
1273 { PUC_PORT_TYPE_COM
, 0x20, 0x08, COM_FREQ
},
1278 { 0x13a8, 0x0152, 0, 0 },
1279 { 0xffff, 0xffff, 0, 0 },
1281 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1282 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1286 { 0x13a8, 0x0154, 0, 0 },
1287 { 0xffff, 0xffff, 0, 0 },
1289 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1290 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1291 { PUC_PORT_TYPE_COM
, 0x10, 0x0400, COM_FREQ
* 8 },
1292 { PUC_PORT_TYPE_COM
, 0x10, 0x0600, COM_FREQ
* 8 },
1296 { 0x13a8, 0x0158, 0, 0 },
1297 { 0xffff, 0xffff, 0, 0 },
1299 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1300 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1301 { PUC_PORT_TYPE_COM
, 0x10, 0x0400, COM_FREQ
* 8 },
1302 { PUC_PORT_TYPE_COM
, 0x10, 0x0600, COM_FREQ
* 8 },
1303 { PUC_PORT_TYPE_COM
, 0x10, 0x0800, COM_FREQ
* 8 },
1304 { PUC_PORT_TYPE_COM
, 0x10, 0x0a00, COM_FREQ
* 8 },
1305 { PUC_PORT_TYPE_COM
, 0x10, 0x0c00, COM_FREQ
* 8 },
1306 { PUC_PORT_TYPE_COM
, 0x10, 0x0e00, COM_FREQ
* 8 },
1310 /* I-O DATA RSA-PCI: 2S */
1311 { "I-O DATA RSA-PCI 2-port serial",
1312 { 0x10fc, 0x0007, 0, 0 },
1313 { 0xffff, 0xffff, 0, 0 },
1315 { PUC_PORT_TYPE_COM
, 0x14, 0x00, COM_FREQ
},
1316 { PUC_PORT_TYPE_COM
, 0x18, 0x00, COM_FREQ
},
1320 /* Digi International Digi Neo 4 Serial */
1321 { "Digi International Digi Neo 4 Serial",
1322 { PCI_VENDOR_DIGI
, PCI_PRODUCT_DIGI_NEO4
, 0, 0 },
1323 { 0xffff, 0xffff, 0, 0 },
1325 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1326 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1327 { PUC_PORT_TYPE_COM
, 0x10, 0x0400, COM_FREQ
* 8 },
1328 { PUC_PORT_TYPE_COM
, 0x10, 0x0600, COM_FREQ
* 8 },
1332 /* Digi International Digi Neo 8 Serial */
1333 { "Digi International Digi Neo 8 Serial",
1334 { PCI_VENDOR_DIGI
, PCI_PRODUCT_DIGI_NEO8
, 0, 0 },
1335 { 0xffff, 0xffff, 0, 0 },
1337 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1338 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1339 { PUC_PORT_TYPE_COM
, 0x10, 0x0400, COM_FREQ
* 8 },
1340 { PUC_PORT_TYPE_COM
, 0x10, 0x0600, COM_FREQ
* 8 },
1341 { PUC_PORT_TYPE_COM
, 0x10, 0x0800, COM_FREQ
* 8 },
1342 { PUC_PORT_TYPE_COM
, 0x10, 0x0a00, COM_FREQ
* 8 },
1343 { PUC_PORT_TYPE_COM
, 0x10, 0x0c00, COM_FREQ
* 8 },
1344 { PUC_PORT_TYPE_COM
, 0x10, 0x0e00, COM_FREQ
* 8 },
1349 * B&B Electronics MIPort Serial cards.
1351 { "BBELEC ISOLATED_2_PORT",
1352 { PCI_VENDOR_BBELEC
, PCI_PRODUCT_BBELEC_ISOLATED_2_PORT
, 0, 0 },
1353 { 0xffff, 0xffff, 0, 0 },
1355 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1356 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1359 { "BBELEC ISOLATED_4_PORT",
1360 { PCI_VENDOR_BBELEC
, PCI_PRODUCT_BBELEC_ISOLATED_4_PORT
, 0, 0 },
1361 { 0xffff, 0xffff, 0, 0 },
1363 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1364 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1365 { PUC_PORT_TYPE_COM
, 0x10, 0x0400, COM_FREQ
* 8 },
1366 { PUC_PORT_TYPE_COM
, 0x10, 0x0600, COM_FREQ
* 8 },
1369 { "BBELEC ISOLATED_8_PORT",
1370 { PCI_VENDOR_BBELEC
, PCI_PRODUCT_BBELEC_ISOLATED_8_PORT
, 0, 0 },
1371 { 0xffff, 0xffff, 0, 0 },
1373 { PUC_PORT_TYPE_COM
, 0x10, 0x0000, COM_FREQ
* 8 },
1374 { PUC_PORT_TYPE_COM
, 0x10, 0x0200, COM_FREQ
* 8 },
1375 { PUC_PORT_TYPE_COM
, 0x10, 0x0400, COM_FREQ
* 8 },
1376 { PUC_PORT_TYPE_COM
, 0x10, 0x0600, COM_FREQ
* 8 },
1377 { PUC_PORT_TYPE_COM
, 0x10, 0x0800, COM_FREQ
* 8 },
1378 { PUC_PORT_TYPE_COM
, 0x10, 0x0a00, COM_FREQ
* 8 },
1379 { PUC_PORT_TYPE_COM
, 0x10, 0x0c00, COM_FREQ
* 8 },
1380 { PUC_PORT_TYPE_COM
, 0x10, 0x0e00, COM_FREQ
* 8 },