xref: /netbsd/sys/dev/pci/pucdata.c (revision c4a72b64)
1 /*	$NetBSD: pucdata.c,v 1.32 2002/10/29 08:59:36 chs 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.32 2002/10/29 08:59:36 chs Exp $");
40 
41 #include <sys/param.h>
42 #include <sys/systm.h>
43 #include <sys/device.h>
44 
45 #include <dev/pci/pcireg.h>
46 #include <dev/pci/pcivar.h>
47 #include <dev/pci/pucvar.h>
48 #include <dev/ic/comreg.h>
49 
50 const struct puc_device_description puc_devices[] = {
51 	/*
52 	 * SUNIX 40XX series of serial/parallel combo cards.
53 	 * Tested with 4055A and 4065A.
54 	 */
55 	{   "SUNIX 400X 1P",
56 	    {	0x1409,	0x7168,	0x1409,	0x4000 },
57 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
58 	    {
59 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
60 	    },
61 	},
62 
63 	{   "SUNIX 401X 2P",
64 	    {	0x1409,	0x7168,	0x1409,	0x4010 },
65 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
66 	    {
67 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
68 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
69 	    },
70 	},
71 
72 	{   "SUNIX 402X 1S",
73 	    {	0x1409,	0x7168,	0x1409,	0x4020 },
74 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
75 	    {
76 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
77 	    },
78 	},
79 
80 	{   "SUNIX 403X 2S",
81 	    {	0x1409,	0x7168,	0x1409,	0x4030 },
82 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
83 	    {
84 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
85 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
86 	    },
87 	},
88 
89 	{   "SUNIX 405X 4S",
90 	    {	0x1409,	0x7168,	0x1409,	0x4050 },
91 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
92 	    {
93 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
94 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
95 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ},
96 		{ PUC_PORT_TYPE_COM, 0x14, 0x08, COM_FREQ},
97 	    },
98 	},
99 
100 	{   "SUNIX 406X 8S",
101 	    {	0x1409,	0x7168,	0x1409,	0x4060 },
102 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
103 	    {
104 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
105 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
106 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ},
107 		{ PUC_PORT_TYPE_COM, 0x14, 0x08, COM_FREQ},
108 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ},
109 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ},
110 		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ},
111 		{ PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ},
112 	    },
113 	},
114 
115 	{   "SUNIX 407X 2S/1P",
116 	    {	0x1409,	0x7168,	0x1409,	0x4070 },
117 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
118 	    {
119 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
120 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
121 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
122 	    },
123 	},
124 
125 	{   "SUNIX 408X 2S/2P",
126 	    {	0x1409,	0x7168,	0x1409,	0x4080 },
127 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
128 	    {
129 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
130 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
131 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
132 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
133 	    },
134 	},
135 
136 	{   "SUNIX 409X 4S/2P",
137 	    {	0x1409,	0x7168,	0x1409,	0x4090 },
138 	    {	0xffff,	0xffff,	0xffff,	0xeff0 },
139 	    {
140 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
141 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
142 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ},
143 		{ PUC_PORT_TYPE_COM, 0x14, 0x08, COM_FREQ},
144 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
145 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
146 	    },
147 	},
148 
149 	/*
150 	 * XXX no entry because I have no data:
151 	 * XXX Dolphin Peripherals 4006 (single parallel)
152 	 */
153 
154 	/*
155 	 * Dolphin Peripherals 4014 (dual parallel port) card.  PLX 9050, with
156 	 * a seemingly-lame EEPROM setup that puts the Dolphin IDs
157 	 * into the subsystem fields, and claims that it's a
158 	 * network/misc (0x02/0x80) device.
159 	 */
160 	{   "Dolphin Peripherals 4014",
161 	    {	0x10b5,	0x9050,	0xd84d,	0x6810	},
162 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
163 	    {
164 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
165 		{ PUC_PORT_TYPE_LPT, 0x24, 0x00, 0x00 },
166 	    },
167 	},
168 
169 	/*
170 	 * XXX Dolphin Peripherals 4025 (single serial)
171 	 * (clashes with Dolphin Peripherals  4036 (2s variant)
172 	 */
173 
174 	/*
175 	 * Dolphin Peripherals 4035 (dual serial port) card.  PLX 9050, with
176 	 * a seemingly-lame EEPROM setup that puts the Dolphin IDs
177 	 * into the subsystem fields, and claims that it's a
178 	 * network/misc (0x02/0x80) device.
179 	 */
180 	{   "Dolphin Peripherals 4035",
181 	    {	0x10b5,	0x9050,	0xd84d,	0x6808	},
182 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
183 	    {
184 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
185 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
186 	    },
187 	},
188 
189 	/*
190 	 * Dolphin Peripherals 4036 (dual serial port) card.
191 	 * (Dolpin 4025 has the same ID but only one port)
192 	 */
193 	{   "Dolphin Peripherals 4036",
194 	    {	0x1409,	0x7168,	0x0,	0x0	},
195 	    {	0xffff,	0xffff,	0x0,	0x0	},
196 	    {
197 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8},
198 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8},
199 	    },
200 	},
201 
202 	/*
203 	 * XXX no entry because I have no data:
204 	 * XXX Dolphin Peripherals 4078 (dual serial and single parallel)
205 	 */
206 
207 
208 	/*
209 	 * SIIG Boards.
210 	 *
211 	 * SIIG provides documentation for their boards at:
212 	 * <URL:http://www.siig.com/driver.htm>
213 	 *
214 	 * Please excuse the weird ordering, it's the order they
215 	 * use in their documentation.
216 	 */
217 
218 	/*
219 	 * SIIG "10x" family boards.
220 	 */
221 
222 	/* SIIG Cyber Serial PCI 16C550 (10x family): 1S */
223 	{   "SIIG Cyber Serial PCI 16C550 (10x family)",
224 	    {	0x131f,	0x1000,	0,	0	},
225 	    {	0xffff,	0xffff,	0,	0	},
226 	    {
227 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
228 	    },
229 	},
230 
231 	/* SIIG Cyber Serial PCI 16C650 (10x family): 1S */
232 	{   "SIIG Cyber Serial PCI 16C650 (10x family)",
233 	    {	0x131f,	0x1001,	0,	0	},
234 	    {	0xffff,	0xffff,	0,	0	},
235 	    {
236 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
237 	    },
238 	},
239 
240 	/* SIIG Cyber Serial PCI 16C850 (10x family): 1S */
241 	{   "SIIG Cyber Serial PCI 16C850 (10x family)",
242 	    {	0x131f,	0x1002,	0,	0	},
243 	    {	0xffff,	0xffff,	0,	0	},
244 	    {
245 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
246 	    },
247 	},
248 
249 	/* SIIG Cyber I/O PCI 16C550 (10x family): 1S, 1P */
250 	{   "SIIG Cyber I/O PCI 16C550 (10x family)",
251 	    {	0x131f,	0x1010,	0,	0	},
252 	    {	0xffff,	0xffff,	0,	0	},
253 	    {
254 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
255 		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
256 	    },
257 	},
258 
259 	/* SIIG Cyber I/O PCI 16C650 (10x family): 1S, 1P */
260 	{   "SIIG Cyber I/O PCI 16C650 (10x family)",
261 	    {	0x131f,	0x1011,	0,	0	},
262 	    {	0xffff,	0xffff,	0,	0	},
263 	    {
264 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
265 		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
266 	    },
267 	},
268 
269 	/* SIIG Cyber I/O PCI 16C850 (10x family): 1S, 1P */
270 	{   "SIIG Cyber I/O PCI 16C850 (10x family)",
271 	    {	0x131f,	0x1012,	0,	0	},
272 	    {	0xffff,	0xffff,	0,	0	},
273 	    {
274 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
275 		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
276 	    },
277 	},
278 
279 	/* SIIG Cyber Parallel PCI (10x family): 1P */
280 	{   "SIIG Cyber Parallel PCI (10x family)",
281 	    {	0x131f,	0x1020,	0,	0	},
282 	    {	0xffff,	0xffff,	0,	0	},
283 	    {
284 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
285 	    },
286 	},
287 
288 	/* SIIG Cyber Parallel Dual PCI (10x family): 2P */
289 	{   "SIIG Cyber Parallel Dual PCI (10x family)",
290 	    {	0x131f,	0x1021,	0,	0	},
291 	    {	0xffff,	0xffff,	0,	0	},
292 	    {
293 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
294 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
295 	    },
296 	},
297 
298 	/* SIIG Cyber Serial Dual PCI 16C550 (10x family): 2S */
299 	{   "SIIG Cyber Serial Dual PCI 16C550 (10x family)",
300 	    {	0x131f,	0x1030,	0,	0	},
301 	    {	0xffff,	0xffff,	0,	0	},
302 	    {
303 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
304 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
305 	    },
306 	},
307 
308 	/* SIIG Cyber Serial Dual PCI 16C650 (10x family): 2S */
309 	{   "SIIG Cyber Serial Dual PCI 16C650 (10x family)",
310 	    {	0x131f,	0x1031,	0,	0	},
311 	    {	0xffff,	0xffff,	0,	0	},
312 	    {
313 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
314 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
315 	    },
316 	},
317 
318 	/* SIIG Cyber Serial Dual PCI 16C850 (10x family): 2S */
319 	{   "SIIG Cyber Serial Dual PCI 16C850 (10x family)",
320 	    {	0x131f,	0x1032,	0,	0	},
321 	    {	0xffff,	0xffff,	0,	0	},
322 	    {
323 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
324 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
325 	    },
326 	},
327 
328 	/* SIIG Cyber 2S1P PCI 16C550 (10x family): 2S, 1P */
329 	{   "SIIG Cyber 2S1P PCI 16C550 (10x family)",
330 	    {	0x131f,	0x1034,	0,	0	},	/* XXX really? */
331 	    {	0xffff,	0xffff,	0,	0	},
332 	    {
333 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
334 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
335 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
336 	    },
337 	},
338 
339 	/* SIIG Cyber 2S1P PCI 16C650 (10x family): 2S, 1P */
340 	{   "SIIG Cyber 2S1P PCI 16C650 (10x family)",
341 	    {	0x131f,	0x1035,	0,	0	},	/* XXX really? */
342 	    {	0xffff,	0xffff,	0,	0	},
343 	    {
344 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
345 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
346 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
347 	    },
348 	},
349 
350 	/* SIIG Cyber 2S1P PCI 16C850 (10x family): 2S, 1P */
351 	{   "SIIG Cyber 2S1P PCI 16C850 (10x family)",
352 	    {	0x131f,	0x1036,	0,	0	},	/* XXX really? */
353 	    {	0xffff,	0xffff,	0,	0	},
354 	    {
355 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
356 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
357 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
358 	    },
359 	},
360 
361 	/* SIIG Cyber 4S PCI 16C550 (10x family): 4S */
362 	{   "SIIG Cyber 4S PCI 16C550 (10x family)",
363 	    {	0x131f,	0x1050,	0,	0	},
364 	    {	0xffff,	0xffff,	0,	0	},
365 	    {
366 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
367 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
368 		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
369 		{ PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
370 	    },
371 	},
372 
373 	/* SIIG Cyber 4S PCI 16C650 (10x family): 4S */
374 	{   "SIIG Cyber 4S PCI 16C650 (10x family)",
375 	    {	0x131f,	0x1051,	0,	0	},
376 	    {	0xffff,	0xffff,	0,	0	},
377 	    {
378 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
379 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
380 		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
381 		{ PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
382 	    },
383 	},
384 
385 	/* SIIG Cyber 4S PCI 16C850 (10x family): 4S */
386 	{   "SIIG Cyber 4S PCI 16C850 (10x family)",
387 	    {	0x131f,	0x1052,	0,	0	},
388 	    {	0xffff,	0xffff,	0,	0	},
389 	    {
390 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
391 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
392 		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
393 		{ PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
394 	    },
395 	},
396 
397 	/*
398 	 * SIIG "20x" family boards.
399 	 */
400 
401 	/* SIIG Cyber Parallel PCI (20x family): 1P */
402 	{   "SIIG Cyber Parallel PCI (20x family)",
403 	    {	0x131f,	0x2020,	0,	0	},
404 	    {	0xffff,	0xffff,	0,	0	},
405 	    {
406 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
407 	    },
408 	},
409 
410 	/* SIIG Cyber Parallel Dual PCI (20x family): 2P */
411 	{   "SIIG Cyber Parallel Dual PCI (20x family)",
412 	    {	0x131f,	0x2021,	0,	0	},
413 	    {	0xffff,	0xffff,	0,	0	},
414 	    {
415 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
416 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
417 	    },
418 	},
419 
420 	/* SIIG Cyber 2P1S PCI 16C550 (20x family): 1S, 2P */
421 	{   "SIIG Cyber 2P1S PCI 16C550 (20x family)",
422 	    {	0x131f,	0x2040,	0,	0	},
423 	    {	0xffff,	0xffff,	0,	0	},
424 	    {
425 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
426 		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
427 		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
428 	    },
429 	},
430 
431 	/* SIIG Cyber 2P1S PCI 16C650 (20x family): 1S, 2P */
432 	{   "SIIG Cyber 2P1S PCI 16C650 (20x family)",
433 	    {	0x131f,	0x2041,	0,	0	},
434 	    {	0xffff,	0xffff,	0,	0	},
435 	    {
436 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
437 		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
438 		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
439 	    },
440 	},
441 
442 	/* SIIG Cyber 2P1S PCI 16C850 (20x family): 1S, 2P */
443 	{   "SIIG Cyber 2P1S PCI 16C850 (20x family)",
444 	    {	0x131f,	0x2042,	0,	0	},
445 	    {	0xffff,	0xffff,	0,	0	},
446 	    {
447 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
448 		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
449 		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
450 	    },
451 	},
452 
453 	/* SIIG Cyber Serial PCI 16C550 (20x family): 1S */
454 	{   "SIIG Cyber Serial PCI 16C550 (20x family)",
455 	    {	0x131f,	0x2000,	0,	0	},
456 	    {	0xffff,	0xffff,	0,	0	},
457 	    {
458 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
459 	    },
460 	},
461 
462 	/* SIIG Cyber Serial PCI 16C650 (20x family): 1S */
463 	{   "SIIG Cyber Serial PCI 16C650 (20x family)",
464 	    {	0x131f,	0x2001,	0,	0	},
465 	    {	0xffff,	0xffff,	0,	0	},
466 	    {
467 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
468 	    },
469 	},
470 
471 	/* SIIG Cyber Serial PCI 16C850 (20x family): 1S */
472 	{   "SIIG Cyber Serial PCI 16C850 (20x family)",
473 	    {	0x131f,	0x2002,	0,	0	},
474 	    {	0xffff,	0xffff,	0,	0	},
475 	    {
476 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
477 	    },
478 	},
479 
480 	/* SIIG Cyber I/O PCI 16C550 (20x family): 1S, 1P */
481 	{   "SIIG Cyber I/O PCI 16C550 (20x family)",
482 	    {	0x131f,	0x2010,	0,	0	},
483 	    {	0xffff,	0xffff,	0,	0	},
484 	    {
485 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
486 		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
487 	    },
488 	},
489 
490 	/* SIIG Cyber I/O PCI 16C650 (20x family): 1S, 1P */
491 	{   "SIIG Cyber I/O PCI 16C650 (20x family)",
492 	    {	0x131f,	0x2011,	0,	0	},
493 	    {	0xffff,	0xffff,	0,	0	},
494 	    {
495 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
496 		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
497 	    },
498 	},
499 
500 	/* SIIG Cyber I/O PCI 16C850 (20x family): 1S, 1P */
501 	{   "SIIG Cyber I/O PCI 16C850 (20x family)",
502 	    {	0x131f,	0x2012,	0,	0	},
503 	    {	0xffff,	0xffff,	0,	0	},
504 	    {
505 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
506 		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
507 	    },
508 	},
509 
510 	/* SIIG Cyber Serial Dual PCI 16C550 (20x family): 2S */
511 	{   "SIIG Cyber Serial Dual PCI 16C550 (20x family)",
512 	    {	0x131f,	0x2030,	0,	0	},
513 	    {	0xffff,	0xffff,	0,	0	},
514 	    {
515 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
516 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
517 	    },
518 	},
519 
520 	/* SIIG Cyber Serial Dual PCI 16C650 (20x family): 2S */
521 	{   "SIIG Cyber Serial Dual PCI 16C650 (20x family)",
522 	    {	0x131f,	0x2031,	0,	0	},
523 	    {	0xffff,	0xffff,	0,	0	},
524 	    {
525 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
526 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
527 	    },
528 	},
529 
530 	/* SIIG Cyber Serial Dual PCI 16C850 (20x family): 2S */
531 	{   "SIIG Cyber Serial Dual PCI 16C850 (20x family)",
532 	    {	0x131f,	0x2032,	0,	0	},
533 	    {	0xffff,	0xffff,	0,	0	},
534 	    {
535 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
536 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
537 	    },
538 	},
539 
540 	/* SIIG Cyber 2S1P PCI 16C550 (20x family): 2S, 1P */
541 	{   "SIIG Cyber 2S1P PCI 16C550 (20x family)",
542 	    {	0x131f,	0x2060,	0,	0	},
543 	    {	0xffff,	0xffff,	0,	0	},
544 	    {
545 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
546 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
547 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
548 	    },
549 	},
550 
551 	/* SIIG Cyber 2S1P PCI 16C650 (20x family): 2S, 1P */
552 	{   "SIIG Cyber 2S1P PCI 16C650 (20x family)",
553 	    {	0x131f,	0x2061,	0,	0	},
554 	    {	0xffff,	0xffff,	0,	0	},
555 	    {
556 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
557 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
558 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
559 	    },
560 	},
561 
562 	/* SIIG Cyber 2S1P PCI 16C850 (20x family): 2S, 1P */
563 	{   "SIIG Cyber 2S1P PCI 16C850 (20x family)",
564 	    {	0x131f,	0x2062,	0,	0	},
565 	    {	0xffff,	0xffff,	0,	0	},
566 	    {
567 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
568 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
569 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
570 	    },
571 	},
572 
573 	/* SIIG Cyber 4S PCI 16C550 (20x family): 4S */
574 	{   "SIIG Cyber 4S PCI 16C550 (20x family)",
575 	    {	0x131f,	0x2050,	0,	0	},
576 	    {	0xffff,	0xffff,	0,	0	},
577 	    {
578 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
579 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
580 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
581 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
582 	    },
583 	},
584 
585 	/* SIIG Cyber 4S PCI 16C650 (20x family): 4S */
586 	{   "SIIG Cyber 4S PCI 16C650 (20x family)",
587 	    {	0x131f,	0x2051,	0,	0	},
588 	    {	0xffff,	0xffff,	0,	0	},
589 	    {
590 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
591 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
592 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
593 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
594 	    },
595 	},
596 
597 	/* SIIG Cyber 4S PCI 16C850 (20x family): 4S */
598 	{   "SIIG Cyber 4S PCI 16C850 (20x family)",
599 	    {	0x131f,	0x2052,	0,	0	},
600 	    {	0xffff,	0xffff,	0,	0	},
601 	    {
602 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
603 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
604 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
605 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
606 	    },
607 	},
608 
609 	/* SIIG Cyber PS8000 PCI 16C650 (20x family): 8S - 32 Byte FIFOs */
610 	{   "SIIG PS8000 8S PCI 16C650 (20x family)",
611 	    {	0x131f,	0x2081,	0,	0	},
612 	    {	0xffff,	0xffff,	0,	0	},
613 	    {
614 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
615 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
616 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
617 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
618 		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
619 		{ PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ },
620 		{ PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ },
621 		{ PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ },
622 	    },
623 	},
624 
625 	/* VScom PCI-400: 4S */
626 	{   "VScom PCI-400",
627 	    {	0x10b5,	0x1077,	0x10b5,	0x1077	},
628 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
629 	    {
630 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
631 		{ PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
632 		{ PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
633 		{ PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
634 	    },
635 	},
636 
637 	/* VScom PCI-800: 8S */
638 	{   "VScom PCI-800",
639 	    {	0x10b5,	0x1076,	0x10b5,	0x1076	},
640 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
641 	    {
642 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
643 		{ PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
644 		{ PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
645 		{ PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
646 		{ PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 8 },
647 		{ PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 8 },
648 		{ PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 8 },
649 		{ PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 8 },
650 	    },
651 	},
652 
653 	/*
654 	 * VScom PCI-800H. Uses 8 16950 UART, behind a PCI chips that offers
655 	 * 4 com port on PCI device 0 and 4 on PCI device 1. PCI device 0 has
656 	 * device ID 3 and PCI device 1 device ID 4.
657 	 */
658 	{   "Titan PCI-800H",
659 	    {	0x14d2,	0xa003,	0,	0	},
660 	    {	0xffff,	0xffff,	0,	0	},
661 	    {
662 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
663 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
664 		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
665 		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
666 	    },
667 	},
668 	{   "Titan PCI-800H",
669 	    {	0x14d2,	0xa004,	0,	0	},
670 	    {	0xffff,	0xffff,	0,	0	},
671 	    {
672 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
673 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
674 		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
675 		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
676 	    },
677 	},
678         {   "Titan PCI-200H",
679             {   0x14d2, 0xa005, 0,      0       },
680             {   0xffff, 0xffff, 0,      0       },
681             {
682                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
683                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
684             },
685         },
686 	{   "Titan PCI-800L",
687 	    {	0x14d2,	0x8080,	0,	0	},
688 	    {	0xffff,	0xffff,	0,	0	},
689 	    {
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, 0x20, 0x00, COM_FREQ * 8 },
693 		{ PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
694 		{ PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
695 		{ PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
696 		{ PUC_PORT_TYPE_COM, 0x20, 0x20, COM_FREQ * 8 },
697 		{ PUC_PORT_TYPE_COM, 0x20, 0x28, COM_FREQ * 8 },
698 	    },
699 	},
700 	/* NEC PK-UG-X001 K56flex PCI Modem card.
701 	   NEC MARTH bridge chip and Rockwell RCVDL56ACF/SP using. */
702 	{   "NEC PK-UG-X001 K56flex PCI Modem",
703 	    {	0x1033,	0x0074,	0x1033,	0x8014	},
704 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
705 	    {
706 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
707 	    },
708 	},
709 
710 	/* NEC PK-UG-X008 */
711 	{   "NEC PK-UG-X008",
712 	    {	0x1033,	0x007d,	0x1033,	0x8012	},
713 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
714 	    {
715 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ},
716 	    },
717 	},
718 
719 	/* Lava Computers 2SP-PCI */
720 	{   "Lava Computers 2SP-PCI parallel port",
721 	    {	0x1407,	0x8000,	0,	0	},
722 	    {	0xffff,	0xffff,	0,	0	},
723 	    {
724 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
725 	    },
726 	},
727 
728 	/* Lava Computers 2SP-PCI and Quattro-PCI serial ports */
729 	{   "Lava Computers dual serial port",
730 	    {	0x1407,	0x0100,	0,	0	},
731 	    {	0xffff,	0xfffc,	0,	0	},
732 	    {
733 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
734 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
735 	    },
736 	},
737 
738 	/* Lava Computers DSerial PCI serial ports */
739 	{   "Lava Computers serial port",
740 	    {	0x1407,	0x0110,	0,	0	},
741 	    {	0xffff,	0xfffc,	0,	0	},
742 	    {
743 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
744 	    },
745 	},
746 
747 	/* Lava Computers Octopus-550 serial ports */
748 	{   "Lava Computers Octopus-550 8-port serial",
749 	    {	0x1407,	0x0180,	0,	0	},
750 	    {	0xffff,	0xfffc,	0,	0	},
751 	    {
752 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
753 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
754 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
755 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
756 	    },
757 	},
758 
759 	/* US Robotics (3Com) PCI Modems */
760 	{   "US Robotics (3Com) 3CP5609 PCI 16550 Modem",
761 	    {	0x12b9,	0x1008,	0,	0	},
762 	    {	0xffff,	0xffff,	0,	0	},
763 	    {
764 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
765 	    },
766 	},
767 
768 	/* Actiontec  56K PCI Master */
769 	{   "Actiontec 56K PCI Master",
770 	    {	0x11c1,	0x0480,	0x0, 	0x0	},
771 	    {	0xffff,	0xffff,	0x0,	0x0	},
772 	    {
773 		{ PUC_PORT_TYPE_COM,	0x14,	0x00, COM_FREQ },
774 	    },
775 	},
776 
777 	/*
778 	 * Boards with an Oxford Semiconductor chip.
779 	 *
780 	 * Oxford Semiconductor provides documentation for their chip at:
781 	 * <URL:http://www.oxsemi.com/products/uarts/index.html>
782 	 *
783 	 * As sold by Kouwell <URL:http://www.kouwell.com/>.
784 	 * I/O Flex PCI I/O Card Model-223 with 4 serial and 1 parallel ports.
785 	 */
786 
787 	/* Oxford Semiconductor OX16PCI952 PCI `950 UARTs - 128 byte FIFOs */
788 	{   "Oxford Semiconductor OX16PCI952 UARTs",
789 	    {   0x1415, 0x9521, 0,	0	},
790 	    {   0xffff, 0xffff, 0,	0	},
791 	    {
792 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
793 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
794 	    },
795 	},
796 
797 	/* Oxford Semiconductor OX16PCI952 PCI Parallel port */
798 	{   "Oxford Semiconductor OX16PCI952 Parallel port",
799 	    {   0x1415, 0x9523, 0,	0	},
800 	    {   0xffff, 0xffff, 0,	0	},
801 	    {
802 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
803 	    },
804 	},
805 
806 	/* Oxford Semiconductor OX16PCI954 PCI UARTs */
807 	{   "Oxford Semiconductor OX16PCI954 UARTs",
808 	    {	0x1415,	0x9501,	0,	0	},
809 	    {	0xffff,	0xffff,	0,	0	},
810 	    {
811 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
812 		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
813 		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
814 		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
815 	    },
816 	},
817 
818 	/* Oxford Semiconductor OX16PCI954 PCI Parallel port */
819 	{   "Oxford Semiconductor OX16PCI954 Parallel port",
820 	    {	0x1415,	0x9513,	0,	0	},
821 	    {	0xffff,	0xffff,	0,	0	},
822 	    {
823 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
824 	    },
825 	},
826 
827 	/* NetMos 1P PCI : 1P */
828 	{   "NetMos NM9805 1284 Printer port",
829 	    {	0x9710,	0x9805,	0,	0	},
830 	    {	0xffff,	0xffff,	0,	0	},
831 	    {
832 		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
833 	    },
834 	},
835 
836 	/* NetMos 2S1P PCI 16C650 : 2S, 1P */
837 	{   "NetMos NM9835 Dual UART and 1284 Printer port",
838 	    {	0x9710,	0x9835,	0,	0	},
839 	    {	0xffff,	0xffff,	0,	0	},
840 	    {
841 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
842 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
843 		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
844 	    },
845 	},
846 
847 	/* NetMos 4S1P PCI NM9845 : 4S, 1P */
848 	{   "NetMos NM9845 Quad UART and 1284 Printer port",
849 	    {	0x9710,	0x9845,	0,	0	},
850 	    {	0xffff,	0xffff,	0,	0	},
851 	    {
852 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
853 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
854 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
855 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 4 },
856 		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
857 	    },
858 	},
859 
860 	/*
861 	 * This is the Middle Digital, Inc. PCI-Weasel, which
862 	 * uses a PCI interface implemented in FPGA.
863 	 */
864 	{   "Middle Digital, Inc. Weasel serial port",
865 	    {	0xdeaf,	0x9051,	0,	0	},
866 	    {	0xffff,	0xffff,	0,	0	},
867 	    {
868 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
869 	    },
870 	},
871 
872 	/* Avlab Technology, Inc. Low Profile PCI 4 Serial: 4S */
873 	{   "Avlab Low Profile PCI 4 Serial",
874 	    {	0x14db,	0x2150,	0,	0	},
875 	    {	0xffff,	0xffff,	0,	0	},
876 	    {
877 		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
878 		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
879 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
880 		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
881 	    },
882 	},
883 
884 	/*
885 	 * Boca Research Turbo Serial 654 (4 serial port) card.
886 	 * Appears to be the same as Chase Research PLC PCI-FAST4
887 	 * and Perle PCI-FAST4 Multi-Port serial cards.
888 	 */
889 	{   "Boca Research Turbo Serial 654",
890 	    {   0x10b5, 0x9050, 0x12e0, 0x0031  },
891 	    {   0xffff, 0xffff, 0xffff, 0xffff  },
892 	    {
893 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
894 		{ PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
895 		{ PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
896 		{ PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
897 	    },
898 	},
899 
900 	/*
901 	 * Boca Research Turbo Serial 658 (8 serial port) card.
902 	 * Appears to be the same as Chase Research PLC PCI-FAST8
903 	 * and Perle PCI-FAST8 Multi-Port serial cards.
904 	 */
905 	{   "Boca Research Turbo Serial 658",
906 	    {   0x10b5, 0x9050, 0x12e0, 0x0021  },
907 	    {   0xffff, 0xffff, 0xffff, 0xffff  },
908 	    {
909 		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
910 		{ PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
911 		{ PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
912 		{ PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
913 		{ PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 4 },
914 		{ PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 4 },
915 		{ PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 4 },
916 		{ PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 4 },
917 	    },
918 	},
919 
920 	{ 0 }
921 };
922