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