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