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