xref: /netbsd/sys/dev/isapnp/isapnpdevs.c (revision c4a72b64)
1 /*	$NetBSD: isapnpdevs.c,v 1.55 2002/11/19 15:06:37 christos Exp $	*/
2 
3 /*
4  * THIS FILE IS AUTOMATICALLY GENERATED.  DO NOT EDIT.
5  *
6  * generated from:
7  *	NetBSD: isapnpdevs,v 1.51 2002/11/19 15:06:05 christos Exp
8  */
9 
10 /*-
11  * Copyright (c) 1998, 1999, 2000, 2001 The NetBSD Foundation, Inc.
12  * All rights reserved.
13  *
14  * This code is derived from software contributed to The NetBSD Foundation
15  * by Christos Zoulas.
16  *
17  * Redistribution and use in source and binary forms, with or without
18  * modification, are permitted provided that the following conditions
19  * are met:
20  * 1. Redistributions of source code must retain the above copyright
21  *    notice, this list of conditions and the following disclaimer.
22  * 2. Redistributions in binary form must reproduce the above copyright
23  *    notice, this list of conditions and the following disclaimer in the
24  *    documentation and/or other materials provided with the distribution.
25  * 3. All advertising materials mentioning features or use of this software
26  *    must display the following acknowledgement:
27  *        This product includes software developed by the NetBSD
28  *        Foundation, Inc. and its contributors.
29  * 4. Neither the name of The NetBSD Foundation nor the names of its
30  *    contributors may be used to endorse or promote products derived
31  *    from this software without specific prior written permission.
32  *
33  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
34  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
35  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
36  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
37  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
38  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
39  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
40  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
41  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
42  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
43  * POSSIBILITY OF SUCH DAMAGE.
44  */
45 
46 #include <sys/cdefs.h>
47 __KERNEL_RCSID(0, "$NetBSD: isapnpdevs.c,v 1.55 2002/11/19 15:06:37 christos Exp $");
48 
49 #include <sys/param.h>
50 #include <dev/isapnp/isapnpdevs.h>
51 
52 
53 /* Adaptec SCSI */
54 static const struct isapnp_matchinfo isapnp_aha_devlogic[] = {
55 	{"ADP1542", 0},	/* Adaptec AHA-1542CP */
56 };
57 static const struct isapnp_matchinfo isapnp_aha_devcompat[] = {
58 	{"PNP00A0", 0},	/* Adaptec AHA-1542CP */
59 };
60 const struct isapnp_devinfo isapnp_aha_devinfo = {
61 	isapnp_aha_devlogic, 1,
62 	isapnp_aha_devcompat, 1,
63 };
64 
65 /* Adaptec SCSI */
66 static const struct isapnp_matchinfo isapnp_aic_devlogic[] = {
67 	{"ADP1520", 0},	/* Adaptec AHA-1520B */
68 	{"ADP1502", 0},	/* Adaptec AHA-1502P */
69 	{"ADP1505", 0},	/* Adaptec AVA-1505A */
70 };
71 static const struct isapnp_matchinfo isapnp_aic_devcompat[] = {
72 	{"ADP1530", 0},	/* (Adaptec AVA-1505A) */
73 };
74 const struct isapnp_devinfo isapnp_aic_devinfo = {
75 	isapnp_aic_devlogic, 3,
76 	isapnp_aic_devcompat, 1,
77 };
78 
79 /* Aironet 802.11 */
80 static const struct isapnp_matchinfo isapnp_an_devlogic[] = {
81 	{"AOL0001", 0},	/* Aironet 4500/4800 */
82 };
83 const struct isapnp_devinfo isapnp_an_devinfo = {
84 	isapnp_an_devlogic, 1,
85 	NULL, 0,
86 };
87 
88 /* National Semiconductor Serial */
89 static const struct isapnp_matchinfo isapnp_com_devlogic[] = {
90 	{"AZT4001", 0},	/* Aztech Modem */
91 	{"BDP3336", 0},	/* Best Data Prods. 336F */
92 	{"OZO8039", 0},	/* Zoom 56k flex */
93 	{"BRI1400", 0},	/* Boca 33.6 PnP */
94 	{"BRIB400", 0},	/* Boca 56k PnP */
95 	{"ROK0010", 0},	/* Rockwell ? */
96 	{"USR0004", 0},	/* USR Sportster 14.4k */
97 	{"USR0006", 0},	/* USR Sportster 33.6k */
98 	{"USR0009", 0},	/* USR Courier V.Everything */
99 	{"USR2070", 0},	/* USR Sportster 56k */
100 	{"USR3031", 0},	/* USR 56k Faxmodem */
101 	{"USR3090", 0},	/* USR 56K Voice INT */
102 	{"USR9190", 0},	/* USR 56k Voice INT */
103 	{"ZTIF761", 0},	/* Zoom ComStar 33.6 */
104 	{"CIR3000", 0},	/* Cirrus Logic V43 */
105 	{"MOT0000", 0},	/* Motorola ModemSurfr */
106 	{"SMM00C1", 0},	/* Leopard 56k PnP */
107 	{"SUP1650", 0},	/* Supra 336i Sp Intl */
108 	{"SUP2480", 0},	/* SupraExpress 56i Sp V.90 */
109 	{"SUP2720", 0},	/* DIAMOND SupraExpress 56I SP V.90 */
110 	{"GVC0505", 0},	/* GVC 56k Faxmodem */
111 	{"GVC000F", 0},	/* GVC 33.6k Faxmodem */
112 	{"IOD0081", 0},	/* I-O DATA IFML-560 */
113 };
114 static const struct isapnp_matchinfo isapnp_com_devcompat[] = {
115 	{"PNP0500", 0},	/* Generic 8250/16450 */
116 	{"PNP0501", 0},	/* Generic 16550A */
117 };
118 const struct isapnp_devinfo isapnp_com_devinfo = {
119 	isapnp_com_devlogic, 23,
120 	isapnp_com_devcompat, 2,
121 };
122 
123 /* Cirrus Logic Crystal CS89x0 Ethernet */
124 static const struct isapnp_matchinfo isapnp_cs_devlogic[] = {
125 	{"IBM1010", 0},	/* IBM EtherJet ISA */
126 };
127 const struct isapnp_devinfo isapnp_cs_devinfo = {
128 	isapnp_cs_devlogic, 1,
129 	NULL, 0,
130 };
131 
132 /* 3Com 3CXXX Ethernet */
133 static const struct isapnp_matchinfo isapnp_ep_devlogic[] = {
134 	{"TCM5051", 0},	/* 3Com 3c515 */
135 	{"TCM5090", 0},	/* 3Com 3c509B */
136 	{"TCM5091", 0},	/* 3Com 3c509B-1 */
137 	{"TCM5094", 0},	/* 3Com 3c509B-4 */
138 	{"TCM5095", 0},	/* 3Com 3c509B-5 */
139 	{"TCM5098", 0},	/* 3Com 3c509B-8 */
140 };
141 const struct isapnp_devinfo isapnp_ep_devinfo = {
142 	isapnp_ep_devlogic, 6,
143 	NULL, 0,
144 };
145 
146 /* ESS Audio Drive */
147 static const struct isapnp_matchinfo isapnp_ess_devlogic[] = {
148 	{"ESS1868", 0},	/* ESS1868 */
149 	{"ESS1869", 0},	/* ESS1869 */
150 };
151 const struct isapnp_devinfo isapnp_ess_devinfo = {
152 	isapnp_ess_devlogic, 2,
153 	NULL, 0,
154 };
155 
156 /* Fujitsu FMV-18x Ethernet */
157 static const struct isapnp_matchinfo isapnp_fmv_devlogic[] = {
158 	{"FUJ01C1", 0},	/* Fujitsu FMV-183 */
159 	{"FUJ01D1", 0},	/* Fujitsu FMV-184 */
160 };
161 const struct isapnp_devinfo isapnp_fmv_devinfo = {
162 	isapnp_fmv_devlogic, 2,
163 	NULL, 0,
164 };
165 
166 /* Generic Joystick */
167 static const struct isapnp_matchinfo isapnp_joy_devlogic[] = {
168 	{"AZT0003", 0},	/* Aztech AZT2320 GAME PORT */
169 	{"AZT3001", 0},	/* Aztech GAME PORT */
170 	{"CSC0001", 0},	/* CS4235 */
171 	{"CSCA801", 0},	/* Terratec EWS64XL */
172 	{"CTL7001", 0},	/* Creative Awe64 */
173 	{"CTL7002", 0},	/* Creative Vibra16CL */
174 	{"ESS0001", 0},	/* ESS1868 */
175 	{"OPT0001", 0},	/* OPTi Audio 16 */
176 	{"PNPB02F", 0},	/* XXX broken GUS PnP */
177 	{"ASB16FD", 0},	/* AdLib NSC 16 PNP */
178 };
179 static const struct isapnp_matchinfo isapnp_joy_devcompat[] = {
180 	{"PNPB02F", 0},	/* generic */
181 };
182 const struct isapnp_devinfo isapnp_joy_devinfo = {
183 	isapnp_joy_devlogic, 10,
184 	isapnp_joy_devcompat, 1,
185 };
186 
187 /* Gravis Ultrasound */
188 static const struct isapnp_matchinfo isapnp_gus_devlogic[] = {
189 	{"GRV0000", 0},	/* Gravis Ultrasound */
190 };
191 const struct isapnp_devinfo isapnp_gus_devinfo = {
192 	isapnp_gus_devlogic, 1,
193 	NULL, 0,
194 };
195 
196 /* Lance Ethernet */
197 static const struct isapnp_matchinfo isapnp_le_devlogic[] = {
198 	{"TKN0010", 0},	/* Lance Ethernet on TEKNOR board */
199 	{"ATK1500", 0},	/* Lance Ethernet on Allied Telesyn board */
200 	{"CSI2203", 0},	/* Cabletron E22xx */
201 	{"BUF0001", 0},	/* Melco Inc. LGY-IV */
202 };
203 const struct isapnp_devinfo isapnp_le_devinfo = {
204 	isapnp_le_devlogic, 4,
205 	NULL, 0,
206 };
207 
208 /* MPU-401 MIDI UART */
209 static const struct isapnp_matchinfo isapnp_mpu_devlogic[] = {
210 	{"AZT0002", 0},	/* Aztech AZT2320 MPU401 MIDI */
211 	{"AZT2001", 0},	/* Aztech MPU401 MIDI */
212 	{"CSC0003", 0},	/* CS4235 MPU401 MIDI */
213 };
214 const struct isapnp_devinfo isapnp_mpu_devinfo = {
215 	isapnp_mpu_devlogic, 3,
216 	NULL, 0,
217 };
218 
219 /* NE2000 Ethernet */
220 static const struct isapnp_matchinfo isapnp_ne_devlogic[] = {
221 	{"@@@1980", 0},	/* OvisLink LE-8019R */
222 };
223 static const struct isapnp_matchinfo isapnp_ne_devcompat[] = {
224 	{"PNP80D6", 0},	/* Digital DE305 ISAPnP */
225 };
226 const struct isapnp_devinfo isapnp_ne_devinfo = {
227 	isapnp_ne_devlogic, 1,
228 	isapnp_ne_devcompat, 1,
229 };
230 
231 /* PCMCIA bridge */
232 static const struct isapnp_matchinfo isapnp_pcic_devlogic[] = {
233 	{"SCM0469", 0},	/* SCM SwapBox Plug and Play */
234 	{"AEI0218", 0},	/* Actiontec PnP PCMCIA Adapter */
235 };
236 static const struct isapnp_matchinfo isapnp_pcic_devcompat[] = {
237 	{"PNP0E00", 0},	/* PCIC Compatible PCMCIA Bridge */
238 };
239 const struct isapnp_devinfo isapnp_pcic_devinfo = {
240 	isapnp_pcic_devlogic, 2,
241 	isapnp_pcic_devcompat, 1,
242 };
243 
244 /* Creative Soundblaster */
245 static const struct isapnp_matchinfo isapnp_sb_devlogic[] = {
246 	{"ADS7150", 0},	/* AD1815 */
247 	{"ADS7180", 0},	/* AD1816 */
248 	{"AZT1003", 0},	/* Aztech 1003 Audio */
249 	{"AZT1008", 0},	/* Aztech 1008 */
250 	{"CTL0001", 0},	/* SB */
251 	{"CTL0031", 0},	/* SB AWE32 */
252 	{"CTL0041", 0},	/* SB16 PnP (CT4131) */
253 	{"CTL0042", 0},	/* SB AWE64 Value */
254 	{"CTL0043", 0},	/* SB16 PnP (CT4170) */
255 	{"CTL0044", 0},	/* SB AWE64 Gold */
256 	{"CTL0045", 0},	/* SB AWE64 Value */
257 	{"OPT9250", 0},	/* Televideo card, Opti */
258 	{"@X@0001", 0},	/* CMI8330. Audio Adapter */
259 	{"@@@1001", 0},	/* Avance Logic ALS100+ */
260 	{"@@@2001", 0},	/* Avance Logic ALS120 */
261 };
262 static const struct isapnp_matchinfo isapnp_sb_devcompat[] = {
263 	{"PNPB000", 0},	/* Generic SB 1.5 */
264 	{"PNPB001", 0},	/* Generic SB 2.0 */
265 	{"PNPB002", 0},	/* Generic SB Pro */
266 	{"PNPB003", 0},	/* Generic SB 16 */
267 };
268 const struct isapnp_devinfo isapnp_sb_devinfo = {
269 	isapnp_sb_devlogic, 15,
270 	isapnp_sb_devcompat, 4,
271 };
272 
273 /* TROPIC Token-Ring */
274 static const struct isapnp_matchinfo isapnp_tr_devlogic[] = {
275 	{"IBM0000", 0},	/* IBM TROPIC Token-Ring */
276 	{"TCM3190", 0},	/* 3Com TokenLink Velocity ISA */
277 };
278 const struct isapnp_devinfo isapnp_tr_devinfo = {
279 	isapnp_tr_devlogic, 2,
280 	NULL, 0,
281 };
282 
283 /* Western Digital Disk Controller */
284 static const struct isapnp_matchinfo isapnp_wdc_devlogic[] = {
285 	{"AZT0000", 0},	/* Aztech AZT2320 IDE CDROM */
286 	{"AZT0500", 0},	/* Aztech IDE CDROM */
287 	{"OPT0007", 0},	/* OPTi Audio 16 IDE controller */
288 	{"ESS0002", 0},	/* ES1868 IDE Controller */
289 };
290 static const struct isapnp_matchinfo isapnp_wdc_devcompat[] = {
291 	{"PNP0600", 0},	/* Western Digital Compatible Controller */
292 };
293 const struct isapnp_devinfo isapnp_wdc_devinfo = {
294 	isapnp_wdc_devlogic, 4,
295 	isapnp_wdc_devcompat, 1,
296 };
297 
298 /* Microsoft Sound System */
299 static const struct isapnp_matchinfo isapnp_wss_devlogic[] = {
300 	{"AZT0001", 1},	/* Aztech AZT2320 AUDIO */
301 	{"CSC0000", 0},	/* Windows Sound System */
302 	{"CSC0100", 0},	/* CS4235 CODEC */
303 	{"CSCA800", 0},	/* Terratec EWS64 CoDec */
304 	{"ASB1611", 0},	/* AdLib NSC 16 PNP */
305 	{"ASB1622", 0},	/* AdLib MSC 32 Wave PnP V3SB */
306 };
307 const struct isapnp_devinfo isapnp_wss_devinfo = {
308 	isapnp_wss_devlogic, 6,
309 	NULL, 0,
310 };
311 
312 /* Yamaha Sound */
313 static const struct isapnp_matchinfo isapnp_ym_devlogic[] = {
314 	{"YMH0021", 0},	/* OPL3-SA2, OPL3-SA3 */
315 };
316 const struct isapnp_devinfo isapnp_ym_devinfo = {
317 	isapnp_ym_devlogic, 1,
318 	NULL, 0,
319 };
320 
321