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