1 /* $NetBSD: isapnpdevs.c,v 1.69 2007/06/08 17:57:34 wiz Exp $ */ 2 3 /* 4 * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. 5 * 6 * generated from: 7 * NetBSD: isapnpdevs,v 1.65 2007/06/08 17:56:21 wiz 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.69 2007/06/08 17:57:34 wiz 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 /* ESS Audio Drive */ 163 static const struct isapnp_matchinfo isapnp_ess_devlogic[] = { 164 {"ESS1868", 0}, /* ESS1868 */ 165 {"ESS1869", 0}, /* ESS1869 */ 166 {"ESS1878", 0}, /* ESS1878 */ 167 {"ESS1879", 0}, /* ESS1879 */ 168 }; 169 const struct isapnp_devinfo isapnp_ess_devinfo = { 170 isapnp_ess_devlogic, 4, 171 NULL, 0, 172 }; 173 174 /* Fujitsu FMV-18x Ethernet */ 175 static const struct isapnp_matchinfo isapnp_fmv_devlogic[] = { 176 {"FUJ01C1", 0}, /* Fujitsu FMV-183 */ 177 {"FUJ01D1", 0}, /* Fujitsu FMV-184 */ 178 }; 179 const struct isapnp_devinfo isapnp_fmv_devinfo = { 180 isapnp_fmv_devlogic, 2, 181 NULL, 0, 182 }; 183 184 /* Generic Joystick */ 185 static const struct isapnp_matchinfo isapnp_joy_devlogic[] = { 186 {"AZT0003", 0}, /* Aztech AZT2320 GAME PORT */ 187 {"AZT3001", 0}, /* Aztech GAME PORT */ 188 {"AZT3004", 0}, /* Aztech AZT1020 GAME PORT */ 189 {"CSC0001", 0}, /* CS4235 */ 190 {"CSCA801", 0}, /* Terratec EWS64XL */ 191 {"CTL7001", 0}, /* Creative Awe64 */ 192 {"CTL7002", 0}, /* Creative Vibra16CL */ 193 {"ESS0001", 0}, /* ESS1868 */ 194 {"ESS0005", 0}, /* ESS1878 */ 195 {"OPT0001", 0}, /* OPTi Audio 16 */ 196 {"PNPB02F", 0}, /* XXX broken GUS PnP */ 197 {"ASB16FD", 0}, /* AdLib NSC 16 PNP */ 198 }; 199 static const struct isapnp_matchinfo isapnp_joy_devcompat[] = { 200 {"PNPB02F", 0}, /* generic */ 201 }; 202 const struct isapnp_devinfo isapnp_joy_devinfo = { 203 isapnp_joy_devlogic, 12, 204 isapnp_joy_devcompat, 1, 205 }; 206 207 /* Gravis Ultrasound */ 208 static const struct isapnp_matchinfo isapnp_gus_devlogic[] = { 209 {"GRV0000", 0}, /* Gravis Ultrasound */ 210 {"GRV0003", 0}, /* SB Compatible Audio */ 211 {"GRV0004", 0}, /* MPU-401 GM Music */ 212 {"GRV0011", 0}, /* ATAPI IDE CD-ROM Interface */ 213 }; 214 const struct isapnp_devinfo isapnp_gus_devinfo = { 215 isapnp_gus_devlogic, 4, 216 NULL, 0, 217 }; 218 219 /* Lance Ethernet */ 220 static const struct isapnp_matchinfo isapnp_le_devlogic[] = { 221 {"TKN0010", 0}, /* Lance Ethernet on TEKNOR board */ 222 {"ATK1500", 0}, /* Lance Ethernet on Allied Telesyn board */ 223 {"CSI2203", 0}, /* Cabletron E22xx */ 224 {"BUF0001", 0}, /* Melco Inc. LGY-IV */ 225 }; 226 const struct isapnp_devinfo isapnp_le_devinfo = { 227 isapnp_le_devlogic, 4, 228 NULL, 0, 229 }; 230 231 /* MPU-401 MIDI UART */ 232 static const struct isapnp_matchinfo isapnp_mpu_devlogic[] = { 233 {"AZT0002", 0}, /* Aztech AZT2320 MPU401 MIDI */ 234 {"AZT2001", 0}, /* Aztech MPU401 MIDI */ 235 {"AZT2004", 0}, /* Aztech AZT1020 MPU401 MIDI */ 236 {"CSC0003", 0}, /* CS4235 MPU401 MIDI */ 237 }; 238 static const struct isapnp_matchinfo isapnp_mpu_devcompat[] = { 239 {"PNPB006", 0}, /* MPU401 compatible MIDI UART */ 240 }; 241 const struct isapnp_devinfo isapnp_mpu_devinfo = { 242 isapnp_mpu_devlogic, 4, 243 isapnp_mpu_devcompat, 1, 244 }; 245 246 /* NE2000 Ethernet */ 247 static const struct isapnp_matchinfo isapnp_ne_devlogic[] = { 248 {"@@@1980", 0}, /* OvisLink LE-8019R */ 249 }; 250 static const struct isapnp_matchinfo isapnp_ne_devcompat[] = { 251 {"PNP80D6", 0}, /* Digital DE305 ISAPnP */ 252 }; 253 const struct isapnp_devinfo isapnp_ne_devinfo = { 254 isapnp_ne_devlogic, 1, 255 isapnp_ne_devcompat, 1, 256 }; 257 258 /* PCMCIA bridge */ 259 static const struct isapnp_matchinfo isapnp_pcic_devlogic[] = { 260 {"SCM0469", 0}, /* SCM SwapBox Plug and Play */ 261 {"AEI0218", 0}, /* Actiontec PnP PCMCIA Adapter */ 262 }; 263 static const struct isapnp_matchinfo isapnp_pcic_devcompat[] = { 264 {"PNP0E00", 0}, /* PCIC Compatible PCMCIA Bridge */ 265 }; 266 const struct isapnp_devinfo isapnp_pcic_devinfo = { 267 isapnp_pcic_devlogic, 2, 268 isapnp_pcic_devcompat, 1, 269 }; 270 271 /* Creative Soundblaster */ 272 static const struct isapnp_matchinfo isapnp_sb_devlogic[] = { 273 {"ADS7150", 0}, /* AD1815 */ 274 {"ADS7180", 0}, /* AD1816 */ 275 {"AZT1002", 0}, /* Aztech 1002 Audio */ 276 {"AZT1003", 0}, /* Aztech 1003 Audio */ 277 {"AZT1008", 0}, /* Aztech 1008 */ 278 {"AZT1016", 0}, /* Aztech 1020 */ 279 {"CTL0001", 0}, /* SB */ 280 {"CTL0031", 0}, /* SB AWE32 */ 281 {"CTL0041", 0}, /* SB16 PnP (CT4131) */ 282 {"CTL0042", 0}, /* SB AWE64 Value */ 283 {"CTL0043", 0}, /* SB16 PnP (CT4170) */ 284 {"CTL0044", 0}, /* SB AWE64 Gold */ 285 {"CTL0045", 0}, /* SB AWE64 Value */ 286 {"OPT9250", 0}, /* Televideo card, Opti */ 287 {"@X@0001", 0}, /* CMI8330. Audio Adapter */ 288 {"@@@1001", 0}, /* Avance Logic ALS100+ */ 289 {"@@@2001", 0}, /* Avance Logic ALS120 */ 290 }; 291 static const struct isapnp_matchinfo isapnp_sb_devcompat[] = { 292 {"PNPB000", 0}, /* Generic SB 1.5 */ 293 {"PNPB001", 0}, /* Generic SB 2.0 */ 294 {"PNPB002", 0}, /* Generic SB Pro */ 295 {"PNPB003", 0}, /* Generic SB 16 */ 296 }; 297 const struct isapnp_devinfo isapnp_sb_devinfo = { 298 isapnp_sb_devlogic, 17, 299 isapnp_sb_devcompat, 4, 300 }; 301 302 /* TROPIC Token-Ring */ 303 static const struct isapnp_matchinfo isapnp_tr_devlogic[] = { 304 {"IBM0000", 0}, /* IBM TROPIC Token-Ring */ 305 {"TCM3190", 0}, /* 3Com TokenLink Velocity ISA */ 306 }; 307 const struct isapnp_devinfo isapnp_tr_devinfo = { 308 isapnp_tr_devlogic, 2, 309 NULL, 0, 310 }; 311 312 /* Western Digital Disk Controller */ 313 static const struct isapnp_matchinfo isapnp_wdc_devlogic[] = { 314 {"AZT0000", 0}, /* Aztech AZT2320 IDE CDROM */ 315 {"AZT0500", 0}, /* Aztech IDE CDROM */ 316 {"OPT0007", 0}, /* OPTi Audio 16 IDE controller */ 317 {"ESS0002", 0}, /* ES1868 IDE Controller */ 318 }; 319 static const struct isapnp_matchinfo isapnp_wdc_devcompat[] = { 320 {"PNP0600", 0}, /* Western Digital Compatible Controller */ 321 }; 322 const struct isapnp_devinfo isapnp_wdc_devinfo = { 323 isapnp_wdc_devlogic, 4, 324 isapnp_wdc_devcompat, 1, 325 }; 326 327 /* Microsoft Sound System */ 328 static const struct isapnp_matchinfo isapnp_wss_devlogic[] = { 329 {"AZT0001", 1}, /* Aztech AZT2320 AUDIO */ 330 {"CSC0000", 0}, /* Windows Sound System */ 331 {"CSC0100", 0}, /* CS4235 CODEC */ 332 {"CSCA800", 0}, /* Terratec EWS64 CoDec */ 333 {"ASB1611", 0}, /* AdLib NSC 16 PNP */ 334 {"ASB1622", 0}, /* AdLib MSC 32 Wave PnP V3SB */ 335 {"@@@0001", 0}, /* CMI8330/C3D Audio Adapter */ 336 }; 337 const struct isapnp_devinfo isapnp_wss_devinfo = { 338 isapnp_wss_devlogic, 7, 339 NULL, 0, 340 }; 341 342 /* Yamaha Sound */ 343 static const struct isapnp_matchinfo isapnp_ym_devlogic[] = { 344 {"YMH0021", 0}, /* OPL3-SA2, OPL3-SA3 */ 345 }; 346 const struct isapnp_devinfo isapnp_ym_devinfo = { 347 isapnp_ym_devlogic, 1, 348 NULL, 0, 349 }; 350 351