1 /* $NetBSD: isapnpdevs.c,v 1.70 2008/04/20 13:26:14 tsutsui Exp $ */ 2 3 /* 4 * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. 5 * 6 * generated from: 7 * NetBSD: isapnpdevs,v 1.66 2008/04/20 13:24:34 tsutsui 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.70 2008/04/20 13:26:14 tsutsui 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 /* AT Parallel Port */ 89 static const struct isapnp_matchinfo isapnp_atppc_devlogic[] = { 90 {"PNP0400", 0}, /* Generic AT Parallel Port */ 91 {"PNP0401", 0}, /* Generic ECP Prallel Port */ 92 }; 93 const struct isapnp_devinfo isapnp_atppc_devinfo = { 94 isapnp_atppc_devlogic, 2, 95 NULL, 0, 96 }; 97 98 /* National Semiconductor Serial */ 99 static const struct isapnp_matchinfo isapnp_com_devlogic[] = { 100 {"AZT4001", 0}, /* Aztech Modem */ 101 {"BDP3336", 0}, /* Best Data Prods. 336F */ 102 {"OZO8039", 0}, /* Zoom 56k flex */ 103 {"BRI1400", 0}, /* Boca 33.6 PnP */ 104 {"BRIB400", 0}, /* Boca 56k PnP */ 105 {"DAV0336", 0}, /* Davicom 33.6 PnP */ 106 {"ROK0010", 0}, /* Rockwell ? */ 107 {"ROK3360", 0}, /* Rockwell 33.6k PnP */ 108 {"USR0004", 0}, /* USR Sportster 14.4k */ 109 {"USR0006", 0}, /* USR Sportster 33.6k */ 110 {"USR0009", 0}, /* USR Courier V.Everything */ 111 {"USR2070", 0}, /* USR Sportster 56k */ 112 {"USR3031", 0}, /* USR 56k Faxmodem */ 113 {"USR3090", 0}, /* USR 56K Voice INT */ 114 {"USR9190", 0}, /* USR 56k Voice INT */ 115 {"ZTIF761", 0}, /* Zoom ComStar 33.6 */ 116 {"CIR3000", 0}, /* Cirrus Logic V43 */ 117 {"MOT0000", 0}, /* Motorola ModemSurfr */ 118 {"SMM00C1", 0}, /* Leopard 56k PnP */ 119 {"SUP1650", 0}, /* Supra 336i Sp Intl */ 120 {"SUP2480", 0}, /* SupraExpress 56i Sp V.90 */ 121 {"SUP2720", 0}, /* DIAMOND SupraExpress 56I SP V.90 */ 122 {"GVC0505", 0}, /* GVC 56k Faxmodem */ 123 {"GVC000F", 0}, /* GVC 33.6k Faxmodem */ 124 {"IOD0081", 0}, /* I-O DATA IFML-560 */ 125 }; 126 static const struct isapnp_matchinfo isapnp_com_devcompat[] = { 127 {"PNP0500", 0}, /* Generic 8250/16450 */ 128 {"PNP0501", 0}, /* Generic 16550A */ 129 }; 130 const struct isapnp_devinfo isapnp_com_devinfo = { 131 isapnp_com_devlogic, 25, 132 isapnp_com_devcompat, 2, 133 }; 134 135 /* Cirrus Logic Crystal CS89x0 Ethernet */ 136 static const struct isapnp_matchinfo isapnp_cs_devlogic[] = { 137 {"IBM1010", 0}, /* IBM EtherJet ISA */ 138 }; 139 const struct isapnp_devinfo isapnp_cs_devinfo = { 140 isapnp_cs_devlogic, 1, 141 NULL, 0, 142 }; 143 144 /* 3Com 3CXXX Ethernet */ 145 static const struct isapnp_matchinfo isapnp_ep_devlogic[] = { 146 {"TCM5051", 0}, /* 3Com 3c515 */ 147 {"TCM5090", 0}, /* 3Com 3c509B */ 148 {"TCM5091", 0}, /* 3Com 3c509B-1 */ 149 {"TCM5094", 0}, /* 3Com 3c509B-4 */ 150 {"TCM5095", 0}, /* 3Com 3c509B-5 */ 151 {"TCM5098", 0}, /* 3Com 3c509B-8 */ 152 {"FAR0002", 0}, /* Farallon EtherWave ISA */ 153 }; 154 static const struct isapnp_matchinfo isapnp_ep_devcompat[] = { 155 {"PNP80F8", 0}, /* Farallon EtherWave ISA */ 156 }; 157 const struct isapnp_devinfo isapnp_ep_devinfo = { 158 isapnp_ep_devlogic, 7, 159 isapnp_ep_devcompat, 1, 160 }; 161 162 /* Symbios SYM53C416 SCSI */ 163 static const struct isapnp_matchinfo isapnp_esp_devlogic[] = { 164 {"SLI4163", 0}, /* Symbios SYM53C416 */ 165 }; 166 const struct isapnp_devinfo isapnp_esp_devinfo = { 167 isapnp_esp_devlogic, 1, 168 NULL, 0, 169 }; 170 171 /* ESS Audio Drive */ 172 static const struct isapnp_matchinfo isapnp_ess_devlogic[] = { 173 {"ESS1868", 0}, /* ESS1868 */ 174 {"ESS1869", 0}, /* ESS1869 */ 175 {"ESS1878", 0}, /* ESS1878 */ 176 {"ESS1879", 0}, /* ESS1879 */ 177 }; 178 const struct isapnp_devinfo isapnp_ess_devinfo = { 179 isapnp_ess_devlogic, 4, 180 NULL, 0, 181 }; 182 183 /* Fujitsu FMV-18x Ethernet */ 184 static const struct isapnp_matchinfo isapnp_fmv_devlogic[] = { 185 {"FUJ01C1", 0}, /* Fujitsu FMV-183 */ 186 {"FUJ01D1", 0}, /* Fujitsu FMV-184 */ 187 }; 188 const struct isapnp_devinfo isapnp_fmv_devinfo = { 189 isapnp_fmv_devlogic, 2, 190 NULL, 0, 191 }; 192 193 /* Generic Joystick */ 194 static const struct isapnp_matchinfo isapnp_joy_devlogic[] = { 195 {"AZT0003", 0}, /* Aztech AZT2320 GAME PORT */ 196 {"AZT3001", 0}, /* Aztech GAME PORT */ 197 {"AZT3004", 0}, /* Aztech AZT1020 GAME PORT */ 198 {"CSC0001", 0}, /* CS4235 */ 199 {"CSCA801", 0}, /* Terratec EWS64XL */ 200 {"CTL7001", 0}, /* Creative Awe64 */ 201 {"CTL7002", 0}, /* Creative Vibra16CL */ 202 {"ESS0001", 0}, /* ESS1868 */ 203 {"ESS0005", 0}, /* ESS1878 */ 204 {"OPT0001", 0}, /* OPTi Audio 16 */ 205 {"PNPB02F", 0}, /* XXX broken GUS PnP */ 206 {"ASB16FD", 0}, /* AdLib NSC 16 PNP */ 207 }; 208 static const struct isapnp_matchinfo isapnp_joy_devcompat[] = { 209 {"PNPB02F", 0}, /* generic */ 210 }; 211 const struct isapnp_devinfo isapnp_joy_devinfo = { 212 isapnp_joy_devlogic, 12, 213 isapnp_joy_devcompat, 1, 214 }; 215 216 /* Gravis Ultrasound */ 217 static const struct isapnp_matchinfo isapnp_gus_devlogic[] = { 218 {"GRV0000", 0}, /* Gravis Ultrasound */ 219 {"GRV0003", 0}, /* SB Compatible Audio */ 220 {"GRV0004", 0}, /* MPU-401 GM Music */ 221 {"GRV0011", 0}, /* ATAPI IDE CD-ROM Interface */ 222 }; 223 const struct isapnp_devinfo isapnp_gus_devinfo = { 224 isapnp_gus_devlogic, 4, 225 NULL, 0, 226 }; 227 228 /* Lance Ethernet */ 229 static const struct isapnp_matchinfo isapnp_le_devlogic[] = { 230 {"TKN0010", 0}, /* Lance Ethernet on TEKNOR board */ 231 {"ATK1500", 0}, /* Lance Ethernet on Allied Telesyn board */ 232 {"CSI2203", 0}, /* Cabletron E22xx */ 233 {"BUF0001", 0}, /* Melco Inc. LGY-IV */ 234 }; 235 const struct isapnp_devinfo isapnp_le_devinfo = { 236 isapnp_le_devlogic, 4, 237 NULL, 0, 238 }; 239 240 /* MPU-401 MIDI UART */ 241 static const struct isapnp_matchinfo isapnp_mpu_devlogic[] = { 242 {"AZT0002", 0}, /* Aztech AZT2320 MPU401 MIDI */ 243 {"AZT2001", 0}, /* Aztech MPU401 MIDI */ 244 {"AZT2004", 0}, /* Aztech AZT1020 MPU401 MIDI */ 245 {"CSC0003", 0}, /* CS4235 MPU401 MIDI */ 246 }; 247 static const struct isapnp_matchinfo isapnp_mpu_devcompat[] = { 248 {"PNPB006", 0}, /* MPU401 compatible MIDI UART */ 249 }; 250 const struct isapnp_devinfo isapnp_mpu_devinfo = { 251 isapnp_mpu_devlogic, 4, 252 isapnp_mpu_devcompat, 1, 253 }; 254 255 /* NE2000 Ethernet */ 256 static const struct isapnp_matchinfo isapnp_ne_devlogic[] = { 257 {"@@@1980", 0}, /* OvisLink LE-8019R */ 258 }; 259 static const struct isapnp_matchinfo isapnp_ne_devcompat[] = { 260 {"PNP80D6", 0}, /* Digital DE305 ISAPnP */ 261 }; 262 const struct isapnp_devinfo isapnp_ne_devinfo = { 263 isapnp_ne_devlogic, 1, 264 isapnp_ne_devcompat, 1, 265 }; 266 267 /* PCMCIA bridge */ 268 static const struct isapnp_matchinfo isapnp_pcic_devlogic[] = { 269 {"SCM0469", 0}, /* SCM SwapBox Plug and Play */ 270 {"AEI0218", 0}, /* Actiontec PnP PCMCIA Adapter */ 271 }; 272 static const struct isapnp_matchinfo isapnp_pcic_devcompat[] = { 273 {"PNP0E00", 0}, /* PCIC Compatible PCMCIA Bridge */ 274 }; 275 const struct isapnp_devinfo isapnp_pcic_devinfo = { 276 isapnp_pcic_devlogic, 2, 277 isapnp_pcic_devcompat, 1, 278 }; 279 280 /* Creative Soundblaster */ 281 static const struct isapnp_matchinfo isapnp_sb_devlogic[] = { 282 {"ADS7150", 0}, /* AD1815 */ 283 {"ADS7180", 0}, /* AD1816 */ 284 {"AZT1002", 0}, /* Aztech 1002 Audio */ 285 {"AZT1003", 0}, /* Aztech 1003 Audio */ 286 {"AZT1008", 0}, /* Aztech 1008 */ 287 {"AZT1016", 0}, /* Aztech 1020 */ 288 {"CTL0001", 0}, /* SB */ 289 {"CTL0031", 0}, /* SB AWE32 */ 290 {"CTL0041", 0}, /* SB16 PnP (CT4131) */ 291 {"CTL0042", 0}, /* SB AWE64 Value */ 292 {"CTL0043", 0}, /* SB16 PnP (CT4170) */ 293 {"CTL0044", 0}, /* SB AWE64 Gold */ 294 {"CTL0045", 0}, /* SB AWE64 Value */ 295 {"OPT9250", 0}, /* Televideo card, Opti */ 296 {"@X@0001", 0}, /* CMI8330. Audio Adapter */ 297 {"@@@1001", 0}, /* Avance Logic ALS100+ */ 298 {"@@@2001", 0}, /* Avance Logic ALS120 */ 299 }; 300 static const struct isapnp_matchinfo isapnp_sb_devcompat[] = { 301 {"PNPB000", 0}, /* Generic SB 1.5 */ 302 {"PNPB001", 0}, /* Generic SB 2.0 */ 303 {"PNPB002", 0}, /* Generic SB Pro */ 304 {"PNPB003", 0}, /* Generic SB 16 */ 305 }; 306 const struct isapnp_devinfo isapnp_sb_devinfo = { 307 isapnp_sb_devlogic, 17, 308 isapnp_sb_devcompat, 4, 309 }; 310 311 /* TROPIC Token-Ring */ 312 static const struct isapnp_matchinfo isapnp_tr_devlogic[] = { 313 {"IBM0000", 0}, /* IBM TROPIC Token-Ring */ 314 {"TCM3190", 0}, /* 3Com TokenLink Velocity ISA */ 315 }; 316 const struct isapnp_devinfo isapnp_tr_devinfo = { 317 isapnp_tr_devlogic, 2, 318 NULL, 0, 319 }; 320 321 /* Western Digital Disk Controller */ 322 static const struct isapnp_matchinfo isapnp_wdc_devlogic[] = { 323 {"AZT0000", 0}, /* Aztech AZT2320 IDE CDROM */ 324 {"AZT0500", 0}, /* Aztech IDE CDROM */ 325 {"OPT0007", 0}, /* OPTi Audio 16 IDE controller */ 326 {"ESS0002", 0}, /* ES1868 IDE Controller */ 327 }; 328 static const struct isapnp_matchinfo isapnp_wdc_devcompat[] = { 329 {"PNP0600", 0}, /* Western Digital Compatible Controller */ 330 }; 331 const struct isapnp_devinfo isapnp_wdc_devinfo = { 332 isapnp_wdc_devlogic, 4, 333 isapnp_wdc_devcompat, 1, 334 }; 335 336 /* Microsoft Sound System */ 337 static const struct isapnp_matchinfo isapnp_wss_devlogic[] = { 338 {"AZT0001", 1}, /* Aztech AZT2320 AUDIO */ 339 {"CSC0000", 0}, /* Windows Sound System */ 340 {"CSC0100", 0}, /* CS4235 CODEC */ 341 {"CSCA800", 0}, /* Terratec EWS64 CoDec */ 342 {"ASB1611", 0}, /* AdLib NSC 16 PNP */ 343 {"ASB1622", 0}, /* AdLib MSC 32 Wave PnP V3SB */ 344 {"@@@0001", 0}, /* CMI8330/C3D Audio Adapter */ 345 }; 346 const struct isapnp_devinfo isapnp_wss_devinfo = { 347 isapnp_wss_devlogic, 7, 348 NULL, 0, 349 }; 350 351 /* Yamaha Sound */ 352 static const struct isapnp_matchinfo isapnp_ym_devlogic[] = { 353 {"YMH0021", 0}, /* OPL3-SA2, OPL3-SA3 */ 354 }; 355 const struct isapnp_devinfo isapnp_ym_devinfo = { 356 isapnp_ym_devlogic, 1, 357 NULL, 0, 358 }; 359 360