Home | History | Annotate | Line # | Download | only in isapnp
isapnpdevs.c revision 1.70
      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