pucdata.c revision 1.59 1 /* $NetBSD: pucdata.c,v 1.59 2010/01/19 12:11:21 mbalmer Exp $ */
2
3 /*
4 * Copyright (c) 1998, 1999 Christopher G. Demetriou. All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
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
20 *
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.
31 */
32
33 /*
34 * PCI "universal" communications card driver configuration data (used to
35 * match/attach the cards).
36 */
37
38 #include <sys/cdefs.h>
39 __KERNEL_RCSID(0, "$NetBSD: pucdata.c,v 1.59 2010/01/19 12:11:21 mbalmer Exp $");
40
41 #include <sys/param.h>
42 #include <sys/systm.h>
43 #include <sys/device.h>
44
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>
50
51 const struct puc_device_description puc_devices[] = {
52 /*
53 * SUNIX 40XX series of serial/parallel combo cards.
54 * Tested with 4055A and 4065A.
55 */
56 { "SUNIX 400X 1P",
57 { 0x1409, 0x7168, 0x1409, 0x4000 },
58 { 0xffff, 0xffff, 0xffff, 0xeff0 },
59 {
60 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
61 },
62 },
63
64 { "SUNIX 401X 2P",
65 { 0x1409, 0x7168, 0x1409, 0x4010 },
66 { 0xffff, 0xffff, 0xffff, 0xeff0 },
67 {
68 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
69 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
70 },
71 },
72
73 { "SUNIX 402X 1S",
74 { 0x1409, 0x7168, 0x1409, 0x4020 },
75 { 0xffff, 0xffff, 0xffff, 0xeff0 },
76 {
77 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
78 },
79 },
80
81 { "SUNIX 403X 2S",
82 { 0x1409, 0x7168, 0x1409, 0x4030 },
83 { 0xffff, 0xffff, 0xffff, 0xeff0 },
84 {
85 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
86 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
87 },
88 },
89
90 { "SUNIX 405X 4S",
91 { 0x1409, 0x7168, 0x1409, 0x4050 },
92 { 0xffff, 0xffff, 0xffff, 0xeff0 },
93 {
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},
98 },
99 },
100
101 { "SUNIX 406X 8S",
102 { 0x1409, 0x7168, 0x1409, 0x4060 },
103 { 0xffff, 0xffff, 0xffff, 0xeff0 },
104 {
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},
113 },
114 },
115
116 { "SUNIX 407X 2S/1P",
117 { 0x1409, 0x7168, 0x1409, 0x4070 },
118 { 0xffff, 0xffff, 0xffff, 0xeff0 },
119 {
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 },
123 },
124 },
125
126 { "SUNIX 408X 2S/2P",
127 { 0x1409, 0x7168, 0x1409, 0x4080 },
128 { 0xffff, 0xffff, 0xffff, 0xeff0 },
129 {
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 },
134 },
135 },
136
137 { "SUNIX 409X 4S/2P",
138 { 0x1409, 0x7168, 0x1409, 0x4090 },
139 { 0xffff, 0xffff, 0xffff, 0xeff0 },
140 {
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 },
147 },
148 },
149
150 /*
151 * XXX no entry because I have no data:
152 * XXX Dolphin Peripherals 4006 (single parallel)
153 */
154
155 /*
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.
160 */
161 { "Dolphin Peripherals 4014",
162 { 0x10b5, 0x9050, 0xd84d, 0x6810 },
163 { 0xffff, 0xffff, 0xffff, 0xffff },
164 {
165 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
166 { PUC_PORT_TYPE_LPT, 0x24, 0x00, 0x00 },
167 },
168 },
169
170 /*
171 * XXX Dolphin Peripherals 4025 (single serial)
172 * (clashes with Dolphin Peripherals 4036 (2s variant)
173 */
174
175 /*
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.
180 */
181 { "Dolphin Peripherals 4035",
182 { 0x10b5, 0x9050, 0xd84d, 0x6808 },
183 { 0xffff, 0xffff, 0xffff, 0xffff },
184 {
185 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
186 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
187 },
188 },
189
190 /*
191 * Dolphin Peripherals 4036 (dual serial port) card.
192 * (Dolpin 4025 has the same ID but only one port)
193 */
194 { "Dolphin Peripherals 4036",
195 { 0x1409, 0x7168, 0x0, 0x0 },
196 { 0xffff, 0xffff, 0x0, 0x0 },
197 {
198 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
199 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
200 },
201 },
202
203 /*
204 * XXX no entry because I have no data:
205 * XXX Dolphin Peripherals 4078 (dual serial and single parallel)
206 */
207
208 /* IBM SurePOS 300 Series (481033H) serial ports */
209 { "IBM SurePOS 300 Series (481033H)",
210 { PCI_VENDOR_IBM, PCI_PRODUCT_IBM_4810_SCC, 0, 0 },
211 { 0xffff, 0xfff, 0, 0 },
212 {
213 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, /* Port C */
214 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ }, /* Port D */
215 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, /* Port E */
216 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ }, /* Port F */
217 },
218 },
219
220 /*
221 * SIIG Boards.
222 *
223 * SIIG provides documentation for their boards at:
224 * <URL:http://www.siig.com/driver.htm>
225 *
226 * Please excuse the weird ordering, it's the order they
227 * use in their documentation.
228 */
229
230 /*
231 * SIIG "10x" family boards.
232 */
233
234 /* SIIG Cyber Serial PCI 16C550 (10x family): 1S */
235 { "SIIG Cyber Serial PCI 16C550 (10x family)",
236 { 0x131f, 0x1000, 0, 0 },
237 { 0xffff, 0xffff, 0, 0 },
238 {
239 { PUC_PORT_TYPE_COM, 0x18, 0x00,
240 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR1 },
241 },
242 },
243
244 /* SIIG Cyber Serial PCI 16C650 (10x family): 1S */
245 { "SIIG Cyber Serial PCI 16C650 (10x family)",
246 { 0x131f, 0x1001, 0, 0 },
247 { 0xffff, 0xffff, 0, 0 },
248 {
249 { PUC_PORT_TYPE_COM, 0x18, 0x00,
250 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR1 },
251 },
252 },
253
254 /* SIIG Cyber Serial PCI 16C850 (10x family): 1S */
255 { "SIIG Cyber Serial PCI 16C850 (10x family)",
256 { 0x131f, 0x1002, 0, 0 },
257 { 0xffff, 0xffff, 0, 0 },
258 {
259 { PUC_PORT_TYPE_COM, 0x18, 0x00,
260 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR1 },
261 },
262 },
263
264 /* SIIG Cyber I/O PCI 16C550 (10x family): 1S, 1P */
265 { "SIIG Cyber I/O PCI 16C550 (10x family)",
266 { 0x131f, 0x1010, 0, 0 },
267 { 0xffff, 0xffff, 0, 0 },
268 {
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 },
272 },
273 },
274
275 /* SIIG Cyber I/O PCI 16C650 (10x family): 1S, 1P */
276 { "SIIG Cyber I/O PCI 16C650 (10x family)",
277 { 0x131f, 0x1011, 0, 0 },
278 { 0xffff, 0xffff, 0, 0 },
279 {
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 },
283 },
284 },
285
286 /* SIIG Cyber I/O PCI 16C850 (10x family): 1S, 1P */
287 { "SIIG Cyber I/O PCI 16C850 (10x family)",
288 { 0x131f, 0x1012, 0, 0 },
289 { 0xffff, 0xffff, 0, 0 },
290 {
291 { PUC_PORT_TYPE_COM, 0x18, 0x00,
292 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR0 },
293 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
294 },
295 },
296
297 /* SIIG Cyber Parallel PCI (10x family): 1P */
298 { "SIIG Cyber Parallel PCI (10x family)",
299 { 0x131f, 0x1020, 0, 0 },
300 { 0xffff, 0xffff, 0, 0 },
301 {
302 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
303 },
304 },
305
306 /* SIIG Cyber Parallel Dual PCI (10x family): 2P */
307 { "SIIG Cyber Parallel Dual PCI (10x family)",
308 { 0x131f, 0x1021, 0, 0 },
309 { 0xffff, 0xffff, 0, 0 },
310 {
311 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
312 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
313 },
314 },
315
316 /* SIIG Cyber Serial Dual PCI 16C550 (10x family): 2S */
317 { "SIIG Cyber Serial Dual PCI 16C550 (10x family)",
318 { 0x131f, 0x1030, 0, 0 },
319 { 0xffff, 0xffff, 0, 0 },
320 {
321 { PUC_PORT_TYPE_COM, 0x18, 0x00,
322 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR2 },
323 { PUC_PORT_TYPE_COM, 0x1c, 0x00,
324 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR3 },
325 },
326 },
327
328 /* SIIG Cyber Serial Dual PCI 16C650 (10x family): 2S */
329 { "SIIG Cyber Serial Dual PCI 16C650 (10x family)",
330 { 0x131f, 0x1031, 0, 0 },
331 { 0xffff, 0xffff, 0, 0 },
332 {
333 { PUC_PORT_TYPE_COM, 0x18, 0x00,
334 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR2 },
335 { PUC_PORT_TYPE_COM, 0x1c, 0x00,
336 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR3 },
337 },
338 },
339
340 /* SIIG Cyber Serial Dual PCI 16C850 (10x family): 2S */
341 { "SIIG Cyber Serial Dual PCI 16C850 (10x family)",
342 { 0x131f, 0x1032, 0, 0 },
343 { 0xffff, 0xffff, 0, 0 },
344 {
345 { PUC_PORT_TYPE_COM, 0x18, 0x00,
346 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR2 },
347 { PUC_PORT_TYPE_COM, 0x1c, 0x00,
348 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR3 },
349 },
350 },
351
352 /* SIIG Cyber 2S1P PCI 16C550 (10x family): 2S, 1P */
353 { "SIIG Cyber 2S1P PCI 16C550 (10x family)",
354 { 0x131f, 0x1034, 0, 0 }, /* XXX really? */
355 { 0xffff, 0xffff, 0, 0 },
356 {
357 { PUC_PORT_TYPE_COM, 0x18, 0x00,
358 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR2 },
359 { PUC_PORT_TYPE_COM, 0x1c, 0x00,
360 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR3 },
361 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
362 },
363 },
364
365 /* SIIG Cyber 2S1P PCI 16C650 (10x family): 2S, 1P */
366 { "SIIG Cyber 2S1P PCI 16C650 (10x family)",
367 { 0x131f, 0x1035, 0, 0 }, /* XXX really? */
368 { 0xffff, 0xffff, 0, 0 },
369 {
370 { PUC_PORT_TYPE_COM, 0x18, 0x00,
371 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR2 },
372 { PUC_PORT_TYPE_COM, 0x1c, 0x00,
373 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR3 },
374 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
375 },
376 },
377
378 /* SIIG Cyber 2S1P PCI 16C850 (10x family): 2S, 1P */
379 { "SIIG Cyber 2S1P PCI 16C850 (10x family)",
380 { 0x131f, 0x1036, 0, 0 }, /* XXX really? */
381 { 0xffff, 0xffff, 0, 0 },
382 {
383 { PUC_PORT_TYPE_COM, 0x18, 0x00,
384 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR2 },
385 { PUC_PORT_TYPE_COM, 0x1c, 0x00,
386 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR3 },
387 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
388 },
389 },
390
391 /* SIIG Cyber 4S PCI 16C550 (10x family): 4S */
392 { "SIIG Cyber 4S PCI 16C550 (10x family)",
393 { 0x131f, 0x1050, 0, 0 },
394 { 0xffff, 0xffff, 0, 0 },
395 {
396 { PUC_PORT_TYPE_COM, 0x18, 0x00,
397 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR0 },
398 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
399 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
400 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ * 8 },
401 },
402 },
403
404 /* SIIG Cyber 4S PCI 16C650 (10x family): 4S */
405 { "SIIG Cyber 4S PCI 16C650 (10x family)",
406 { 0x131f, 0x1051, 0, 0 },
407 { 0xffff, 0xffff, 0, 0 },
408 {
409 { PUC_PORT_TYPE_COM, 0x18, 0x00,
410 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR0 },
411 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
412 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
413 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ * 8 },
414 },
415 },
416
417 /* SIIG Cyber 4S PCI 16C850 (10x family): 4S */
418 { "SIIG Cyber 4S PCI 16C850 (10x family)",
419 { 0x131f, 0x1052, 0, 0 },
420 { 0xffff, 0xffff, 0, 0 },
421 {
422 { PUC_PORT_TYPE_COM, 0x18, 0x00,
423 (COM_FREQ * 8)|PUC_COM_SIIG10x|PUC_PORT_USR0 },
424 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
425 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
426 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ * 8 },
427 },
428 },
429
430 /*
431 * SIIG "20x" family boards.
432 */
433
434 /* SIIG Cyber Parallel PCI (20x family): 1P */
435 { "SIIG Cyber Parallel PCI (20x family)",
436 { 0x131f, 0x2020, 0, 0 },
437 { 0xffff, 0xffff, 0, 0 },
438 {
439 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
440 },
441 },
442
443 /* SIIG Cyber Parallel Dual PCI (20x family): 2P */
444 { "SIIG Cyber Parallel Dual PCI (20x family)",
445 { 0x131f, 0x2021, 0, 0 },
446 { 0xffff, 0xffff, 0, 0 },
447 {
448 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
449 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
450 },
451 },
452
453 /* SIIG Cyber 2P1S PCI 16C550 (20x family): 1S, 2P */
454 { "SIIG Cyber 2P1S PCI 16C550 (20x family)",
455 { 0x131f, 0x2040, 0, 0 },
456 { 0xffff, 0xffff, 0, 0 },
457 {
458 { PUC_PORT_TYPE_COM, 0x10, 0x00,
459 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
460 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
461 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
462 },
463 },
464
465 /* SIIG Cyber 2P1S PCI 16C650 (20x family): 1S, 2P */
466 { "SIIG Cyber 2P1S PCI 16C650 (20x family)",
467 { 0x131f, 0x2041, 0, 0 },
468 { 0xffff, 0xffff, 0, 0 },
469 {
470 { PUC_PORT_TYPE_COM, 0x10, 0x00,
471 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
472 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
473 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
474 },
475 },
476
477 /* SIIG Cyber 2P1S PCI 16C850 (20x family): 1S, 2P */
478 { "SIIG Cyber 2P1S PCI 16C850 (20x family)",
479 { 0x131f, 0x2042, 0, 0 },
480 { 0xffff, 0xffff, 0, 0 },
481 {
482 { PUC_PORT_TYPE_COM, 0x10, 0x00,
483 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
484 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
485 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
486 },
487 },
488
489 /* SIIG Cyber Serial PCI 16C550 (20x family): 1S */
490 { "SIIG Cyber Serial PCI 16C550 (20x family)",
491 { 0x131f, 0x2000, 0, 0 },
492 { 0xffff, 0xffff, 0, 0 },
493 {
494 { PUC_PORT_TYPE_COM, 0x10, 0x00,
495 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
496 },
497 },
498
499 /* SIIG Cyber Serial PCI 16C650 (20x family): 1S */
500 { "SIIG Cyber Serial PCI 16C650 (20x family)",
501 { 0x131f, 0x2001, 0, 0 },
502 { 0xffff, 0xffff, 0, 0 },
503 {
504 { PUC_PORT_TYPE_COM, 0x10, 0x00,
505 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
506 },
507 },
508
509 /* SIIG Cyber Serial PCI 16C850 (20x family): 1S */
510 { "SIIG Cyber Serial PCI 16C850 (20x family)",
511 { 0x131f, 0x2002, 0, 0 },
512 { 0xffff, 0xffff, 0, 0 },
513 {
514 { PUC_PORT_TYPE_COM, 0x10, 0x00,
515 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
516 },
517 },
518
519 /* SIIG Cyber I/O PCI 16C550 (20x family): 1S, 1P */
520 { "SIIG Cyber I/O PCI 16C550 (20x family)",
521 { 0x131f, 0x2010, 0, 0 },
522 { 0xffff, 0xffff, 0, 0 },
523 {
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 },
527 },
528 },
529
530 /* SIIG Cyber I/O PCI 16C650 (20x family): 1S, 1P */
531 { "SIIG Cyber I/O PCI 16C650 (20x family)",
532 { 0x131f, 0x2011, 0, 0 },
533 { 0xffff, 0xffff, 0, 0 },
534 {
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 },
538 },
539 },
540
541 /* SIIG Cyber I/O PCI 16C850 (20x family): 1S, 1P */
542 { "SIIG Cyber I/O PCI 16C850 (20x family)",
543 { 0x131f, 0x2012, 0, 0 },
544 { 0xffff, 0xffff, 0, 0 },
545 {
546 { PUC_PORT_TYPE_COM, 0x10, 0x00,
547 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
548 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
549 },
550 },
551
552 /* SIIG Cyber Serial Dual PCI 16C550 (20x family): 2S */
553 { "SIIG Cyber Serial Dual PCI 16C550 (20x family)",
554 { 0x131f, 0x2030, 0, 0 },
555 { 0xffff, 0xffff, 0, 0 },
556 {
557 { PUC_PORT_TYPE_COM, 0x10, 0x00,
558 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
559 { PUC_PORT_TYPE_COM, 0x14, 0x00,
560 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR1 },
561 },
562 },
563
564 /* SIIG Cyber Serial Dual PCI 16C650 (20x family): 2S */
565 { "SIIG Cyber Serial Dual PCI 16C650 (20x family)",
566 { 0x131f, 0x2031, 0, 0 },
567 { 0xffff, 0xffff, 0, 0 },
568 {
569 { PUC_PORT_TYPE_COM, 0x10, 0x00,
570 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
571 { PUC_PORT_TYPE_COM, 0x14, 0x00,
572 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR1 },
573 },
574 },
575
576 /* SIIG Cyber Serial Dual PCI 16C850 (20x family): 2S */
577 { "SIIG Cyber Serial Dual PCI 16C850 (20x family)",
578 { 0x131f, 0x2032, 0, 0 },
579 { 0xffff, 0xffff, 0, 0 },
580 {
581 { PUC_PORT_TYPE_COM, 0x10, 0x00,
582 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
583 { PUC_PORT_TYPE_COM, 0x14, 0x00,
584 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR1 },
585 },
586 },
587
588 /* SIIG Cyber 2S1P PCI 16C550 (20x family): 2S, 1P */
589 { "SIIG Cyber 2S1P PCI 16C550 (20x family)",
590 { 0x131f, 0x2060, 0, 0 },
591 { 0xffff, 0xffff, 0, 0 },
592 {
593 { PUC_PORT_TYPE_COM, 0x10, 0x00,
594 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
595 { PUC_PORT_TYPE_COM, 0x14, 0x00,
596 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR1 },
597 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
598 },
599 },
600
601 /* SIIG Cyber 2S1P PCI 16C650 (20x family): 2S, 1P */
602 { "SIIG Cyber 2S1P PCI 16C650 (20x family)",
603 { 0x131f, 0x2061, 0, 0 },
604 { 0xffff, 0xffff, 0, 0 },
605 {
606 { PUC_PORT_TYPE_COM, 0x10, 0x00,
607 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
608 { PUC_PORT_TYPE_COM, 0x14, 0x00,
609 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR1 },
610 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
611 },
612 },
613
614 /* SIIG Cyber 2S1P PCI 16C850 (20x family): 2S, 1P */
615 { "SIIG Cyber 2S1P PCI 16C850 (20x family)",
616 { 0x131f, 0x2062, 0, 0 },
617 { 0xffff, 0xffff, 0, 0 },
618 {
619 { PUC_PORT_TYPE_COM, 0x10, 0x00,
620 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
621 { PUC_PORT_TYPE_COM, 0x14, 0x00,
622 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR1 },
623 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
624 },
625 },
626
627 /* SIIG Cyber 4S PCI 16C550 (20x family): 4S */
628 { "SIIG Cyber 4S PCI 16C550 (20x family)",
629 { 0x131f, 0x2050, 0, 0 },
630 { 0xffff, 0xffff, 0, 0 },
631 {
632 { PUC_PORT_TYPE_COM, 0x10, 0x00,
633 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
634 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
635 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
636 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
637 },
638 },
639
640 /* SIIG Cyber 4S PCI 16C650 (20x family): 4S */
641 { "SIIG Cyber 4S PCI 16C650 (20x family)",
642 { 0x131f, 0x2051, 0, 0 },
643 { 0xffff, 0xffff, 0, 0 },
644 {
645 { PUC_PORT_TYPE_COM, 0x10, 0x00,
646 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
647 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
648 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
649 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
650 },
651 },
652
653 /* SIIG Cyber 4S PCI 16C850 (20x family): 4S */
654 { "SIIG Cyber 4S PCI 16C850 (20x family)",
655 { 0x131f, 0x2052, 0, 0 },
656 { 0xffff, 0xffff, 0, 0 },
657 {
658 { PUC_PORT_TYPE_COM, 0x10, 0x00,
659 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
660 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
661 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
662 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
663 },
664 },
665
666 /* SIIG PS8000 PCI 8S 16C550 (20x family): 8S - 16 Byte FIFOs */
667 { "SIIG PS8000 PCI 8S 16C550 (20x family)",
668 { 0x131f, 0x2080, 0, 0 },
669 { 0xffff, 0xffff, 0, 0 },
670 {
671 { PUC_PORT_TYPE_COM, 0x10, 0x00,
672 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
673 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
674 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
675 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
676 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
677 { PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
678 { PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
679 { PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
680 },
681 },
682
683 /* SIIG PS8000 PCI 8S 16C650 (20x family): 8S - 32 Byte FIFOs */
684 { "SIIG PS8000 PCI 8S 16C650 (20x family)",
685 { 0x131f, 0x2081, 0, 0 },
686 { 0xffff, 0xffff, 0, 0 },
687 {
688 { PUC_PORT_TYPE_COM, 0x10, 0x00,
689 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
690 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
691 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
692 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
693 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
694 { PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
695 { PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
696 { PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
697 },
698 },
699
700 /* SIIG PS8000 PCI 8S 16C850 (20x family): 8S - 128 Byte FIFOs */
701 { "SIIG PS8000 PCI 8S 16C850 (20x family)",
702 { 0x131f, 0x2082, 0, 0 },
703 { 0xffff, 0xffff, 0, 0 },
704 {
705 { PUC_PORT_TYPE_COM, 0x10, 0x00,
706 (COM_FREQ * 8)|PUC_COM_SIIG20x|PUC_PORT_USR0 },
707 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
708 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
709 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
710 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
711 { PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
712 { PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
713 { PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
714 },
715 },
716 /* VScom PCI-200: 2S */
717 { "VScom PCI-200",
718 { 0x10b5, 0x1103, 0x10b5, 0x1103 },
719 { 0xffff, 0xffff, 0xffff, 0xffff },
720 {
721 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
722 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 8 },
723 },
724 },
725
726 /* VScom PCI-400: 4S */
727 { "VScom PCI-400",
728 { 0x10b5, 0x1077, 0x10b5, 0x1077 },
729 { 0xffff, 0xffff, 0xffff, 0xffff },
730 {
731 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
732 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
733 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
734 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
735 },
736 },
737
738 /* VScom PCI-800: 8S */
739 { "VScom PCI-800",
740 { 0x10b5, 0x1076, 0x10b5, 0x1076 },
741 { 0xffff, 0xffff, 0xffff, 0xffff },
742 {
743 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
744 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
745 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
746 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
747 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 8 },
748 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 8 },
749 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 8 },
750 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 8 },
751 },
752 },
753
754 { "Titan PCI-010HV2",
755 { 0x14d2, 0xe001, 0, 0 },
756 { 0xffff, 0xffff, 0, 0 },
757 {
758 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
759 },
760 },
761 { "Titan PCI-200HV2",
762 { 0x14d2, 0xe020, 0, 0 },
763 { 0xffff, 0xffff, 0, 0 },
764 {
765 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
766 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
767 },
768 },
769
770 /*
771 * VScom PCI-800H. Uses 8 16950 UART, behind a PCI chips that offers
772 * 4 com port on PCI device 0 and 4 on PCI device 1. PCI device 0 has
773 * device ID 3 and PCI device 1 device ID 4.
774 */
775 { "Titan PCI-800H",
776 { 0x14d2, 0xa003, 0, 0 },
777 { 0xffff, 0xffff, 0, 0 },
778 {
779 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
780 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
781 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
782 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
783 },
784 },
785 { "Titan PCI-800H",
786 { 0x14d2, 0xa004, 0, 0 },
787 { 0xffff, 0xffff, 0, 0 },
788 {
789 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
790 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
791 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
792 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
793 },
794 },
795 { "Titan PCI-200H",
796 { 0x14d2, 0xa005, 0, 0 },
797 { 0xffff, 0xffff, 0, 0 },
798 {
799 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
800 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
801 },
802 },
803 { "Titan PCI-800L",
804 { 0x14d2, 0x8080, 0, 0 },
805 { 0xffff, 0xffff, 0, 0 },
806 {
807 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
808 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
809 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
810 { PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
811 { PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
812 { PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
813 { PUC_PORT_TYPE_COM, 0x20, 0x20, COM_FREQ * 8 },
814 { PUC_PORT_TYPE_COM, 0x20, 0x28, COM_FREQ * 8 },
815 },
816 },
817 /* NEC PK-UG-X001 K56flex PCI Modem card.
818 NEC MARTH bridge chip and Rockwell RCVDL56ACF/SP using. */
819 { "NEC PK-UG-X001 K56flex PCI Modem",
820 { 0x1033, 0x0074, 0x1033, 0x8014 },
821 { 0xffff, 0xffff, 0xffff, 0xffff },
822 {
823 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
824 },
825 },
826
827 /* NEC PK-UG-X008 */
828 { "NEC PK-UG-X008",
829 { 0x1033, 0x007d, 0x1033, 0x8012 },
830 { 0xffff, 0xffff, 0xffff, 0xffff },
831 {
832 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ},
833 },
834 },
835
836 /* Lava Computers 2SP-PCI */
837 { "Lava Computers 2SP-PCI parallel port",
838 { 0x1407, 0x8000, 0, 0 },
839 { 0xffff, 0xffff, 0, 0 },
840 {
841 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
842 },
843 },
844
845 /* Lava Computers 2SP-PCI and Quattro-PCI serial ports */
846 { "Lava Computers dual serial port",
847 { 0x1407, 0x0100, 0, 0 },
848 { 0xffff, 0xfffc, 0, 0 },
849 {
850 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
851 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
852 },
853 },
854
855 /* Lava Computers DSerial PCI serial ports */
856 { "Lava Computers serial port",
857 { 0x1407, 0x0110, 0, 0 },
858 { 0xffff, 0xfffc, 0, 0 },
859 {
860 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
861 },
862 },
863
864 /* Lava Computers Quattro-PCI serial ports */
865 { "Lava Quattro-PCI 4-port serial",
866 { 0x1407, 0x0120, 0, 0 },
867 { 0xffff, 0xfffc, 0, 0 },
868 {
869 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
870 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
871 },
872 },
873
874 /* Lava Computers Octopus-550 serial ports */
875 { "Lava Computers Octopus-550 8-port serial",
876 { 0x1407, 0x0180, 0, 0 },
877 { 0xffff, 0xfffc, 0, 0 },
878 {
879 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
880 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
881 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
882 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
883 },
884 },
885
886 /* US Robotics (3Com) PCI Modems */
887 { "US Robotics (3Com) 3CP5609 PCI 16550 Modem",
888 { 0x12b9, 0x1008, 0, 0 },
889 { 0xffff, 0xffff, 0, 0 },
890 {
891 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
892 },
893 },
894
895 /* Actiontec 56K PCI Master */
896 { "Actiontec 56K PCI Master",
897 { 0x11c1, 0x0480, 0x0, 0x0 },
898 { 0xffff, 0xffff, 0x0, 0x0 },
899 {
900 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
901 },
902 },
903
904 /*
905 * Boards with an Oxford Semiconductor chip.
906 *
907 * Oxford Semiconductor provides documentation for their chip at:
908 * <URL:http://www.plxtech.com/products/uart>
909 *
910 * As sold by Kouwell <URL:http://www.kouwell.com/>.
911 * I/O Flex PCI I/O Card Model-223 with 4 serial and 1 parallel ports.
912 */
913
914 /* Oxford Semiconductor OXmPCI952 PCI UARTs */
915 { "Oxford Semiconductor OXmPCI952 UARTs",
916 { 0x1415, 0x950a, 0, 0 },
917 { 0xffff, 0xffff, 0, 0 },
918 {
919 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 },
920 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 10 },
921 },
922 },
923
924 /* Oxford Semiconductor OX16PCI952 PCI `950 UARTs - 128 byte FIFOs */
925 { "Oxford Semiconductor OX16PCI952 UARTs",
926 { 0x1415, 0x9521, 0, 0 },
927 { 0xffff, 0xffff, 0, 0 },
928 {
929 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
930 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
931 },
932 },
933
934 /* Oxford Semiconductor OX16PCI952 PCI Parallel port */
935 { "Oxford Semiconductor OX16PCI952 Parallel port",
936 { 0x1415, 0x9523, 0, 0 },
937 { 0xffff, 0xffff, 0, 0 },
938 {
939 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
940 },
941 },
942
943 /* OEM of Oxford Semiconductor PCI UARTs? */
944 { "Avlab LP PCI 4S Quartet",
945 { 0x1415, 0x9501, 0x14db, 0x2150 },
946 { 0xffff, 0xffff, 0xffff, 0xffff },
947 {
948 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 },
949 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 10 },
950 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 10 },
951 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 10 },
952 },
953 },
954
955 /* Oxford Semiconductor OX16PCI954 PCI UARTs */
956 { "Oxford Semiconductor OX16PCI954 UARTs",
957 { 0x1415, 0x9501, 0, 0 },
958 { 0xffff, 0xffff, 0, 0 },
959 {
960 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
961 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
962 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
963 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
964 },
965 },
966
967 /* Oxford Semiconductor OX16PCI954 PCI Parallel port */
968 { "Oxford Semiconductor OX16PCI954 Parallel port",
969 { 0x1415, 0x9513, 0, 0 },
970 { 0xffff, 0xffff, 0, 0 },
971 {
972 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
973 },
974 },
975
976 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232/422/485 */
977 { "Moxa Technologies, SmartIO C104H/PCI",
978 { 0x1393, 0x1040, 0, 0 },
979 { 0xffff, 0xffff, 0, 0 },
980 {
981 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
982 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
983 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
984 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
985 },
986 },
987
988 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232 */
989 { "Moxa Technologies, SmartIO CP104/PCI",
990 { 0x1393, 0x1041, 0, 0 },
991 { 0xffff, 0xffff, 0, 0 },
992 {
993 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
994 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
995 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
996 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
997 },
998 },
999
1000 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232 */
1001 { "Moxa Technologies, SmartIO CP104-V2/PCI",
1002 { 0x1393, 0x1042, 0, 0 },
1003 { 0xffff, 0xffff, 0, 0 },
1004 {
1005 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
1006 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
1007 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
1008 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
1009 },
1010 },
1011
1012 /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232/422/485 */
1013 { "Moxa Technologies, SmartIO CP-114/PCI",
1014 { 0x1393, 0x1141, 0, 0 },
1015 { 0xffff, 0xffff, 0, 0 },
1016 {
1017 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
1018 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
1019 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
1020 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
1021 },
1022 },
1023
1024 /* Moxa Technologies Co., Ltd. PCI I/O Card 8S RS232 */
1025 { "Moxa Technologies, SmartIO C168H/PCI",
1026 { 0x1393, 0x1680, 0, 0 },
1027 { 0xffff, 0xffff, 0, 0 },
1028 {
1029 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
1030 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
1031 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
1032 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
1033 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 8 },
1034 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 8 },
1035 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 8 },
1036 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 8 },
1037 },
1038 },
1039
1040 /* NetMos 1P PCI : 1P */
1041 { "NetMos NM9805 1284 Printer port",
1042 { 0x9710, 0x9805, 0, 0 },
1043 { 0xffff, 0xffff, 0, 0 },
1044 {
1045 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
1046 },
1047 },
1048
1049 /* NetMos 2P PCI : 2P */
1050 { "NetMos NM9815 Dual 1284 Printer port",
1051 { 0x9710, 0x9815, 0, 0 },
1052 { 0xffff, 0xffff, 0, 0 },
1053 {
1054 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
1055 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
1056 },
1057 },
1058
1059 /* NetMos 2S PCI NM9835 : 2S */
1060 { "NetMos NM9835 Dual UART",
1061 { 0x9710, 0x9835, 0x1000, 0x0002 },
1062 { 0xffff, 0xffff, 0xffff, 0xffff },
1063 {
1064 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1065 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1066 },
1067 },
1068
1069 /* NetMos 2S1P PCI 16C650 : 2S, 1P */
1070 { "NetMos NM9835 Dual UART and 1284 Printer port",
1071 { 0x9710, 0x9835, 0, 0 },
1072 { 0xffff, 0xffff, 0, 0 },
1073 {
1074 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1075 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1076 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
1077 },
1078 },
1079
1080 /* NetMos 4S0P PCI NM9845 : 4S, 0P */
1081 { "NetMos NM9845 Quad UART",
1082 { 0x9710, 0x9845, 0x1000, 0x0004 },
1083 { 0xffff, 0xffff, 0xffff, 0xffff },
1084 {
1085 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1086 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1087 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1088 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
1089 },
1090 },
1091
1092 /* NetMos 4S1P PCI NM9845 : 4S, 1P */
1093 { "NetMos NM9845 Quad UART and 1284 Printer port",
1094 { 0x9710, 0x9845, 0x1000, 0x0014 },
1095 { 0xffff, 0xffff, 0xffff, 0xffff },
1096 {
1097 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1098 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1099 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1100 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
1101 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
1102 },
1103 },
1104
1105 /* NetMos 6S PCI 16C650 : 6S, 0P */
1106 { "NetMos NM9845 6 UART",
1107 { 0x9710, 0x9845, 0x1000, 0x0006 },
1108 { 0xffff, 0xffff, 0xffff, 0xffff },
1109 {
1110 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1111 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1112 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1113 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
1114 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
1115 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
1116 },
1117 },
1118
1119 /* NetMos 4S1P PCI NM9845 : 4S, 1P */
1120 { "NetMos NM9845 Quad UART and 1284 Printer port (unknown type)",
1121 { 0x9710, 0x9845, 0, 0 },
1122 { 0xffff, 0xffff, 0, 0 },
1123 {
1124 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1125 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1126 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1127 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
1128 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
1129 },
1130 },
1131
1132 /* NetMos 4S1P PCI NM9855 : 4S, 1P */
1133 { "NetMos NM9855 Quad UART and 1284 Printer port (unknown type)",
1134 { 0x9710, 0x9855, 0x1000, 0x0014 },
1135 { 0xffff, 0xffff, 0xffff, 0xffff },
1136 {
1137 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
1138 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1139 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
1140 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
1141 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
1142 },
1143 },
1144
1145 /*
1146 * This is the Middle Digital, Inc. PCI-Weasel, which
1147 * uses a PCI interface implemented in FPGA.
1148 */
1149 { "Middle Digital, Inc. Weasel serial port",
1150 { 0xdeaf, 0x9051, 0, 0 },
1151 { 0xffff, 0xffff, 0, 0 },
1152 {
1153 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1154 },
1155 },
1156
1157 /* Avlab Technology, Inc. Low Profile PCI 4 Serial: 4S */
1158 { "Avlab Low Profile PCI 4 Serial",
1159 { 0x14db, 0x2150, 0, 0 },
1160 { 0xffff, 0xffff, 0, 0 },
1161 {
1162 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
1163 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1164 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1165 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
1166 },
1167 },
1168
1169 /*
1170 * Perle PCI-RAS 4 Modem ports
1171 */
1172 { "Perle Systems PCI-RAS 4 modem ports",
1173 { 0x10b5, 0x9030, 0x155f, 0xf001 },
1174 { 0xffff, 0xffff, 0xffff, 0xffff },
1175 {
1176 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
1177 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
1178 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
1179 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
1180 },
1181 },
1182
1183 /*
1184 * Perle PCI-RASV92 4 Modem ports
1185 */
1186 { "Perle Systems PCI-RASV92 4 modem ports",
1187 { 0x10b5, 0x9050, 0x155f, 0xf001 },
1188 { 0xffff, 0xffff, 0xffff, 0xffff },
1189 {
1190 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
1191 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
1192 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
1193 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
1194 },
1195 },
1196
1197 /*
1198 * Perle PCI-RAS 8 Modem ports
1199 */
1200 { "Perle Systems PCI-RAS 8 modem ports",
1201 { 0x10b5, 0x9030, 0x155f, 0xf010 },
1202 { 0xffff, 0xffff, 0xffff, 0xffff },
1203 {
1204 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
1205 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
1206 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
1207 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
1208 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 4 },
1209 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 4 },
1210 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 4 },
1211 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 4 },
1212 },
1213 },
1214
1215 /*
1216 * Perle PCI-RASV92 8 Modem ports
1217 */
1218 { "Perle Systems PCI-RASV92 8 modem ports",
1219 { 0x10b5, 0x9050, 0x155f, 0xf010 },
1220 { 0xffff, 0xffff, 0xffff, 0xffff },
1221 {
1222 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
1223 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
1224 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
1225 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
1226 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 4 },
1227 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 4 },
1228 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 4 },
1229 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 4 },
1230 },
1231 },
1232
1233 /*
1234 * Boca Research Turbo Serial 654 (4 serial port) card.
1235 * Appears to be the same as Chase Research PLC PCI-FAST4
1236 * and Perle PCI-FAST4 Multi-Port serial cards.
1237 */
1238 { "Boca Research Turbo Serial 654",
1239 { 0x10b5, 0x9050, 0x12e0, 0x0031 },
1240 { 0xffff, 0xffff, 0xffff, 0xffff },
1241 {
1242 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
1243 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
1244 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
1245 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
1246 },
1247 },
1248
1249 /*
1250 * Boca Research Turbo Serial 658 (8 serial port) card.
1251 * Appears to be the same as Chase Research PLC PCI-FAST8
1252 * and Perle PCI-FAST8 Multi-Port serial cards.
1253 */
1254 { "Boca Research Turbo Serial 658",
1255 { 0x10b5, 0x9050, 0x12e0, 0x0021 },
1256 { 0xffff, 0xffff, 0xffff, 0xffff },
1257 {
1258 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
1259 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
1260 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
1261 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
1262 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 4 },
1263 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 4 },
1264 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 4 },
1265 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 4 },
1266 },
1267 },
1268
1269 /*
1270 * Addi-Data APCI-7800 8-port serial card.
1271 * Uses an AMCC chip as PCI bridge.
1272 */
1273 { "Addi-Data APCI-7800",
1274 { 0x10e8, 0x818e, 0, 0 },
1275 { 0xffff, 0xffff, 0, 0 },
1276 {
1277 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1278 { PUC_PORT_TYPE_COM, 0x14, 0x08, COM_FREQ },
1279 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1280 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ },
1281 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
1282 { PUC_PORT_TYPE_COM, 0x1c, 0x08, COM_FREQ },
1283 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
1284 { PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ },
1285 },
1286 },
1287
1288 { "EXAR XR17D152",
1289 { 0x13a8, 0x0152, 0, 0 },
1290 { 0xffff, 0xffff, 0, 0 },
1291 {
1292 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1293 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1294 },
1295 },
1296 { "EXAR XR17D154",
1297 { 0x13a8, 0x0154, 0, 0 },
1298 { 0xffff, 0xffff, 0, 0 },
1299 {
1300 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1301 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1302 { PUC_PORT_TYPE_COM, 0x10, 0x0400, COM_FREQ * 8 },
1303 { PUC_PORT_TYPE_COM, 0x10, 0x0600, COM_FREQ * 8 },
1304 },
1305 },
1306 { "EXAR XR17D158",
1307 { 0x13a8, 0x0158, 0, 0 },
1308 { 0xffff, 0xffff, 0, 0 },
1309 {
1310 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1311 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1312 { PUC_PORT_TYPE_COM, 0x10, 0x0400, COM_FREQ * 8 },
1313 { PUC_PORT_TYPE_COM, 0x10, 0x0600, COM_FREQ * 8 },
1314 { PUC_PORT_TYPE_COM, 0x10, 0x0800, COM_FREQ * 8 },
1315 { PUC_PORT_TYPE_COM, 0x10, 0x0a00, COM_FREQ * 8 },
1316 { PUC_PORT_TYPE_COM, 0x10, 0x0c00, COM_FREQ * 8 },
1317 { PUC_PORT_TYPE_COM, 0x10, 0x0e00, COM_FREQ * 8 },
1318 },
1319 },
1320
1321 /* I-O DATA RSA-PCI: 2S */
1322 { "I-O DATA RSA-PCI 2-port serial",
1323 { 0x10fc, 0x0007, 0, 0 },
1324 { 0xffff, 0xffff, 0, 0 },
1325 {
1326 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
1327 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
1328 },
1329 },
1330
1331 /* Digi International Digi Neo 4 Serial */
1332 { "Digi International Digi Neo 4 Serial",
1333 { PCI_VENDOR_DIGI, PCI_PRODUCT_DIGI_NEO4, 0, 0 },
1334 { 0xffff, 0xffff, 0, 0 },
1335 {
1336 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1337 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1338 { PUC_PORT_TYPE_COM, 0x10, 0x0400, COM_FREQ * 8 },
1339 { PUC_PORT_TYPE_COM, 0x10, 0x0600, COM_FREQ * 8 },
1340 },
1341 },
1342
1343 /* Digi International Digi Neo 8 Serial */
1344 { "Digi International Digi Neo 8 Serial",
1345 { PCI_VENDOR_DIGI, PCI_PRODUCT_DIGI_NEO8, 0, 0 },
1346 { 0xffff, 0xffff, 0, 0 },
1347 {
1348 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1349 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1350 { PUC_PORT_TYPE_COM, 0x10, 0x0400, COM_FREQ * 8 },
1351 { PUC_PORT_TYPE_COM, 0x10, 0x0600, COM_FREQ * 8 },
1352 { PUC_PORT_TYPE_COM, 0x10, 0x0800, COM_FREQ * 8 },
1353 { PUC_PORT_TYPE_COM, 0x10, 0x0a00, COM_FREQ * 8 },
1354 { PUC_PORT_TYPE_COM, 0x10, 0x0c00, COM_FREQ * 8 },
1355 { PUC_PORT_TYPE_COM, 0x10, 0x0e00, COM_FREQ * 8 },
1356 },
1357 },
1358
1359 /*
1360 * B&B Electronics MIPort Serial cards.
1361 */
1362 { "BBELEC ISOLATED_2_PORT",
1363 { PCI_VENDOR_BBELEC, PCI_PRODUCT_BBELEC_ISOLATED_2_PORT, 0, 0 },
1364 { 0xffff, 0xffff, 0, 0 },
1365 {
1366 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1367 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1368 },
1369 },
1370 { "BBELEC ISOLATED_4_PORT",
1371 { PCI_VENDOR_BBELEC, PCI_PRODUCT_BBELEC_ISOLATED_4_PORT, 0, 0 },
1372 { 0xffff, 0xffff, 0, 0 },
1373 {
1374 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1375 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1376 { PUC_PORT_TYPE_COM, 0x10, 0x0400, COM_FREQ * 8 },
1377 { PUC_PORT_TYPE_COM, 0x10, 0x0600, COM_FREQ * 8 },
1378 },
1379 },
1380 { "BBELEC ISOLATED_8_PORT",
1381 { PCI_VENDOR_BBELEC, PCI_PRODUCT_BBELEC_ISOLATED_8_PORT, 0, 0 },
1382 { 0xffff, 0xffff, 0, 0 },
1383 {
1384 { PUC_PORT_TYPE_COM, 0x10, 0x0000, COM_FREQ * 8 },
1385 { PUC_PORT_TYPE_COM, 0x10, 0x0200, COM_FREQ * 8 },
1386 { PUC_PORT_TYPE_COM, 0x10, 0x0400, COM_FREQ * 8 },
1387 { PUC_PORT_TYPE_COM, 0x10, 0x0600, COM_FREQ * 8 },
1388 { PUC_PORT_TYPE_COM, 0x10, 0x0800, COM_FREQ * 8 },
1389 { PUC_PORT_TYPE_COM, 0x10, 0x0a00, COM_FREQ * 8 },
1390 { PUC_PORT_TYPE_COM, 0x10, 0x0c00, COM_FREQ * 8 },
1391 { PUC_PORT_TYPE_COM, 0x10, 0x0e00, COM_FREQ * 8 },
1392 },
1393 },
1394
1395 { .name = NULL },
1396 };
1397