diff options
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/isa/fd.c | 31 | ||||
| -rw-r--r-- | sys/dev/mca/LINKS | 2 | ||||
| -rw-r--r-- | sys/dev/mca/Makefile.mcadevs | 15 | ||||
| -rw-r--r-- | sys/dev/mca/TODO | 15 | ||||
| -rw-r--r-- | sys/dev/mca/aha_mca.c | 150 | ||||
| -rw-r--r-- | sys/dev/mca/devlist2h.awk | 113 | ||||
| -rw-r--r-- | sys/dev/mca/files.mca | 33 | ||||
| -rw-r--r-- | sys/dev/mca/if_tr_mca.c | 212 | ||||
| -rw-r--r-- | sys/dev/mca/mca.c | 168 | ||||
| -rw-r--r-- | sys/dev/mca/mca_subr.c | 107 | ||||
| -rw-r--r-- | sys/dev/mca/mcadevs | 374 | ||||
| -rw-r--r-- | sys/dev/mca/mcadevs.h | 42 | ||||
| -rw-r--r-- | sys/dev/mca/mcadevs_data.h | 358 | ||||
| -rw-r--r-- | sys/dev/mca/mcareg.h | 55 | ||||
| -rw-r--r-- | sys/dev/mca/mcavar.h | 82 |
15 files changed, 1754 insertions, 3 deletions
diff --git a/sys/dev/isa/fd.c b/sys/dev/isa/fd.c index 279e9be2c61..d5894fa8ad5 100644 --- a/sys/dev/isa/fd.c +++ b/sys/dev/isa/fd.c @@ -1,4 +1,4 @@ -/* $NetBSD: fd.c,v 1.4 2000/05/02 03:32:09 thorpej Exp $ */ +/* $NetBSD: fd.c,v 1.5 2000/05/11 15:42:00 jdolecek Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -141,8 +141,15 @@ #include <dev/isa/fdcvar.h> #if defined(__i386__) + #include <dev/ic/mc146818reg.h> /* for NVRAM access */ #include <i386/isa/nvram.h> + +#include "mca.h" +#if NMCA > 0 +#include <machine/mca_machdep.h> /* for MCA_system */ +#endif + #endif /* __i386__ */ #define FDUNIT(dev) (minor(dev) / 8) @@ -176,6 +183,14 @@ struct fd_type { char *name; }; +#if NMCA > 0 +/* MCA - specific entries */ +struct fd_type mca_fd_types[] = { + { 18,2,36,2,0xff,0x0f,0x1b,0x6c,80,2880,1,FDC_500KBPS,0xf6,1, "1.44MB" }, /* 1.44MB diskette - XXX try 16ms step rate */ + { 9,2,18,2,0xff,0x4f,0x2a,0x50,80,1440,1,FDC_250KBPS,0xf6,1, "720KB" }, /* 3.5 inch 720kB diskette - XXX try 24ms step rate */ +}; +#endif /* NMCA > 0 */ + /* The order of entries in the following table is important -- BEWARE! */ struct fd_type fd_types[] = { { 18,2,36,2,0xff,0xcf,0x1b,0x6c,80,2880,1,FDC_500KBPS,0xf6,1, "1.44MB" }, /* 1.44MB diskette */ @@ -472,11 +487,21 @@ fd_nvtotype(fdc, nvraminfo, drive) case NVRAM_DISKETTE_TYPE6: /* XXX We really ought to handle 2.88MB format. */ case NVRAM_DISKETTE_144M: - return &fd_types[0]; +#if NMCA > 0 + if (MCA_system) + return &mca_fd_types[0]; + else +#endif /* NMCA > 0 */ + return &fd_types[0]; case NVRAM_DISKETTE_360K: return &fd_types[3]; case NVRAM_DISKETTE_720K: - return &fd_types[4]; +#if NMCA > 0 + if (MCA_system) + return &mca_fd_types[1]; + else +#endif /* NMCA > 0 */ + return &fd_types[4]; default: printf("%s: drive %d: unknown device type 0x%x\n", fdc, drive, type); diff --git a/sys/dev/mca/LINKS b/sys/dev/mca/LINKS new file mode 100644 index 00000000000..dfb235ee77f --- /dev/null +++ b/sys/dev/mca/LINKS @@ -0,0 +1,2 @@ +IBM - PS/2 MicroChannel POSID - ADF files +http://servicepac.mainz.ibm.com/eprmhtml/epradf/adf0_4.htm diff --git a/sys/dev/mca/Makefile.mcadevs b/sys/dev/mca/Makefile.mcadevs new file mode 100644 index 00000000000..5e2f9e818ef --- /dev/null +++ b/sys/dev/mca/Makefile.mcadevs @@ -0,0 +1,15 @@ +# $NetBSD: Makefile.mcadevs,v 1.1 2000/05/11 15:42:02 jdolecek Exp $ +# +# The proper procedure is +# +# 1.) Change "src/sys/dev/mca/mcadevs". +# 2.) Commit "src/sys/dev/mca/mcadevs". +# 3.) Execute "make -f Makefile.mcadevs" in "src/sys/dev/mca". +# 4.) Commit "src/sys/dev/mca/mcadevs.h" and "src/sys/dev/mca/mcadevs_data.h". + + +AWK?= awk + +mcadevs.h mcadevs_data.h: mcadevs devlist2h.awk + /bin/rm -f mcadevs.h mcadevs_data.h + ${AWK} -f devlist2h.awk mcadevs diff --git a/sys/dev/mca/TODO b/sys/dev/mca/TODO new file mode 100644 index 00000000000..95eaddc611b --- /dev/null +++ b/sys/dev/mca/TODO @@ -0,0 +1,15 @@ +# $NetBSD: TODO,v 1.1 2000/05/11 15:42:03 jdolecek Exp $ + +Bugs: +* i386: detect the existence of MCA bus by BIOS call +* i386: make isa/clock.c parse PS/2 CMOS correctly +* i386: keyboard freezes when booting from floppy in fd_mountroothook + (timing issue ? works OK if I break to ddb before the mountroot hook + is executed) + +Projects: +* bus_dma(8) support (primarily for AHA-1650) +* 3Com 3c507 driver (prolly port of ef driver - originally, 1.3 ie driver + has been ported in MCA release 2.1 by Scott Telford, the ISA + attachment was then (after 1.3) split into ex, ef, ai) +* ESDI support diff --git a/sys/dev/mca/aha_mca.c b/sys/dev/mca/aha_mca.c new file mode 100644 index 00000000000..0de72193562 --- /dev/null +++ b/sys/dev/mca/aha_mca.c @@ -0,0 +1,150 @@ +/* $NetBSD: aha_mca.c,v 1.1 2000/05/11 15:42:04 jdolecek Exp $ */ + +/* + * Copyright (c) 2000 The NetBSD Foundation, Inc. + * Copyright (c) 1996-1999 Scott D. Telford. + * Copyright (c) 1994, 1996 Charles M. Hannum. All rights reserved. + * Portions: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by Charles M. Hannum. + * 4. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * Originally written by Julian Elischer (julian@tfs.com) + * for TRW Financial Systems for use under the MACH(2.5) operating system. + * + * TRW Financial Systems, in accordance with their agreement with Carnegie + * Mellon University, makes this software available to CMU to distribute + * or use in any manner that they see fit as long as this message is kept with + * the software. For this reason TFS also grants any other persons or + * organisations permission to use or modify this software. + * + * TFS supplies this software to be publicly redistributed + * on the understanding that TFS is not responsible for the correct + * functioning of this software in any circumstances. + */ + +/* + * AHA-1640 MCA bus code by Scott Telford + */ + +#include <sys/param.h> +#include <sys/types.h> +#include <sys/systm.h> +#include <sys/device.h> + +#include <machine/bus.h> +#include <machine/intr.h> + +#include <dev/scsipi/scsi_all.h> +#include <dev/scsipi/scsipi_all.h> +#include <dev/scsipi/scsiconf.h> + +#include <dev/isa/isavar.h> +#include <dev/isa/isadmavar.h> + +#include <dev/ic/ahareg.h> +#include <dev/ic/ahavar.h> + +#include <dev/mca/mcareg.h> +#include <dev/mca/mcavar.h> +#include <dev/mca/mcadevs.h> + +#define AHA_ISA_IOSIZE 4 + +int aha_mca_probe __P((struct device *, struct cfdata *, void *)); +void aha_mca_attach __P((struct device *, struct device *, void *)); + +struct cfattach aha_mca_ca = { + sizeof(struct aha_softc), aha_mca_probe, aha_mca_attach +}; + + +int +aha_mca_probe(parent, match, aux) + struct device *parent; + struct cfdata *match; + void *aux; +{ + register struct mca_attach_args *ma = aux; + + switch(ma->ma_id) { + case MCA_PRODUCT_AHA1640: + return 1; + } + + return 0; +} + + +/* + * Attach all the sub-devices we can find + */ +void +aha_mca_attach(parent, self, aux) + struct device *parent, *self; + void *aux; +{ + struct mca_attach_args *ma = aux; + struct aha_softc *sc = (void *)self; + bus_space_tag_t iot = ma->ma_iot; + bus_space_handle_t ioh; + struct aha_probe_data apd; + mca_chipset_tag_t mc = ma->ma_mc; + bus_addr_t iobase; + + printf("\n"); + + iobase=((ma->ma_pos[3] & 0x03) << 8) + 0x30 + + ((ma->ma_pos[3] & 0x40) >> 4); + + if (bus_space_map(iot, iobase, AHA_ISA_IOSIZE, 0, &ioh)) { + printf("%s: can't map i/o space\n", sc->sc_dev.dv_xname); + return; + } + + sc->sc_iot = iot; + sc->sc_ioh = ioh; + sc->sc_dmat = ma->ma_dmat; + + apd.sc_irq=(ma->ma_pos[4] & 0x7) + 8; + apd.sc_drq=ma->ma_pos[5] & 0xf; + apd.sc_scsi_dev=(ma->ma_pos[4] & 0xe0) >> 5; + +#ifdef notyet + if (apd.sc_drq != -1) + isa_dmacascade(mc, apd.sc_drq); +#endif + + sc->sc_ih = mca_intr_establish(mc, apd.sc_irq, IPL_BIO, aha_intr, sc); + if (sc->sc_ih == NULL) { + printf("%s: couldn't establish interrupt\n", + sc->sc_dev.dv_xname); + return; + } + + aha_attach(sc, &apd); +} diff --git a/sys/dev/mca/devlist2h.awk b/sys/dev/mca/devlist2h.awk new file mode 100644 index 00000000000..258b462252c --- /dev/null +++ b/sys/dev/mca/devlist2h.awk @@ -0,0 +1,113 @@ +#! /usr/bin/awk -f +# $NetBSD: devlist2h.awk,v 1.1 2000/05/11 15:42:04 jdolecek Exp $ +# +# Copyright (c) 1995, 1996 Christopher G. Demetriou +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by Christopher G. Demetriou. +# 4. The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# Adapted for MCA needs by Jaromir Dolecek. + +BEGIN { + nproducts = nvendors = 0 + dfile="mcadevs_data.h" + hfile="mcadevs.h" + FS=" " + alias="" + id="" +} +NR == 1 { + VERSION = $0 + gsub("\\$", "", VERSION) + + printf("/*\t\$NetBSD\$\t*/\n\n") > dfile + printf("/*\n") > dfile + printf(" * THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT.\n") \ + > dfile + printf(" *\n") > dfile + printf(" * generated from:\n") > dfile + printf(" *\t%s\n", VERSION) > dfile + printf(" */\n") > dfile + + printf("/*\t\$NetBSD\$\t*/\n\n") > hfile + printf("/*\n") > hfile + printf(" * THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT.\n") \ + > hfile + printf(" *\n") > hfile + printf(" * generated from:\n") > hfile + printf(" *\t%s\n", VERSION) > hfile + printf(" */\n") > hfile + + next +} + +$1 == "product" { + nproducts++ + + alias = $3 + id = $2 + + products[nproducts, 1] = $2; # product id + + # get name - it's enclosed in parenthesis + sub("[^\"]*\"", "") + sub("\".*", "") + products[nproducts, 2] = $0; # name + + # if third parameter is an alias, print appropriate entry to hfile, + # otherwise just store the entry for later processing + if (substr(alias, 1, 1) != "\"") { + printf("#define\tMCA_PRODUCT_%s\t%s\t/* %s */\n", alias, id,\ + $0) > hfile + } + +} +{ + if ($0 == "") + blanklines++ + if (blanklines < 2) { + print $0 > hfile + print $0 > dfile + } + else if (blanklines == 2) { + printf("\n/*\n * List of known MCA devices\n */\n\n") > dfile + printf("\n/*\n * Supported MCA devices\n */\n\n") > hfile + } + + next +} +END { + # print out the match tables + + printf("const struct mca_knowndev mca_knowndevs[] = {\n") > dfile + for (i = 1; i <= nproducts; i++) { + printf(" { %s,\t\"%s\" },\n", products[i, 1], + products[i, 2]) > dfile + } + printf(" { 0, NULL, }\n") > dfile + printf("};\n") > dfile +} diff --git a/sys/dev/mca/files.mca b/sys/dev/mca/files.mca new file mode 100644 index 00000000000..3487939d554 --- /dev/null +++ b/sys/dev/mca/files.mca @@ -0,0 +1,33 @@ +# $NetBSD: files.mca,v 1.1 2000/05/11 15:42:04 jdolecek Exp $ +# +# Config.new file and device description for machine-independent MCA code. +# Included by ports that need it. + +defopt MCAVERBOSE + +#device mca {[slot = -1]} +attach mca at mcabus +file dev/mca/mca.c mca needs-flag +file dev/mca/mca_subr.c mca + +# 3Com 3C523 - new in 3.0, dissapeared in 3.1; re-port from isa attach +# device ef: ether, ifnet, arp, elink, i82586 +attach ef at mca with ef_mca +file dev/mca/if_ef_mca.c ef_mca + +# 3Com 3C529 (not yet) +#attach ep at mca with ep_mca: elink +#file dev/mca/if_ep_mca.c ep_mca + +# WD/SMC 80x3/A (not yet) +#device we: ether, ifnet, arp, dp8390nic +#attach we at mca +#file dev/mca/if_we_mca.c we_mca + +# Adaptec AHA-1640 +attach aha at mca with aha_mca: isadma +file dev/mca/aha_mca.c aha_mca + +# TROPIC based Token-Ring (IBM) +attach tr at mca with tr_mca +file dev/mca/if_tr_mca.c tr_mca diff --git a/sys/dev/mca/if_tr_mca.c b/sys/dev/mca/if_tr_mca.c new file mode 100644 index 00000000000..7286f362a68 --- /dev/null +++ b/sys/dev/mca/if_tr_mca.c @@ -0,0 +1,212 @@ +/* $NetBSD: if_tr_mca.c,v 1.1 2000/05/11 15:42:04 jdolecek Exp $ */ + +/*_ + * Copyright (c) 2000 The NetBSD Foundation, Inc. + * Copyright (c) 1998, 1999 Gregory McGarry. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Gregory McGarry <g.mcgarry@qut.edu.au>. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/socket.h> +#include <sys/device.h> + +#include <machine/cpu.h> +#include <machine/bus.h> +#include <machine/intr.h> + +#include <dev/mca/mcareg.h> +#include <dev/mca/mcavar.h> +#include <dev/mca/mcadevs.h> + +#include <net/if.h> +#include <net/if_media.h> +#include <net/if_ether.h> + +#include <dev/ic/tropicreg.h> +#include <dev/ic/tropicvar.h> + +#ifdef DEBUG +#define DPRINTF(x) printf x +#else +#define DPRINTF(x) +#endif + +#define TR_PRI_IOADDR 0x0a20 +#define TR_ALT_IOADDR 0x0a24 +#define TR_PIOSIZE 4 +#define TR_MMIOSIZE 8192 +#define TR_MBPS_4 0 +#define TR_MBPS_16 1 + +int tr_mca_probe __P((struct device *, struct cfdata *, void *)); +void tr_mca_attach __P((struct device *, struct device *, void *)); + +struct cfattach tr_mca_ca = { + sizeof(struct tr_softc), tr_mca_probe, tr_mca_attach +}; + +int +tr_mca_probe(parent, match, aux) + struct device *parent; + struct cfdata *match; + void *aux; +{ + struct mca_attach_args *ma = aux; + + switch (ma->ma_id) { + case MCA_PRODUCT_ITR: + return 1; + } + + return 0; +} + + +void +tr_mca_attach(parent, self, aux) + struct device *parent, *self; + void *aux; +{ + struct tr_softc *sc = (void *) self; + struct mca_attach_args *ma = aux; + bus_space_handle_t pioh, mmioh, sramh; + int iobase, irq, sram_size, sram_addr, rom_addr; + int pos2, pos3, pos4, pos5; + + pos2 = mca_conf_read(ma->ma_mc, ma->ma_slot, 2); + pos3 = mca_conf_read(ma->ma_mc, ma->ma_slot, 3); + pos4 = mca_conf_read(ma->ma_mc, ma->ma_slot, 4); + pos5 = mca_conf_read(ma->ma_mc, ma->ma_slot, 5); + + /* + * POS register 2: (adf pos0) + * + * 7 6 5 4 3 2 1 0 + * \___________/ \__ enable: 0=adapter disabled, 1=adapter enabled + * \__________ RAM addr: pos2&0xfe + * + * POS register 3: (adf pos1) + * + * 7 6 5 4 3 2 1 0 + * | \___/ | | | \__ port address: 1=0x0a24-0x0a27, 0=0x0a20-0x0a23 + * | | \ / \____ speed: 0=4Mbps, 1=16Mbps + * | | \_______ RAM size: 00=8kb, 01=16kb, 10=32kb, 11=64kb + * | \____________ reserved: 010 + * \________________ irq component: 0=2, 1=3 (see also pos4) + * + * POS register 4: (adf pos2) + * + * 7 6 5 4 3 2 1 0 + * \___________/ \__ interrupt controller: 0=1st, 1=2nd + * \__________ ROM address: pos4&0xfe + * + * POS register 5: (adf pos3) + * + * 7 6 5 4 3 2 1 0 + * | | \_____/ + * | | \_____ reserved: 0x0 + * | \__________ autosense: 0=off, 1=on + * \____________ boot rom: 0=enabled, 1=disabled + */ + + if (pos3 & 0x01) + iobase = TR_ALT_IOADDR; + else + iobase = TR_PRI_IOADDR; + + irq = 2 + (pos3 >> 7) + ((pos4 & 0x01) << 3); + if (irq == 2) + irq = 9; + + sram_size = 8 << (((pos3 & 0x0c) >> 2) + 10); + sram_addr = (pos2 & 0xfe) << 12; + + rom_addr = (pos4 & 0xfe) << 12; + + /* map the pio registers */ + if (bus_space_map(ma->ma_iot, iobase, TR_PIOSIZE, 0, &pioh)) { + printf("%s: unable to map PIO space\n", sc->sc_dev.dv_xname); + return; + } + + /* map the mmio registers */ + if (bus_space_map(ma->ma_memt, rom_addr, TR_MMIOSIZE, 0, &mmioh)) { + printf("%s: unable to map MMIO space\n", sc->sc_dev.dv_xname); + return; + } + + /* map the sram space */ + if (bus_space_map(ma->ma_memt, sram_addr, sram_size, 0, &sramh)) { + printf("%s: unable to map SRAM space\n", sc->sc_dev.dv_xname); + return; + } + + sc->sc_piot = ma->ma_iot; + sc->sc_pioh = pioh; + sc->sc_memt = ma->ma_memt; + sc->sc_mmioh = mmioh; + sc->sc_sramh = sramh; + + /* set ACA offset */ + sc->sc_aca = TR_ACA_OFFSET; + sc->sc_memwinsz = sram_size; + sc->sc_maddr = sram_addr; + + /* + * Determine total RAM on adapter and decide how much to use. + * XXX Since we don't use RAM paging, use sc_memwinsz for now. + */ + sc->sc_memsize = sc->sc_memwinsz; + sc->sc_memreserved = 0; + + if (tr_reset(sc) != 0) + return; + + /* XXX not implemented (yet) */ + sc->sc_mediastatus = NULL; + sc->sc_mediachange = NULL; + + /* do generic attach */ + if (tr_attach(sc) != 0) + return; + + /* establish interrupt handler */ + sc->sc_ih = mca_intr_establish(ma->ma_mc, irq, IPL_NET, tr_intr, sc); + if (sc->sc_ih == NULL) + printf("%s: couldn't establish interrupt handler\n", + sc->sc_dev.dv_xname); + else + printf("%s: interrupting at irq %d\n", sc->sc_dev.dv_xname, irq); + +} diff --git a/sys/dev/mca/mca.c b/sys/dev/mca/mca.c new file mode 100644 index 00000000000..983d505b0e8 --- /dev/null +++ b/sys/dev/mca/mca.c @@ -0,0 +1,168 @@ +/* $NetBSD: mca.c,v 1.1 2000/05/11 15:42:05 jdolecek Exp $ */ + +/*- + * Copyright (c) 2000 The NetBSD Foundation, Inc. + * Copyright (c) 1996-1999 Scott D. Telford. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Scott Telford <s.telford@ed.ac.uk>. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * MCA Bus device + */ + +#include "opt_mcaverbose.h" + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/device.h> + +#include <machine/bus.h> + +#include <dev/mca/mcareg.h> +#include <dev/mca/mcavar.h> + + +int mca_match __P((struct device *, struct cfdata *, void *)); +void mca_attach __P((struct device *, struct device *, void *)); + +struct cfattach mca_ca = { + sizeof(struct device), mca_match, mca_attach +}; + +int mca_submatch __P((struct device *, struct cfdata *, void *)); +int mca_print __P((void *, const char *)); + +int +mca_match(parent, cf, aux) + struct device *parent; + struct cfdata *cf; + void *aux; +{ + struct mcabus_attach_args *mba = aux; + + if (strcmp(mba->mba_busname, cf->cf_driver->cd_name)) + return (0); + + /* sanity (only mca0 supported currently) */ + if (mba->mba_bus < 0 || mba->mba_bus > 0) + return (0); + + /* XXX check other indicators? */ + + return (1); +} + +int +mca_print(aux, pnp) + void *aux; + const char *pnp; +{ + register struct mca_attach_args *ma = aux; + char devinfo[256]; + + if (pnp) { + mca_devinfo(ma->ma_id, devinfo); + printf("%s slot %d: %s", pnp, ma->ma_slot + 1, devinfo); + } + + return (mca_issupp(ma->ma_id)) ? UNCONF : UNSUPP; +} + +int +mca_submatch(parent, cf, aux) + struct device *parent; + struct cfdata *cf; + void *aux; +{ + struct mca_attach_args *ma = aux; + + if (cf->mcacf_slot != MCA_UNKNOWN_SLOT && + cf->mcacf_slot != ma->ma_slot) + return 0; + return ((*cf->cf_attach->ca_match)(parent, cf, aux)); +} + +void +mca_attach(parent, self, aux) + struct device *parent, *self; + void *aux; +{ + struct mcabus_attach_args *mba = aux; + bus_space_tag_t iot, memt; + bus_dma_tag_t dmat; + mca_chipset_tag_t mc; + int slot; + + mca_attach_hook(parent, self, mba); + printf("\n"); + + iot = mba->mba_iot; + memt = mba->mba_memt; + mc = mba->mba_mc; + dmat = mba->mba_dmat; + + /* + * Search for and attach subdevices. + * + * NB: In the adapter setup register, slots are numbered from 0, + * but officially they are numbered from 1. + * We use the former convention internally and the latter for text + * messages and in config files. + */ + + for (slot = 0; slot < MCA_MAX_SLOTS; slot++) { + struct mca_attach_args ma; + int reg; + + ma.ma_iot = iot; + ma.ma_memt = memt; + ma.ma_dmat = dmat; + ma.ma_mc = mc; + ma.ma_slot = slot; + + for(reg = 0; reg < 8; reg++) + ma.ma_pos[reg]=mca_conf_read(mc, slot, reg); + + ma.ma_id = ma.ma_pos[0] + (ma.ma_pos[1] << 8); + if (ma.ma_id == 0xffff) /* no adapter here */ + continue; + + if (ma.ma_pos[2] & MCA_POS2_ENABLE) + config_found_sm(self, &ma, mca_print, mca_submatch); + else { + mca_print(&ma, self->dv_xname); + printf(" disabled\n"); + } + } +} diff --git a/sys/dev/mca/mca_subr.c b/sys/dev/mca/mca_subr.c new file mode 100644 index 00000000000..156aefaa7b7 --- /dev/null +++ b/sys/dev/mca/mca_subr.c @@ -0,0 +1,107 @@ +/* $NetBSD: mca_subr.c,v 1.1 2000/05/11 15:42:05 jdolecek Exp $ */ + +/*- + * Copyright (c) 2000 The NetBSD Foundation, Inc. + * Copyright (c) 1996-1999 Scott D. Telford. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Scott Telford <s.telford@ed.ac.uk>. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * MCA Bus subroutines + */ + +#include "opt_mcaverbose.h" + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/device.h> + +#include <dev/mca/mcavar.h> +#include <dev/mca/mcadevs.h> + +#ifdef MCAVERBOSE +/* + * Descriptions of of known MCA devices + */ +struct mca_knowndev { + int id; /* MCA ID */ + const char *name; /* text description */ +}; + +#include <dev/mca/mcadevs_data.h> + +#endif /* MCAVERBOSE */ + +/* supported peripheals */ +const int mca_suppdevs[] = { + MCA_PRODUCT_AHA1640, + MCA_PRODUCT_3C523, + MCA_PRODUCT_ITR, + 0 +}; + +/* + * Returns 1 if a device is supported (i.e. device driver exists for it) + * 0 otherwise. + */ +int +mca_issupp(id) + int id; +{ + int i; + for(i=0; mca_suppdevs[i]; i++) { + if (id == mca_suppdevs[i]) + return 1; + } + + return 0; +} + +void +mca_devinfo(id, cp) + int id; + char *cp; +{ +#ifdef MCAVERBOSE + const struct mca_knowndev *kdp; + + kdp = mca_knowndevs; + for (; kdp->name != NULL && kdp->id != id; kdp++); + + if (kdp->name != NULL) + sprintf(cp, "%s (0x%04x)", kdp->name, id); + else +#endif /* MCAVERBOSE */ + sprintf(cp, "product 0x%04x", id); +} diff --git a/sys/dev/mca/mcadevs b/sys/dev/mca/mcadevs new file mode 100644 index 00000000000..a2bfc01495e --- /dev/null +++ b/sys/dev/mca/mcadevs @@ -0,0 +1,374 @@ +$NetBSD: mcadevs,v 1.1 2000/05/11 15:42:05 jdolecek Exp $ + +/*- + * Copyright (c) 2000 The NetBSD Foundation, Inc. + * Copyright (c) 1996-1999 Scott D. Telford. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Scott Telford <s.telford@ed.ac.uk>. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + + +/* + * MCA device ID and description flag table. + * + * Comment indicates where entry was gleaned from: + * [1] Crynwyr packet drivers for DOS, release 11c + * [2] MCA Linux kernel patches + * [3] IBM PS/2 Model 70/80 (8570/8580) Reference Diskette + * [4] ADF files via Steve Siirila + * [5] Research Machines plc Support BBS file ADFLIST.ZIP + * [6] http://www.ncr.com/support/pc/pcdesc/library/adfs.shtml + * [7] http://www.apricot.co.uk/ftp/bbs/area40/deal.lst (Apricot Insight BBS) + * [8] QBMCA.DAT + */ + +/* + * Format is: + * product id [alias] "name" [source] + */ +product 0x002D "Madge Smart 16/4 MC RingNode Adapter" [6] +product 0x0041 "3Com 3C527 Ethernet Adapter" [6] +product 0x004E "NCR 53C700 SCSI Host Adapter" [6] +product 0x004F "NCR 53C710 SCSI Host Adapter" [6] +product 0x0061 "NCR Dual Channel Ethernet Adapter" [6] +product 0x0069 "Network Peripherals FDDI Adapter" [6] +product 0x0074 "Madge Smart 16/4 MC32 RingNode Adapter" [6] +product 0x0086 "Orchid Pro II/MC v2.0/HiColor Adapter" [7] +product 0x0092 "NCR 53C700 SCSI MCA Adapter" [6] +product 0x00C4 "Racore 16/4 Token-Ring Adapter" [6] +product 0x00C5 "Racore 16/4 Token-Ring Adapter" [6] +product 0x0100 "NCR 16/4 Token-Ring Adapter/MC" [6] +product 0x0101 "Proteon p1840 ProNET-4 Network Adapter" [6] +product 0x01B2 "Cogent E/MASTER III MCA Ethernet Adapter" [6] +product 0x01BA "NCR 53C710 SCSI Host Adapter" [6] +product 0x01BB "NCR 3360 SCSI Host Adapter" [6] +product 0x01DB "Corvus Omninet1 Adapter" [7] +product 0x0202 "Proteon p1890 4/16 Token Ring Adapter" [6] +product 0x0280 "Systech 6280 Host Adapter" [6] +product 0x0300 "NCR SIMPL SCSI Host Adapter" [6] +product 0x0301 "Wichita 6298 (ADP 3702) Adapter" [6] +product 0x0425 "Superfax Modem Adapter" [6] +product 0x04FF "Viking PS/2 Display Controller" [7] +product 0x0500 "CORE CNT-MCK Fixed Disk Adapter" [6] +product 0x0708 "BusTek BT-640A SCSI Host Adapter" [6] +product 0x0803 "Madge MCA Ring Node Adapter" [6] +product 0x0808 "BICC Isolan 4110 Ethernet Adapter" [1] +product 0x0F1F AHA1640 "Adaptec AHA-1640 SCSI Adapter" AHA-1640 ADF +product 0x0F2F "Lantana Cypress/2 Token Ring MCA" [6] +product 0x0F5F "GSS MC1000/Eizo GC40 Video Adapter" [7] +product 0x0F7F "Metacomp PSconnect/PScomm4" [6] +product 0x0FCC "D-Link Ethernet Adapter" [6] +product 0x0FDF "MICOM-Interlan NI9210 Ethernet Adapter" [1] +product 0x1185 "Ven-Tel 2400 Modem" [6] +product 0x35FF "Dual UART Adapter" [6] +product 0x5022 "Online CDI-210S (Sony) CD-ROM Adapter" [6] +product 0x5084 "Creative Labs Sound Blaster/MC" [6] +product 0x5103 "Creative Labs Sound Blaster Pro MCV CT5330" [6] +product 0x5116 "NCR Business Audio w/ FM Synthesis" [6] +product 0x5125 "Tecmar QT-60/90/125 Tape Drive Adapter" [6] +product 0x5126 "Tecmar Floppy Tape Adapter" [6] +product 0x5136 "NCR Audio Adapter w/o FM Synthesis" [6] +product 0x5333 "National Inst. MC-GPIB IEEE-488 Adapter" [6] +product 0x5500 "COREtape QIC-02 Tape Adapter" [6] +product 0x568B "MaynStream QIC-02 Tape Drive Adapter" [5] +product 0x568D "MaynStream SCSI Tape Drive Adapter" [5] +product 0x57FE "Cipher/Archive Tape Drive Adapter" [5] +product 0x5822 "Chase Serial I/O Controller (small 4-port)" [7] +product 0x5823 "Chase Serial I/O Controller (4-port)" [7] +product 0x5824 "Chase Serial I/O Controller (8-port)" [7] +product 0x5825 "Chase Serial I/O Controller (16-port)" [7] +product 0x5830 "Axel Tape Drive Adapter" [7] +product 0x5962 "Alert Technology Serial Adapter" [5] +product 0x5EEE "Hitachi CD-ROM Adapter" [5] +product 0x5F77 "Future Domain SCSI Adapter" [5] +product 0x5FF8 "Plus Passport MC Adapter" [5] +product 0x6001 "Tiara LANcard/E Ethernet Adapter" [1] +product 0x6014 "Standard Microsystems ARCNET-PS110 Adapter" [6] +product 0x6018 "Gateway Comms. G/Ethernet Adapter" [6] +product 0x601F "HP Scanner Interface Adapter" [5] +product 0x602F "Arcmaster ARCnet Adapter" [6] +product 0x6042 3C523 "3Com 3C523 Ethernet Adapter" 3C523 EtherDisk +product 0x6060 "IDEAcomm 5251 7 LU Adapter" [6] +product 0x6091 "Stallion ONboard2 Terminal Adapter" [6] +product 0x609E "Microtek MS-PS/2 Interface Adapter" [5] +product 0x60C9 "Boca Bidirectional Parallel Adapter" [6] +product 0x60D0 "Hayes JT Fax 4800P" [6] +product 0x60E5 "Boca Dual Async/Parallel Adapter 2" [5] +product 0x60ED "M-DCB/2 Disc Coprocessor Board" [6] +product 0x6127 "Future Domain MCS-600/700 SCSI Host Adapter" [7] +product 0x613D "Rabbit RB75 Remote Comms. Processor" [6] +product 0x613F "SONIC Model 50" [6] +product 0x6157 "Novell Remote III Adapter" [7] +product 0x616A "NewPort WNIC Adapter" [7] +product 0x617E "Computone PS8 8-port Adapter" [6] +product 0x61BF "Intel SatisFAXtion Adapter" [6] +product 0x61C8 "WD/SMC 8013EP/A Ethernet Adapter" [1] +product 0x61C9 "WD/SMC 8013WP/A Ethernet Adapter" [1] +product 0x61FD "Computone PSCC Cluster Controller" [6] +product 0x6201 "Quadport PS/Q I/O Adapter" [6] +product 0x6203 "Quadport PS/Q I/O Adapter" [6] +product 0x6205 "Excelan EXOS 215T Ethernet Adapter" [7] +product 0x621C "NCR 16-Port Serial Controller/MC" [6] +product 0x621F "HP ScanJet II Adapter" [6] +product 0x6222 "NCI 4700 PCI/MC" [6] +product 0x6262 "Proteon p1800 ProNET-10 Network Adapter" [6] +product 0x6263 "Arco AC-1070 IDE Adapter" [6] +product 0x626B "Apricot AdLOC Security Card" [7] +product 0x627C "3Com 3C529 Ethernet Adapter" [6] +product 0x627D "3Com 3C529-TP Ethernet Adapter" [6] +product 0x628B "Intel EtherExpress 16/MC Adapter" [1] +product 0x62B6 "Arco AC-1079 SLIM Drive Adapter" [6] +product 0x62DB "3Com 3C529 Ethernet Adapter (test mode)" [2] +product 0x62F0 "Plexus AIP2 Card" [6] +product 0x62F6 "3Com 3C529 Ethernet Adapter (10base2/T)" [2] +product 0x62F7 "3Com 3C529 Ethernet Adapter (10baseT)" [2] +product 0x6361 "Arnet Smartport/2 Communications Adapter" [6] +product 0x63B3 "CH GameCard III-Automatic/MCA Adapter" [5] +product 0x63CA "HP 27246 Ethernet Adapter" [1] +product 0x6406 "AT&T GIS 8-Port Serial Controller/MC" [8] +product 0x6407 "Stargate Adapter" [6] +product 0x64B6 "Thomas-Conrad ARC-CARD/MC" [6] +product 0x64B7 "Thomas-Conrad TCNS/MC" [7] +product 0x651B "Racore Token-Ring Adapter" [6] +product 0x651E "Racore LANpac II" [6] +product 0x6612 "Evercom Modem" [6] +product 0x6780 "Roalan/NeoTecH 4-Channel Serial Adapter" [7] +product 0x6781 "Roalan/NeoTecH Serial Adapter" [5] +product 0x6782 "Roalan/NeoTecH Parallel Adapter" [5] +product 0x6783 "Roalan/NeoTecH Serial/Parallel Adapter" [5] +product 0x6784 "Roalan/NeoTecH Dual RS-422/485 Serial Adapter" [5] +product 0x6785 "Roalan/NeoTecH RS-422/485 Serial Adapter" [6] +product 0x6786 "Roalan/NeoTecH DP/1A Dual Parallel Adapter" [5] +product 0x6787 "Roalan/NeoTecH MS/4A 4-Channel Serial Adapter" [5] +product 0x6788 "Roalan/NeoTecH MS/4B 4-Channel Serial Adapter" [5] +product 0x6789 "Roalan/NeoTecH MS/4C 4-Channel Serial Adapter" [5] +product 0x678B "NeoTecH Dual RS-232 Async. Adapter" [6] +product 0x678C "NeoTecH S2M100 Dual RS-232 Async. Adapter" [6] +product 0x678D "NeoTecH MSP/4 4-Channel Serial/Parallel Adapter" [6] +product 0x678F "BBS GPIB-3000 IEEE-488 Adapter" [5] +product 0x6792 "NeoTecH SPM121/SPM321 Serial/Parallel Adapter" [6] +product 0x6795 "NeoTecH S1M200 Single RS-422/485 Async. Adapter" [6] +product 0x6796 "NeoTecH PM101 Single Bidirectional Parallel Adapter" [6] +product 0x6797 "NeoTecH PM102 Dual Bidirectional Parallel Adapter" [6] +product 0x67E1 "NCR 8-Port Serial Controller/MC" [6] +product 0x68FF "RM Z-Net LAN Controller" [5] +product 0x6A14 "NCR WaveLAN Adapter" [6] +product 0x6A21 "Microeye 1 C Mk2 Video Digitiser" [5] +product 0x6A22 "RM Ethernet-MC/2 Adapter" [5] +product 0x6A40 "Microeye Picturebook Adapter" [5] +product 0x6A5C "Specialix RIO Communications Adapter" [7] +product 0x6A7B "Tueplan Dual Channel Parallel Adapter" [7] +product 0x6A7F "RM M-Series BBC I/O Adapter" [5] +product 0x6A8D "Quattro PS Modem" [7] +product 0x6AB4 "Mayze Syncro 24PS V.26bis Modem" [7] +product 0x6AB5 "Mayze Syncro 48PS V.27ter Modem" [7] +product 0x6ABF "RM Ethernet MC Adapter" [5] +product 0x6AE7 "Dacom Unity Gold+/2 Modem" [7] +product 0x6AFB "Miracom Keycard/PS Modem" [7] +product 0x6B76 "Network Designers Garnet 2 Adapter" [7] +product 0x6B80 "DataFlex Chameleo Modem" [7] +product 0x6B95 "CORE ESDI Fixed Disk Adapter" [6] +product 0x6B9B "Specialix Multi-port Serial Adapter" [7] +product 0x6B9C "HWF-MC2 Serial Communications Adapter" [7] +product 0x6B9D "SoftWare Forge SWF-MC1 X.25 Adapter" [7] +product 0x6BBA "Apricot On-board Ethernet Adapter" [7] +product 0x6BBB "Barr Synchronous Communications Adapter" [6] +product 0x6BBC "Apricot Synchronous Communications Adapter" [7] +product 0x6BCB "CONNECT ARCnet Adapter" [6] +product 0x6BE7 "Symicron dtsx12 Token Ring Adapter" [7] +product 0x6BFF "Torus Ethernet Adapter/MC" [6] +product 0x6C0F "Roland MIDI Processing Unit MPU-IMC" [5] +product 0x6DAC "Logitech ScanMan Adapter" [5] +product 0x6DD4 "FasTalk 2/V.32/42b" [6] +product 0x6DD5 "UDS Sync-Up 2/V.32/42b" [6] +product 0x6DD6 "UDS Sync-Up 2/201" [6] +product 0x6DD7 "UDS Sync-Up 2/V.26" [6] +product 0x6DE0 "UDS Sync-Up 2/V.32" [6] +product 0x6DE1 "UDS Sync-Up 2/T9628B" [6] +product 0x6DE2 "FasTalk 2/V.32" [6] +product 0x6DE3 "FasTalk 2/2400" [6] +product 0x6DE4 "UDS FasTalk 2/1200" [6] +product 0x6DE5 "UDS Sync-Up 2/V.22bis" [6] +product 0x6DE6 "UDS Sync-Up 2/201/212" [6] +product 0x6DE7 "UDS Sync-Up 2/208/201" [6] +product 0x6DEF "DEC DE210 (DEMCA) Ethernet Adapter" [5] +product 0x6E6C "IBM Audio Capture & Playback Adapter/A" [8] +product 0x6E78 "DCA IRMA 2-MCA Adapter" [5] +product 0x6E79 "DCA IRMA 3 3270 Adapter" [5] +product 0x6E7C "DCA Intelligent Comm Adapter" [6] +product 0x6EE7 "IMC PCnic II Ethernet Adapter" [6] +product 0x6EEE "UDS Sync-Up 2/Multi-Protocol Adapter" [6] +product 0x6EF8 "IRMA 3t 3270 Coax Adapter" [6] +product 0x6F01 "Hayes Smartmodem 2400P" [6] +product 0x6F57 "Octocom OSI8224APS Modem" [7] +product 0x6F77 "Lantana Tamarix/2 Ethernet Adapter" [6] +product 0x6FB6 "Canmax DLC 01 Serial Comms Adapter" [6] +product 0x6FBF "Natural MicroSystems WATSON" [6] +product 0x6FC0 "WD 8003E/A Ethernet Adapter" [1] +product 0x6FC1 "WD 8003ST/A Starlan Adapter" [1] +product 0x6FC2 "WD 8003W/A Ethernet Adapter" [1] +product 0x6FE4 "DigiBoard PS-COM/16" [6] +product 0x6FE5 "DigiBoard PS-COM/8" [6] +product 0x6FE6 "DigiBoard PS-COM/4" [6] +product 0x6FE9 "DigiBoard Open-Ender" [6] +product 0x6FEA "DigiBoard Open-Ender RS422" [6] +product 0x6FEC "DigiCHANNEL MC C/X Adapter" [6] +product 0x6FF0 "Arnet Multiport/2 Communications Adapter" [6] +product 0x7000 "AST Advantage/2" [6] +product 0x7001 "AST Advantage/2 w/ Dual Serial Port" [6] +product 0x7002 "AST Advantage/2 w/ Serial & Parallel Port" [6] +product 0x7007 "HyperRAM MC 32/16 Memory Expansion" [7] +product 0x7010 "Tecmar MicroRAM 386 Multifunction Board" [6] +product 0x7011 "Tecmar MicroRAM Multifunction Board" [6] +product 0x7012 "Net/One NIUps LAN Adapter" [6] +product 0x7020 "Cumulus 2Mb Memory Multifunction Adapter" [6] +product 0x7021 "Cumulus 4Mb Memory Multifunction Adapter" [6] +product 0x7022 "Cumulus 8Mb Memory Multifunction Adapter" [6] +product 0x7024 "InterQuadram QuadMEG PS8 Extended Memory/Adapter" [5] +product 0x7026 "Cumulus 2400 Baud Internal Modem" [6] +product 0x7046 "Alloy IMP8/PS Adapter" [6] +product 0x7047 "Alloy IMP2/PS Adapter" [6] +product 0x7048 "Excelogic Micromem" [6] +product 0x7049 "Micron Beyond 50/60 Memory Expansion" [5] +product 0x704E "Video Capture Adapter/A" [6] +product 0x704F "NCR MPCA/MC Adapter" [6] +product 0x7050 "AST RampagePlus/MC Memory Expansion" PCW Jul 89, p149 +product 0x7064 "AW RCP Adapter" [6] +product 0x706F "Aox MicroMASTER 386" [5] +product 0x707D "Corollary 8x4mc" [6] +product 0x707E "Irwin 4100MC Controller" [6] +product 0x708E "Kingston KTM-8000/286 Memory Expansion" [5] +product 0x708F "Kingston KTM-8000/386 Memory Expansion" [5] +product 0x70B0 "Intel AboveBoard MC32" [6] +product 0x70D0 "Kingston KTM-16000/386 Memory Expansion" [6] +product 0x70D4 "Kingston KTM-609/16 Memory Expansion" [4] +product 0x7151 "Novell NE/2-32 Ethernet Adapter" [6] +product 0x7154 "Novell NE/2 Ethernet Adapter" [1] +product 0x7188 "Mountain QIC-02 Tape Adapter" [6] +product 0x71D4 "Kingston DataCard 16 Adapter" [4] +product 0x72F3 "HyperRAM MC 32/16 SIMM-MF Memory Expansion" [7] +product 0x7411 "Quadboard PS/Q Multifunction Adapter" [6] +product 0x7422 "Quadboard PS/Q Multifunction Adapter" [6] +product 0x7520 "ALR MicroChannel AT Embedded Adapter" [6] +product 0x7522 "ALR MicroChannel AT Embedded Adapter" [6] +product 0x76DA "Quadmeg PS/Q Memory Adapter" [6] +product 0x76DE "Quadmeg PS/Q Memory Adapter" [6] +product 0x7788 "Intel AboveBoard 2 Plus" [5] +product 0x77FB "Everex EV-136 4Mb Memory Expansion" [6] +product 0x77FF "Alloy HI-2 PC Expansion Bus Interface" [6] +product 0x7A7A "Boca BOCARAM/2 PLUS Memory Expansion" [6] +product 0x7D7F "Orchid RAMQuest Extra 16/32" [6] +product 0x7E76 "Overland XL/2 9-Track Tape Coupler" [7] +product 0x7F4C "NCR 53C94 SCSI Host Adapter" [6] +product 0x7F4D "NCR 3421 SCSI Host Adapter" [6] +product 0x7F4E "NCR SCSI Host Adapter" [6] +product 0x7F4F "NCR SCSI Host Adapter" [6] +product 0x7F99 "DigiCHANNEL MC/4i or MC/8i" [6] +product 0x7FBE "FTG PXL-480 Hi-Res Lightpen Adapter" [5] +product 0x7FCE "Connect Tech Intellicon MC8 (Canmax CS-6060MCA)" [6] +product 0x7FD5 "NCI 4700 PCI/MC" [6] +product 0x7FE9 "DigiBoard Open-Ender DOS" [6] +product 0x7FEA "DigiBoard MC/Xi DOS RS422" [6] +product 0x7FF9 "Iomega PC4 SCSI Host Adapter" [5] +product 0x7FFA "Iomega PC4B-50 SCSI Host Adapter" [5] +product 0x8002 "Ahead VGA Enhancer-Z Rev. A" [6] +product 0x8009 "Vermont COBRA/2" [5] +product 0x800D "Pixelworks PS/2 Ultra Clipper Graphics Subsystem" [6] +product 0x8010 "Microeye 1C Video Digitiser" [5] +product 0x8016 "ETAP NEFTIS/20 or ATRIS/20 Display Adapter" [5] +product 0x803F "RM High Resolution Mono Display Adapter" [5] +product 0x8044 "Paradise 8514/A Plus Video Adapter" [5] +product 0x8057 "Digithurst Video Output" [5] +product 0x8088 "ATI 8514/Ultra Display Adapter" [6] +product 0x8089 "ATI Graphics Ultra MCA Video Accelerator" [6] +product 0x80A5 "Cornerstone SinglePage XL Display" [5] +product 0x80B3 "M-Motion Video Adapter/A" [6] +product 0x80C3 "Artist XJS MC" [6] +product 0x80E6 "RasterOps ColorBoard 1024MC" [6] +product 0x80E8 "Matrox MG-104/108-M Video Adapter" [7] +product 0x80EC "Matrox MGA Video Adapter" [6] +product 0x80F6 "RasterOps ColorBoard 1024MC" [6] +product 0x812E "NCR 3350/3355 HPG Video Adapter (w/o ROM)" [6] +product 0x8202 "Ahead VGA Enhancer-Z Rev. A" [6] +product 0x8EF8 "IBM Expansion Unit SCSI Adapter" [2] +product 0x8EFC "IBM Fast SCSI-2 Adapter" [2] +product 0x8EFD "IBM 7568 SCSI Adapter w/cache" [2] +product 0x8EFE "IBM SCSI Adapter" [3] +product 0x8EFF "IBM SCSI Adapter w/cache" [3] +product 0x8FA0 "IBM LANStreamer MC 32 Adapter" [6] +product 0x8FC8 "IBM Token Ring 16/4 Busmaster Server Adapter/A" [6] +product 0x8FD6 "IBM Audiovation Adapter" PS/2 FAQ +product 0x8FD8 "IBM XGA/XGA-2 Display Adapter" [2] +product 0x8FD9 "IBM XGA/XGA-2 Display Adapter" [2] +product 0x8FDA "IBM XGA/XGA-2 Display Adapter" [2] +product 0x8FDB "IBM XGA/XGA-2 Display Adapter" [2] +product 0xDDFF "IBM ESDI Fixed Disk Controller" [3] +product 0xDEFF "IBM Multi-Protocol Communications Adapter" [3] +product 0xDF7F "IBM 3363 Optical Disk Adapter" [5] +product 0xDF9F "IBM Integ. ESDI Fixed Disk & Controller" [3] +product 0xDFBF "IBM 6157 Streaming Tape Adapter" [5] +product 0xDFFA "IBM 5.25in Diskette Adapter/A" [5] +product 0xDFFD "IBM ST506 Fixed Disk Adapter" [6] +product 0xE000 "IBM Token Ring Adapter/A" [7] +product 0xE001 ITR "IBM Token Ring 16/4 Adapter/A" [2] +product 0xE016 "IBM 300/1200/2400 Internal Modem/A" [6] +product 0xE04E "IBM High Speed Adapter/A" [5] +product 0xE04F "IBM 3119 Adapter/A" [5] +product 0xE1FF "IBM 3270 Connection Version B" [3] +product 0xE7FF "IBM 3270 Connection Version A" [3] +product 0xE9FF "IBM Expansion Unit Model 002" [5] +product 0xEDFF "IBM Internal Modem" [3] +product 0xEEBB "Miracom OEM Modem" [7] +product 0xEEE7 "IBM Serial Port 2" [6] +product 0xEEFF "IBM Dual Async Adapter" [3] +product 0xEF7F "IBM 8514/A Display Adapter" [3] +product 0xEFCF "IBM Store Loop Adapter/A" [6] +product 0xEFD4 "IBM Ethernet Adapter/A (10base2)" [1] +product 0xEFD5 "IBM Ethernet Adapter/A (10baseT)" [1] +product 0xEFDC "Intel DS2 Adapter" [6] +product 0xEFDF "ARCnet ASTER/2 Adapter" [6] +product 0xEFE5 "IBM Ethernet Adapter/A" [1] +product 0xEFEF "IBM PC Network Adapter" [3] +product 0xEFF0 "IBM Realtime I/f Co-proc. Multiport/2 or X.25/2" [5] +product 0xEFF5 "UB NIC-PS/2 Ethernet Adapter" [1] +product 0xEFF6 "IBM PagePrinter Adapter/2" [5] +product 0xEFFD "IBM VGA Adapter" [5] +product 0xF04F "IBM 3117 Scanner Adapter/A" [5] +product 0xF7F7 "IBM 2-8Mb 80286 Memory Expansion" [5] +product 0xF7FE "IBM Expanded Memory" [5] +product 0xFAFF "IBM 32-bit Memory Expansion" [7] +product 0xFCFF "IBM Memory Expansion" [5] +product 0xFDDE "IBM Enhanced 80386 Memory Expansion w/ROM" [5] +product 0xFDDF "IBM Enhanced 80386 Memory Expansion" [5] +product 0xFEFE "IBM 2Mb 16-bit Memory Adapter" [5] +product 0xFFF8 "IBM 5250 Workstation Emulation Adapter" [5] diff --git a/sys/dev/mca/mcadevs.h b/sys/dev/mca/mcadevs.h new file mode 100644 index 00000000000..adb6e3f39e4 --- /dev/null +++ b/sys/dev/mca/mcadevs.h @@ -0,0 +1,42 @@ +/* $NetBSD: mcadevs.h,v 1.1 2000/05/11 15:42:06 jdolecek Exp $ */ + +/* + * THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT. + * + * generated from: + * NetBSD + */ + +/* + * Copyright (c) 1996-1999 Scott D. Telford. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/ + * 3. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * Supported MCA devices + */ + +#define MCA_PRODUCT_AHA1640 0x0F1F /* Adaptec AHA-1640 SCSI Adapter */ +#define MCA_PRODUCT_3C523 0x6042 /* 3Com 3C523 Ethernet Adapter */ +#define MCA_PRODUCT_ITR 0xE001 /* IBM Token Ring 16/4 Adapter/A */ diff --git a/sys/dev/mca/mcadevs_data.h b/sys/dev/mca/mcadevs_data.h new file mode 100644 index 00000000000..215a04d8cb7 --- /dev/null +++ b/sys/dev/mca/mcadevs_data.h @@ -0,0 +1,358 @@ +/* $NetBSD: mcadevs_data.h,v 1.1 2000/05/11 15:42:06 jdolecek Exp $ */ + +/* + * THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT. + * + * generated from: + * NetBSD + */ + +/* + * Copyright (c) 1996-1999 Scott D. Telford. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/ + * 3. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * List of known MCA devices + */ + +const struct mca_knowndev mca_knowndevs[] = { + { 0x002D, "Madge Smart 16/4 MC RingNode Adapter" }, + { 0x0041, "3Com 3C527 Ethernet Adapter" }, + { 0x004E, "NCR 53C700 SCSI Host Adapter" }, + { 0x004F, "NCR 53C710 SCSI Host Adapter" }, + { 0x0061, "NCR Dual Channel Ethernet Adapter" }, + { 0x0069, "Network Peripherals FDDI Adapter" }, + { 0x0074, "Madge Smart 16/4 MC32 RingNode Adapter" }, + { 0x0086, "Orchid Pro II/MC v2.0/HiColor Adapter" }, + { 0x0092, "NCR 53C700 SCSI MCA Adapter" }, + { 0x00C4, "Racore 16/4 Token-Ring Adapter" }, + { 0x00C5, "Racore 16/4 Token-Ring Adapter" }, + { 0x0100, "NCR 16/4 Token-Ring Adapter/MC" }, + { 0x0101, "Proteon p1840 ProNET-4 Network Adapter" }, + { 0x01B2, "Cogent E/MASTER III MCA Ethernet Adapter" }, + { 0x01BA, "NCR 53C710 SCSI Host Adapter" }, + { 0x01BB, "NCR 3360 SCSI Host Adapter" }, + { 0x01DB, "Corvus Omninet1 Adapter" }, + { 0x0202, "Proteon p1890 4/16 Token Ring Adapter" }, + { 0x0280, "Systech 6280 Host Adapter" }, + { 0x0300, "NCR SIMPL SCSI Host Adapter" }, + { 0x0301, "Wichita 6298 (ADP 3702) Adapter" }, + { 0x0425, "Superfax Modem Adapter" }, + { 0x04FF, "Viking PS/2 Display Controller" }, + { 0x0500, "CORE CNT-MCK Fixed Disk Adapter" }, + { 0x0708, "BusTek BT-640A SCSI Host Adapter" }, + { 0x0803, "Madge MCA Ring Node Adapter" }, + { 0x0808, "BICC Isolan 4110 Ethernet Adapter" }, + { 0x0F1F, "Adaptec AHA-1640 SCSI Adapter" }, + { 0x0F2F, "Lantana Cypress/2 Token Ring MCA" }, + { 0x0F5F, "GSS MC1000/Eizo GC40 Video Adapter" }, + { 0x0F7F, "Metacomp PSconnect/PScomm4" }, + { 0x0FCC, "D-Link Ethernet Adapter" }, + { 0x0FDF, "MICOM-Interlan NI9210 Ethernet Adapter" }, + { 0x1185, "Ven-Tel 2400 Modem" }, + { 0x35FF, "Dual UART Adapter" }, + { 0x5022, "Online CDI-210S (Sony) CD-ROM Adapter" }, + { 0x5084, "Creative Labs Sound Blaster/MC" }, + { 0x5103, "Creative Labs Sound Blaster Pro MCV CT5330" }, + { 0x5116, "NCR Business Audio w/ FM Synthesis" }, + { 0x5125, "Tecmar QT-60/90/125 Tape Drive Adapter" }, + { 0x5126, "Tecmar Floppy Tape Adapter" }, + { 0x5136, "NCR Audio Adapter w/o FM Synthesis" }, + { 0x5333, "National Inst. MC-GPIB IEEE-488 Adapter" }, + { 0x5500, "COREtape QIC-02 Tape Adapter" }, + { 0x568B, "MaynStream QIC-02 Tape Drive Adapter" }, + { 0x568D, "MaynStream SCSI Tape Drive Adapter" }, + { 0x57FE, "Cipher/Archive Tape Drive Adapter" }, + { 0x5822, "Chase Serial I/O Controller (small 4-port)" }, + { 0x5823, "Chase Serial I/O Controller (4-port)" }, + { 0x5824, "Chase Serial I/O Controller (8-port)" }, + { 0x5825, "Chase Serial I/O Controller (16-port)" }, + { 0x5830, "Axel Tape Drive Adapter" }, + { 0x5962, "Alert Technology Serial Adapter" }, + { 0x5EEE, "Hitachi CD-ROM Adapter" }, + { 0x5F77, "Future Domain SCSI Adapter" }, + { 0x5FF8, "Plus Passport MC Adapter" }, + { 0x6001, "Tiara LANcard/E Ethernet Adapter" }, + { 0x6014, "Standard Microsystems ARCNET-PS110 Adapter" }, + { 0x6018, "Gateway Comms. G/Ethernet Adapter" }, + { 0x601F, "HP Scanner Interface Adapter" }, + { 0x602F, "Arcmaster ARCnet Adapter" }, + { 0x6042, "3Com 3C523 Ethernet Adapter" }, + { 0x6060, "IDEAcomm 5251 7 LU Adapter" }, + { 0x6091, "Stallion ONboard2 Terminal Adapter" }, + { 0x609E, "Microtek MS-PS/2 Interface Adapter" }, + { 0x60C9, "Boca Bidirectional Parallel Adapter" }, + { 0x60D0, "Hayes JT Fax 4800P" }, + { 0x60E5, "Boca Dual Async/Parallel Adapter 2" }, + { 0x60ED, "M-DCB/2 Disc Coprocessor Board" }, + { 0x6127, "Future Domain MCS-600/700 SCSI Host Adapter" }, + { 0x613D, "Rabbit RB75 Remote Comms. Processor" }, + { 0x613F, "SONIC Model 50" }, + { 0x6157, "Novell Remote III Adapter" }, + { 0x616A, "NewPort WNIC Adapter" }, + { 0x617E, "Computone PS8 8-port Adapter" }, + { 0x61BF, "Intel SatisFAXtion Adapter" }, + { 0x61C8, "WD/SMC 8013EP/A Ethernet Adapter" }, + { 0x61C9, "WD/SMC 8013WP/A Ethernet Adapter" }, + { 0x61FD, "Computone PSCC Cluster Controller" }, + { 0x6201, "Quadport PS/Q I/O Adapter" }, + { 0x6203, "Quadport PS/Q I/O Adapter" }, + { 0x6205, "Excelan EXOS 215T Ethernet Adapter" }, + { 0x621C, "NCR 16-Port Serial Controller/MC" }, + { 0x621F, "HP ScanJet II Adapter" }, + { 0x6222, "NCI 4700 PCI/MC" }, + { 0x6262, "Proteon p1800 ProNET-10 Network Adapter" }, + { 0x6263, "Arco AC-1070 IDE Adapter" }, + { 0x626B, "Apricot AdLOC Security Card" }, + { 0x627C, "3Com 3C529 Ethernet Adapter" }, + { 0x627D, "3Com 3C529-TP Ethernet Adapter" }, + { 0x628B, "Intel EtherExpress 16/MC Adapter" }, + { 0x62B6, "Arco AC-1079 SLIM Drive Adapter" }, + { 0x62DB, "3Com 3C529 Ethernet Adapter (test mode)" }, + { 0x62F0, "Plexus AIP2 Card" }, + { 0x62F6, "3Com 3C529 Ethernet Adapter (10base2/T)" }, + { 0x62F7, "3Com 3C529 Ethernet Adapter (10baseT)" }, + { 0x6361, "Arnet Smartport/2 Communications Adapter" }, + { 0x63B3, "CH GameCard III-Automatic/MCA Adapter" }, + { 0x63CA, "HP 27246 Ethernet Adapter" }, + { 0x6406, "AT&T GIS 8-Port Serial Controller/MC" }, + { 0x6407, "Stargate Adapter" }, + { 0x64B6, "Thomas-Conrad ARC-CARD/MC" }, + { 0x64B7, "Thomas-Conrad TCNS/MC" }, + { 0x651B, "Racore Token-Ring Adapter" }, + { 0x651E, "Racore LANpac II" }, + { 0x6612, "Evercom Modem" }, + { 0x6780, "Roalan/NeoTecH 4-Channel Serial Adapter" }, + { 0x6781, "Roalan/NeoTecH Serial Adapter" }, + { 0x6782, "Roalan/NeoTecH Parallel Adapter" }, + { 0x6783, "Roalan/NeoTecH Serial/Parallel Adapter" }, + { 0x6784, "Roalan/NeoTecH Dual RS-422/485 Serial Adapter" }, + { 0x6785, "Roalan/NeoTecH RS-422/485 Serial Adapter" }, + { 0x6786, "Roalan/NeoTecH DP/1A Dual Parallel Adapter" }, + { 0x6787, "Roalan/NeoTecH MS/4A 4-Channel Serial Adapter" }, + { 0x6788, "Roalan/NeoTecH MS/4B 4-Channel Serial Adapter" }, + { 0x6789, "Roalan/NeoTecH MS/4C 4-Channel Serial Adapter" }, + { 0x678B, "NeoTecH Dual RS-232 Async. Adapter" }, + { 0x678C, "NeoTecH S2M100 Dual RS-232 Async. Adapter" }, + { 0x678D, "NeoTecH MSP/4 4-Channel Serial/Parallel Adapter" }, + { 0x678F, "BBS GPIB-3000 IEEE-488 Adapter" }, + { 0x6792, "NeoTecH SPM121/SPM321 Serial/Parallel Adapter" }, + { 0x6795, "NeoTecH S1M200 Single RS-422/485 Async. Adapter" }, + { 0x6796, "NeoTecH PM101 Single Bidirectional Parallel Adapter" }, + { 0x6797, "NeoTecH PM102 Dual Bidirectional Parallel Adapter" }, + { 0x67E1, "NCR 8-Port Serial Controller/MC" }, + { 0x68FF, "RM Z-Net LAN Controller" }, + { 0x6A14, "NCR WaveLAN Adapter" }, + { 0x6A21, "Microeye 1 C Mk2 Video Digitiser" }, + { 0x6A22, "RM Ethernet-MC/2 Adapter" }, + { 0x6A40, "Microeye Picturebook Adapter" }, + { 0x6A5C, "Specialix RIO Communications Adapter" }, + { 0x6A7B, "Tueplan Dual Channel Parallel Adapter" }, + { 0x6A7F, "RM M-Series BBC I/O Adapter" }, + { 0x6A8D, "Quattro PS Modem" }, + { 0x6AB4, "Mayze Syncro 24PS V.26bis Modem" }, + { 0x6AB5, "Mayze Syncro 48PS V.27ter Modem" }, + { 0x6ABF, "RM Ethernet MC Adapter" }, + { 0x6AE7, "Dacom Unity Gold+/2 Modem" }, + { 0x6AFB, "Miracom Keycard/PS Modem" }, + { 0x6B76, "Network Designers Garnet 2 Adapter" }, + { 0x6B80, "DataFlex Chameleo Modem" }, + { 0x6B95, "CORE ESDI Fixed Disk Adapter" }, + { 0x6B9B, "Specialix Multi-port Serial Adapter" }, + { 0x6B9C, "HWF-MC2 Serial Communications Adapter" }, + { 0x6B9D, "SoftWare Forge SWF-MC1 X.25 Adapter" }, + { 0x6BBA, "Apricot On-board Ethernet Adapter" }, + { 0x6BBB, "Barr Synchronous Communications Adapter" }, + { 0x6BBC, "Apricot Synchronous Communications Adapter" }, + { 0x6BCB, "CONNECT ARCnet Adapter" }, + { 0x6BE7, "Symicron dtsx12 Token Ring Adapter" }, + { 0x6BFF, "Torus Ethernet Adapter/MC" }, + { 0x6C0F, "Roland MIDI Processing Unit MPU-IMC" }, + { 0x6DAC, "Logitech ScanMan Adapter" }, + { 0x6DD4, "FasTalk 2/V.32/42b" }, + { 0x6DD5, "UDS Sync-Up 2/V.32/42b" }, + { 0x6DD6, "UDS Sync-Up 2/201" }, + { 0x6DD7, "UDS Sync-Up 2/V.26" }, + { 0x6DE0, "UDS Sync-Up 2/V.32" }, + { 0x6DE1, "UDS Sync-Up 2/T9628B" }, + { 0x6DE2, "FasTalk 2/V.32" }, + { 0x6DE3, "FasTalk 2/2400" }, + { 0x6DE4, "UDS FasTalk 2/1200" }, + { 0x6DE5, "UDS Sync-Up 2/V.22bis" }, + { 0x6DE6, "UDS Sync-Up 2/201/212" }, + { 0x6DE7, "UDS Sync-Up 2/208/201" }, + { 0x6DEF, "DEC DE210 (DEMCA) Ethernet Adapter" }, + { 0x6E6C, "IBM Audio Capture & Playback Adapter/A" }, + { 0x6E78, "DCA IRMA 2-MCA Adapter" }, + { 0x6E79, "DCA IRMA 3 3270 Adapter" }, + { 0x6E7C, "DCA Intelligent Comm Adapter" }, + { 0x6EE7, "IMC PCnic II Ethernet Adapter" }, + { 0x6EEE, "UDS Sync-Up 2/Multi-Protocol Adapter" }, + { 0x6EF8, "IRMA 3t 3270 Coax Adapter" }, + { 0x6F01, "Hayes Smartmodem 2400P" }, + { 0x6F57, "Octocom OSI8224APS Modem" }, + { 0x6F77, "Lantana Tamarix/2 Ethernet Adapter" }, + { 0x6FB6, "Canmax DLC 01 Serial Comms Adapter" }, + { 0x6FBF, "Natural MicroSystems WATSON" }, + { 0x6FC0, "WD 8003E/A Ethernet Adapter" }, + { 0x6FC1, "WD 8003ST/A Starlan Adapter" }, + { 0x6FC2, "WD 8003W/A Ethernet Adapter" }, + { 0x6FE4, "DigiBoard PS-COM/16" }, + { 0x6FE5, "DigiBoard PS-COM/8" }, + { 0x6FE6, "DigiBoard PS-COM/4" }, + { 0x6FE9, "DigiBoard Open-Ender" }, + { 0x6FEA, "DigiBoard Open-Ender RS422" }, + { 0x6FEC, "DigiCHANNEL MC C/X Adapter" }, + { 0x6FF0, "Arnet Multiport/2 Communications Adapter" }, + { 0x7000, "AST Advantage/2" }, + { 0x7001, "AST Advantage/2 w/ Dual Serial Port" }, + { 0x7002, "AST Advantage/2 w/ Serial & Parallel Port" }, + { 0x7007, "HyperRAM MC 32/16 Memory Expansion" }, + { 0x7010, "Tecmar MicroRAM 386 Multifunction Board" }, + { 0x7011, "Tecmar MicroRAM Multifunction Board" }, + { 0x7012, "Net/One NIUps LAN Adapter" }, + { 0x7020, "Cumulus 2Mb Memory Multifunction Adapter" }, + { 0x7021, "Cumulus 4Mb Memory Multifunction Adapter" }, + { 0x7022, "Cumulus 8Mb Memory Multifunction Adapter" }, + { 0x7024, "InterQuadram QuadMEG PS8 Extended Memory/Adapter" }, + { 0x7026, "Cumulus 2400 Baud Internal Modem" }, + { 0x7046, "Alloy IMP8/PS Adapter" }, + { 0x7047, "Alloy IMP2/PS Adapter" }, + { 0x7048, "Excelogic Micromem" }, + { 0x7049, "Micron Beyond 50/60 Memory Expansion" }, + { 0x704E, "Video Capture Adapter/A" }, + { 0x704F, "NCR MPCA/MC Adapter" }, + { 0x7050, "AST RampagePlus/MC Memory Expansion" }, + { 0x7064, "AW RCP Adapter" }, + { 0x706F, "Aox MicroMASTER 386" }, + { 0x707D, "Corollary 8x4mc" }, + { 0x707E, "Irwin 4100MC Controller" }, + { 0x708E, "Kingston KTM-8000/286 Memory Expansion" }, + { 0x708F, "Kingston KTM-8000/386 Memory Expansion" }, + { 0x70B0, "Intel AboveBoard MC32" }, + { 0x70D0, "Kingston KTM-16000/386 Memory Expansion" }, + { 0x70D4, "Kingston KTM-609/16 Memory Expansion" }, + { 0x7151, "Novell NE/2-32 Ethernet Adapter" }, + { 0x7154, "Novell NE/2 Ethernet Adapter" }, + { 0x7188, "Mountain QIC-02 Tape Adapter" }, + { 0x71D4, "Kingston DataCard 16 Adapter" }, + { 0x72F3, "HyperRAM MC 32/16 SIMM-MF Memory Expansion" }, + { 0x7411, "Quadboard PS/Q Multifunction Adapter" }, + { 0x7422, "Quadboard PS/Q Multifunction Adapter" }, + { 0x7520, "ALR MicroChannel AT Embedded Adapter" }, + { 0x7522, "ALR MicroChannel AT Embedded Adapter" }, + { 0x76DA, "Quadmeg PS/Q Memory Adapter" }, + { 0x76DE, "Quadmeg PS/Q Memory Adapter" }, + { 0x7788, "Intel AboveBoard 2 Plus" }, + { 0x77FB, "Everex EV-136 4Mb Memory Expansion" }, + { 0x77FF, "Alloy HI-2 PC Expansion Bus Interface" }, + { 0x7A7A, "Boca BOCARAM/2 PLUS Memory Expansion" }, + { 0x7D7F, "Orchid RAMQuest Extra 16/32" }, + { 0x7E76, "Overland XL/2 9-Track Tape Coupler" }, + { 0x7F4C, "NCR 53C94 SCSI Host Adapter" }, + { 0x7F4D, "NCR 3421 SCSI Host Adapter" }, + { 0x7F4E, "NCR SCSI Host Adapter" }, + { 0x7F4F, "NCR SCSI Host Adapter" }, + { 0x7F99, "DigiCHANNEL MC/4i or MC/8i" }, + { 0x7FBE, "FTG PXL-480 Hi-Res Lightpen Adapter" }, + { 0x7FCE, "Connect Tech Intellicon MC8 (Canmax CS-6060MCA)" }, + { 0x7FD5, "NCI 4700 PCI/MC" }, + { 0x7FE9, "DigiBoard Open-Ender DOS" }, + { 0x7FEA, "DigiBoard MC/Xi DOS RS422" }, + { 0x7FF9, "Iomega PC4 SCSI Host Adapter" }, + { 0x7FFA, "Iomega PC4B-50 SCSI Host Adapter" }, + { 0x8002, "Ahead VGA Enhancer-Z Rev. A" }, + { 0x8009, "Vermont COBRA/2" }, + { 0x800D, "Pixelworks PS/2 Ultra Clipper Graphics Subsystem" }, + { 0x8010, "Microeye 1C Video Digitiser" }, + { 0x8016, "ETAP NEFTIS/20 or ATRIS/20 Display Adapter" }, + { 0x803F, "RM High Resolution Mono Display Adapter" }, + { 0x8044, "Paradise 8514/A Plus Video Adapter" }, + { 0x8057, "Digithurst Video Output" }, + { 0x8088, "ATI 8514/Ultra Display Adapter" }, + { 0x8089, "ATI Graphics Ultra MCA Video Accelerator" }, + { 0x80A5, "Cornerstone SinglePage XL Display" }, + { 0x80B3, "M-Motion Video Adapter/A" }, + { 0x80C3, "Artist XJS MC" }, + { 0x80E6, "RasterOps ColorBoard 1024MC" }, + { 0x80E8, "Matrox MG-104/108-M Video Adapter" }, + { 0x80EC, "Matrox MGA Video Adapter" }, + { 0x80F6, "RasterOps ColorBoard 1024MC" }, + { 0x812E, "NCR 3350/3355 HPG Video Adapter (w/o ROM)" }, + { 0x8202, "Ahead VGA Enhancer-Z Rev. A" }, + { 0x8EF8, "IBM Expansion Unit SCSI Adapter" }, + { 0x8EFC, "IBM Fast SCSI-2 Adapter" }, + { 0x8EFD, "IBM 7568 SCSI Adapter w/cache" }, + { 0x8EFE, "IBM SCSI Adapter" }, + { 0x8EFF, "IBM SCSI Adapter w/cache" }, + { 0x8FA0, "IBM LANStreamer MC 32 Adapter" }, + { 0x8FC8, "IBM Token Ring 16/4 Busmaster Server Adapter/A" }, + { 0x8FD6, "IBM Audiovation Adapter" }, + { 0x8FD8, "IBM XGA/XGA-2 Display Adapter" }, + { 0x8FD9, "IBM XGA/XGA-2 Display Adapter" }, + { 0x8FDA, "IBM XGA/XGA-2 Display Adapter" }, + { 0x8FDB, "IBM XGA/XGA-2 Display Adapter" }, + { 0xDDFF, "IBM ESDI Fixed Disk Controller" }, + { 0xDEFF, "IBM Multi-Protocol Communications Adapter" }, + { 0xDF7F, "IBM 3363 Optical Disk Adapter" }, + { 0xDF9F, "IBM Integ. ESDI Fixed Disk & Controller" }, + { 0xDFBF, "IBM 6157 Streaming Tape Adapter" }, + { 0xDFFA, "IBM 5.25in Diskette Adapter/A" }, + { 0xDFFD, "IBM ST506 Fixed Disk Adapter" }, + { 0xE000, "IBM Token Ring Adapter/A" }, + { 0xE001, "IBM Token Ring 16/4 Adapter/A" }, + { 0xE016, "IBM 300/1200/2400 Internal Modem/A" }, + { 0xE04E, "IBM High Speed Adapter/A" }, + { 0xE04F, "IBM 3119 Adapter/A" }, + { 0xE1FF, "IBM 3270 Connection Version B" }, + { 0xE7FF, "IBM 3270 Connection Version A" }, + { 0xE9FF, "IBM Expansion Unit Model 002" }, + { 0xEDFF, "IBM Internal Modem" }, + { 0xEEBB, "Miracom OEM Modem" }, + { 0xEEE7, "IBM Serial Port 2" }, + { 0xEEFF, "IBM Dual Async Adapter" }, + { 0xEF7F, "IBM 8514/A Display Adapter" }, + { 0xEFCF, "IBM Store Loop Adapter/A" }, + { 0xEFD4, "IBM Ethernet Adapter/A (10base2)" }, + { 0xEFD5, "IBM Ethernet Adapter/A (10baseT)" }, + { 0xEFDC, "Intel DS2 Adapter" }, + { 0xEFDF, "ARCnet ASTER/2 Adapter" }, + { 0xEFE5, "IBM Ethernet Adapter/A" }, + { 0xEFEF, "IBM PC Network Adapter" }, + { 0xEFF0, "IBM Realtime I/f Co-proc. Multiport/2 or X.25/2" }, + { 0xEFF5, "UB NIC-PS/2 Ethernet Adapter" }, + { 0xEFF6, "IBM PagePrinter Adapter/2" }, + { 0xEFFD, "IBM VGA Adapter" }, + { 0xF04F, "IBM 3117 Scanner Adapter/A" }, + { 0xF7F7, "IBM 2-8Mb 80286 Memory Expansion" }, + { 0xF7FE, "IBM Expanded Memory" }, + { 0xFAFF, "IBM 32-bit Memory Expansion" }, + { 0xFCFF, "IBM Memory Expansion" }, + { 0xFDDE, "IBM Enhanced 80386 Memory Expansion w/ROM" }, + { 0xFDDF, "IBM Enhanced 80386 Memory Expansion" }, + { 0xFEFE, "IBM 2Mb 16-bit Memory Adapter" }, + { 0xFFF8, "IBM 5250 Workstation Emulation Adapter" }, + { 0, NULL, } +}; diff --git a/sys/dev/mca/mcareg.h b/sys/dev/mca/mcareg.h new file mode 100644 index 00000000000..ec6984026dc --- /dev/null +++ b/sys/dev/mca/mcareg.h @@ -0,0 +1,55 @@ +/* $NetBSD: mcareg.h,v 1.1 2000/05/11 15:42:06 jdolecek Exp $ */ + +/*- + * Copyright (c) 2000 The NetBSD Foundation, Inc. + * Copyright (c) 1996-1999 Scott D. Telford. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Scott Telford <s.telford@ed.ac.uk>. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef _DEV_MCA_MCAREG_H_ +#define _DEV_MCA_MCAREG_H_ + +/* + * Standardized MCA configuration information + */ + +#define MCA_MAX_SLOTS 8 /* max number of slots per bus */ + +/* POS register bits */ + +#define MCA_POS2_ENABLE 0x01 /* POS2, hi => adapter enabled */ +#define MCA_POS5_CHCK_STAT 0x40 /* POS5, lo => CHCK status available */ +#define MCA_POS5_CHCK 0x80 /* POS5, lo => adapter CHCK signal */ + +#endif /* _DEV_MCA_MCAREG_H_ */ diff --git a/sys/dev/mca/mcavar.h b/sys/dev/mca/mcavar.h new file mode 100644 index 00000000000..90656f1a4e5 --- /dev/null +++ b/sys/dev/mca/mcavar.h @@ -0,0 +1,82 @@ +/* $NetBSD: mcavar.h,v 1.1 2000/05/11 15:42:07 jdolecek Exp $ */ + +/*- + * Copyright (c) 2000 The NetBSD Foundation, Inc. + * Copyright (c) 1996-1999 Scott D. Telford. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Scott Telford <s.telford@ed.ac.uk>. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef _DEV_MCA_MCAVAR_H_ +#define _DEV_MCA_MCAVAR_H_ + +/* + * Definitions for MCA autoconfiguration. + * + * This file describes types and functions which are used for MCA + * configuration. Some of this information is machine-specific, and is + * separated into mca_machdep.h. + */ + +#include <machine/bus.h> +#include <machine/mca_machdep.h> + +struct mcabus_attach_args { + const char *mba_busname; + bus_space_tag_t mba_iot; /* MCA I/O space tag */ + bus_space_tag_t mba_memt; /* MCA mem space tag */ + bus_dma_tag_t mba_dmat; /* MCA DMA tag */ + mca_chipset_tag_t mba_mc; /* currently unused */ + int mba_bus; /* MCA bus number */ +}; + + +struct mca_attach_args { + struct device *ma_self; /* pointer to it's device struct */ + bus_space_tag_t ma_iot; /* MCA I/O space tag */ + bus_space_tag_t ma_memt; /* MCA mem space tag */ + bus_dma_tag_t ma_dmat; /* MCA DMA tag */ + mca_chipset_tag_t ma_mc; /* currently unused */ + + int ma_slot; /* MCA slot number */ + int ma_pos[8]; /* MCA POS register values */ + int ma_id; /* MCA device ID (POS1 + POS2<<8) */ +}; + +#define mcacf_slot cf_loc[0] +#define MCA_UNKNOWN_SLOT -1 /* wildcarded 'slot' */ + +void mca_devinfo __P((int, char *)); +int mca_issupp __P((int)); + +#endif /* _DEV_MCA_MCAVAR_H_ */ |
