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