pucdata.c revision 1.4 1 /* $NetBSD: pucdata.c,v 1.4 1999/02/06 06:55:15 cgd 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 * Author: Christopher G. Demetriou, May 14, 1998.
38 */
39
40 #include <sys/param.h>
41 #include <sys/systm.h>
42 #include <sys/device.h>
43
44 #include <dev/pci/pcireg.h>
45 #include <dev/pci/pcivar.h>
46 #include <dev/pci/pucvar.h>
47
48 const struct puc_device_description puc_devices[] = {
49 /*
50 * XXX no entry because I have no data:
51 * XXX Dolphin 4006 (single parallel)
52 */
53
54 /*
55 * Dolphin 4014 (dual parallel port) card. PLX 9050, with
56 * a seemingly-lame EEPROM setup that puts the Dolphin IDs
57 * into the subsystem fields, and claims that it's a
58 * network/misc (0x02/0x80) device.
59 */
60 { "Dolphin 4014",
61 { 0x10b5, 0x9050, 0xd84d, 0x6810 },
62 { 0xffff, 0xffff, 0xffff, 0xffff },
63 {
64 { PUC_PORT_TYPE_LPT, 0x20, 0x00 },
65 { PUC_PORT_TYPE_LPT, 0x24, 0x00 },
66 },
67 },
68
69 /*
70 * XXX no entry because I have no data:
71 * XXX Dolphin 4025 (single serial)
72 */
73
74 /*
75 * Dolphin 4035 (dual serial port) card. PLX 9050, with
76 * a seemingly-lame EEPROM setup that puts the Dolphin IDs
77 * into the subsystem fields, and claims that it's a
78 * network/misc (0x02/0x80) device.
79 */
80 { "Dolphin 4035",
81 { 0x10b5, 0x9050, 0xd84d, 0x6808 },
82 { 0xffff, 0xffff, 0xffff, 0xffff },
83 {
84 { PUC_PORT_TYPE_COM, 0x18, 0x00 },
85 { PUC_PORT_TYPE_COM, 0x1c, 0x00 },
86 },
87 },
88
89 /*
90 * XXX no entry because I have no data:
91 * XXX Dolphin 4078 (dual serial and single parallel)
92 */
93
94 /*
95 * XXX no entry because I have no data:
96 * XXX SIIG CyberParallel PCI (single parallel)
97 */
98
99 /*
100 * XXX no entry because I have no data:
101 * XXX SIIG CyberParallel Dual PCI (dual parallel)
102 */
103
104 /*
105 * SIIG CyberSerial PCI (single serial port) card. PLX 9052, with
106 * a more sensible EEPROM setup that reports "normal"-looking
107 * vendor and product IDs, and sensible class/subclass info,
108 * communications/serial (0x07/0x00), interface 0x02.
109 */
110 { "SIIG CyberSerial PCI",
111 { 0x131f, 0x1000, 0, 0 },
112 { 0xffff, 0xffff, 0, 0 },
113 {
114 { PUC_PORT_TYPE_COM, 0x18, 0x00 },
115 },
116 },
117
118 /*
119 * XXX no entry because I have no data:
120 * XXX SIIG Cyber 2S1P PCI (dual serial and single parallel)
121 */
122
123 /*
124 * VScom PCI-800, as sold on http://www.swann.com.au/isp/titan.html.
125 * Some PLX chip. Note: This board has a software selectable(?)
126 * clock multiplier which this driver doesn't support, so you'll
127 * have to use an appropriately scaled baud rate when talking to
128 * the card.
129 */
130 { "VScom PCI-800",
131 { 0x10b5, 0x1076, 0x10b5, 0x1076 },
132 { 0xffff, 0xffff, 0xffff, 0xffff },
133 {
134 { PUC_PORT_TYPE_COM, 0x18, 0x00 },
135 { PUC_PORT_TYPE_COM, 0x18, 0x08 },
136 { PUC_PORT_TYPE_COM, 0x18, 0x10 },
137 { PUC_PORT_TYPE_COM, 0x18, 0x18 },
138 { PUC_PORT_TYPE_COM, 0x18, 0x20 },
139 { PUC_PORT_TYPE_COM, 0x18, 0x28 },
140 { PUC_PORT_TYPE_COM, 0x18, 0x30 },
141 { PUC_PORT_TYPE_COM, 0x18, 0x38 },
142 },
143 },
144
145 { 0 }
146 };
147