Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Device name length restriction?



On Mon, 8 Sep 2008, Quentin Garnier wrote:

On Mon, Sep 08, 2008 at 11:54:50AM -0700, Paul Goyette wrote:
I've been trying to do some investigation with the I2C device on my
machine that responds to address 0x2E.  It _should_ be an adt7463c
device;  at the very least, if I configure "adt7463c0 at iic1 addr 0x2e"
it should call the match function.

Well, it appears that it doesn't work!

Further, if I boot that same kernel with 'boot -c' option, and then try
to find or disable or enable adt7463c0 I get an "invalid argument" error
message.  The same find/enable/disable commands work for other devices,
so I'm wondering if maybe there's an internal undocumented limit on the
devicename length?

I could go groveling thru the source code to find the 'boot -c' code,
but figured if I ask here first someone might have an answer off the top
of their head!

Can I see the ioconf.c of that kernel?

kernel config and ioconf.c are attached. I noticed that ioconf.c includes an entry for adt7467c device, too, even though it is not mentioned in the config file.

If you want the actual kernel file itself, I can put it up for ftp access.


----------------------------------------------------------------------
|   Paul Goyette   | PGP DSS Key fingerprint: |  E-mail addresses:   |
| Customer Service | FA29 0E3B 35AF E8AE 6651 |  paul%whooppee.com@localhost   |
| Network Engineer | 0786 F758 55DE 53BA 7731 | pgoyette%juniper.net@localhost |
----------------------------------------------------------------------
/*
 * MACHINE GENERATED: DO NOT EDIT
 *
 * ioconf.c, from "SPEEDY"
 */

#include <sys/param.h>
#include <sys/conf.h>
#include <sys/device.h>
#include <sys/mount.h>

static const struct cfiattrdata gpibdevcf_iattrdata = {
        "gpibdev", 1,
        {
                {"address", "-1", -1},
        }
};
static const struct cfiattrdata ymcf_iattrdata = {
        "ym", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata acpibuscf_iattrdata = {
        "acpibus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata caccf_iattrdata = {
        "cac", 1,
        {
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata spicf_iattrdata = {
        "spi", 1,
        {
                {"slave", "NULL", 0},
        }
};
static const struct cfiattrdata radiodevcf_iattrdata = {
        "radiodev", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata ydscf_iattrdata = {
        "yds", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata mlxcf_iattrdata = {
        "mlx", 1,
        {
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata ieee1394ifcf_iattrdata = {
        "ieee1394if", 2,
        {
                {"euihi", "-1", -1},
                {"euilo", "-1", -1},
        }
};
static const struct cfiattrdata scsibuscf_iattrdata = {
        "scsibus", 2,
        {
                {"target", "-1", -1},
                {"lun", "-1", -1},
        }
};
static const struct cfiattrdata ucombuscf_iattrdata = {
        "ucombus", 1,
        {
                {"portno", "-1", -1},
        }
};
static const struct cfiattrdata amrcf_iattrdata = {
        "amr", 1,
        {
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata videobuscf_iattrdata = {
        "videobus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata isabuscf_iattrdata = {
        "isabus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata i2cbuscf_iattrdata = {
        "i2cbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata ata_hlcf_iattrdata = {
        "ata_hl", 1,
        {
                {"drive", "-1", -1},
        }
};
static const struct cfiattrdata twacf_iattrdata = {
        "twa", 1,
        {
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata fdccf_iattrdata = {
        "fdc", 1,
        {
                {"drive", "-1", -1},
        }
};
static const struct cfiattrdata twecf_iattrdata = {
        "twe", 1,
        {
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata adt7467ccf_iattrdata = {
        "adt7467c", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata bthubcf_iattrdata = {
        "bthub", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata bthidbuscf_iattrdata = {
        "bthidbus", 1,
        {
                {"reportid", "-1", -1},
        }
};
static const struct cfiattrdata xirccf_iattrdata = {
        "xirc", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata pcppicf_iattrdata = {
        "pcppi", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata depcacf_iattrdata = {
        "depca", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata sbpcf_iattrdata = {
        "sbp", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata acpiecdtbuscf_iattrdata = {
        "acpiecdtbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata svcf_iattrdata = {
        "sv", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata ppbuscf_iattrdata = {
        "ppbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata commulticf_iattrdata = {
        "commulti", 1,
        {
                {"slave", "-1", -1},
        }
};
static const struct cfiattrdata eisabuscf_iattrdata = {
        "eisabus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata atapicf_iattrdata = {
        "atapi", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata atapibuscf_iattrdata = {
        "atapibus", 1,
        {
                {"drive", "-1", -1},
        }
};
static const struct cfiattrdata usbroothubifcf_iattrdata = {
        "usbroothubif", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata ioapicbuscf_iattrdata = {
        "ioapicbus", 1,
        {
                {"apid", "-1", -1},
        }
};
static const struct cfiattrdata tcbuscf_iattrdata = {
        "tcbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata skccf_iattrdata = {
        "skc", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata onewirebuscf_iattrdata = {
        "onewirebus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata tsdiocf_iattrdata = {
        "tsdio", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata cardbuscf_iattrdata = {
        "cardbus", 1,
        {
                {"function", "-1", -1},
        }
};
static const struct cfiattrdata fmscf_iattrdata = {
        "fms", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata iopcf_iattrdata = {
        "iop", 1,
        {
                {"tid", "-1", -1},
        }
};
static const struct cfiattrdata pckbcportcf_iattrdata = {
        "pckbcport", 2,
        {
                {"irq", "-1", -1},
                {"port", "-1", -1},
        }
};
static const struct cfiattrdata gpiocf_iattrdata = {
        "gpio", 2,
        {
                {"offset", "NULL", 0},
                {"mask", "NULL", 0},
        }
};
static const struct cfiattrdata cbbuscf_iattrdata = {
        "cbbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata cpubuscf_iattrdata = {
        "cpubus", 1,
        {
                {"apid", "-1", -1},
        }
};
static const struct cfiattrdata gpiobuscf_iattrdata = {
        "gpiobus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata wsscf_iattrdata = {
        "wss", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata pcmcomcf_iattrdata = {
        "pcmcom", 1,
        {
                {"slave", "-1", -1},
        }
};
static const struct cfiattrdata drmcf_iattrdata = {
        "drm", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata pckbportcf_iattrdata = {
        "pckbport", 1,
        {
                {"slot", "-1", -1},
        }
};
static const struct cfiattrdata irbuscf_iattrdata = {
        "irbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata aaccf_iattrdata = {
        "aac", 1,
        {
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata pcibuscf_iattrdata = {
        "pcibus", 1,
        {
                {"bus", "-1", -1},
        }
};
static const struct cfiattrdata cxgbccf_iattrdata = {
        "cxgbc", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata upccf_iattrdata = {
        "upc", 1,
        {
                {"offset", "-1", -1},
        }
};
static const struct cfiattrdata usbififcf_iattrdata = {
        "usbifif", 6,
        {
                {"port", "-1", -1},
                {"configuration", "-1", -1},
                {"interface", "-1", -1},
                {"vendor", "-1", -1},
                {"product", "-1", -1},
                {"release", "-1", -1},
        }
};
static const struct cfiattrdata amdpcibcf_iattrdata = {
        "amdpcib", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata iiccf_iattrdata = {
        "iic", 2,
        {
                {"addr", "-1", -1},
                {"size", "-1", -1},
        }
};
static const struct cfiattrdata eapcf_iattrdata = {
        "eap", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata onewirecf_iattrdata = {
        "onewire", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata adm1030ccf_iattrdata = {
        "adm1030c", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata mcabuscf_iattrdata = {
        "mcabus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata pcicf_iattrdata = {
        "pci", 2,
        {
                {"dev", "-1", -1},
                {"function", "-1", -1},
        }
};
static const struct cfiattrdata wsdisplaydevcf_iattrdata = {
        "wsdisplaydev", 1,
        {
                {"kbdmux", "1", 1},
        }
};
static const struct cfiattrdata miicf_iattrdata = {
        "mii", 1,
        {
                {"phy", "-1", -1},
        }
};
static const struct cfiattrdata cpcbuscf_iattrdata = {
        "cpcbus", 2,
        {
                {"addr", "NULL", 0},
                {"irq", "-1", -1},
        }
};
static const struct cfiattrdata nelecf_iattrdata = {
        "nele", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata acpiapmbuscf_iattrdata = {
        "acpiapmbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata parportcf_iattrdata = {
        "parport", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata pcmciacf_iattrdata = {
        "pcmcia", 1,
        {
                {"function", "-1", -1},
        }
};
static const struct cfiattrdata mskccf_iattrdata = {
        "mskc", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata adt7463ccf_iattrdata = {
        "adt7463c", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata ataraidcf_iattrdata = {
        "ataraid", 2,
        {
                {"vendtype", "-1", -1},
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata usbdevifcf_iattrdata = {
        "usbdevif", 6,
        {
                {"port", "-1", -1},
                {"configuration", "-1", -1},
                {"interface", "-1", -1},
                {"vendor", "-1", -1},
                {"product", "-1", -1},
                {"release", "-1", -1},
        }
};
static const struct cfiattrdata ipmibuscf_iattrdata = {
        "ipmibus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata wskbddevcf_iattrdata = {
        "wskbddev", 2,
        {
                {"console", "-1", -1},
                {"mux", "1", 1},
        }
};
static const struct cfiattrdata audiobuscf_iattrdata = {
        "audiobus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata sbdspcf_iattrdata = {
        "sbdsp", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata btbuscf_iattrdata = {
        "btbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata agpbuscf_iattrdata = {
        "agpbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata isapnpcf_iattrdata = {
        "isapnp", 6,
        {
                {"port", "-1", -1},
                {"size", "0", 0},
                {"iomem", "-1", -1},
                {"iosiz", "0", 0},
                {"irq", "-1", -1},
                {"drq", "-1", -1},
        }
};
static const struct cfiattrdata cmpcicf_iattrdata = {
        "cmpci", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata midibuscf_iattrdata = {
        "midibus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata hpetichbuscf_iattrdata = {
        "hpetichbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata vmebuscf_iattrdata = {
        "vmebus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata wsemuldisplaydevcf_iattrdata = {
        "wsemuldisplaydev", 2,
        {
                {"console", "-1", -1},
                {"kbdmux", "1", 1},
        }
};
static const struct cfiattrdata mhzccf_iattrdata = {
        "mhzc", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata uhidbuscf_iattrdata = {
        "uhidbus", 1,
        {
                {"reportid", "-1", -1},
        }
};
static const struct cfiattrdata nfsmbccf_iattrdata = {
        "nfsmbc", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata icpcf_iattrdata = {
        "icp", 1,
        {
                {"unit", "-1", -1},
        }
};
static const struct cfiattrdata isacf_iattrdata = {
        "isa", 7,
        {
                {"port", "-1", -1},
                {"size", "0", 0},
                {"iomem", "-1", -1},
                {"iosiz", "0", 0},
                {"irq", "-1", -1},
                {"drq", "-1", -1},
                {"drq2", "-1", -1},
        }
};
static const struct cfiattrdata comcf_iattrdata = {
        "com", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata spiflashbuscf_iattrdata = {
        "spiflashbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata eslcf_iattrdata = {
        "esl", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata fwbuscf_iattrdata = {
        "fwbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata esocf_iattrdata = {
        "eso", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata puccf_iattrdata = {
        "puc", 1,
        {
                {"port", "-1", -1},
        }
};
static const struct cfiattrdata esscf_iattrdata = {
        "ess", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata acpinodebuscf_iattrdata = {
        "acpinodebus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata pcmciaslotcf_iattrdata = {
        "pcmciaslot", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata bicccf_iattrdata = {
        "bicc", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata usbuscf_iattrdata = {
        "usbus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata wsmousedevcf_iattrdata = {
        "wsmousedev", 1,
        {
                {"mux", "0", 0},
        }
};
static const struct cfiattrdata scsicf_iattrdata = {
        "scsi", 1,
        {
                {"channel", "-1", -1},
        }
};
static const struct cfiattrdata atacf_iattrdata = {
        "ata", 1,
        {
                {"channel", "-1", -1},
        }
};
static const struct cfiattrdata spibuscf_iattrdata = {
        "spibus", 0, {
                { NULL, NULL, 0 },
        }
};
static const struct cfiattrdata pcmciabuscf_iattrdata = {
        "pcmciabus", 2,
        {
                {"controller", "-1", -1},
                {"socket", "-1", -1},
        }
};
static const struct cfiattrdata jmide_hlcf_iattrdata = {
        "jmide_hl", 0, {
                { NULL, NULL, 0 },
        }
};

CFDRIVER_DECL(audio, DV_AUDIODEV, NULL);

CFDRIVER_DECL(midi, DV_DULL, NULL);

static const struct cfiattrdata * const iic_attrs[] = { &iiccf_iattrdata, NULL 
};
CFDRIVER_DECL(iic, DV_DULL, iic_attrs);

CFDRIVER_DECL(adt7463c, DV_DULL, NULL);

CFDRIVER_DECL(spdmem, DV_DULL, NULL);

CFDRIVER_DECL(lpt, DV_DULL, NULL);

CFDRIVER_DECL(makphy, DV_DULL, NULL);

static const struct cfiattrdata * const com_attrs[] = { &comcf_iattrdata, NULL 
};
CFDRIVER_DECL(com, DV_TTY, com_attrs);

static const struct cfiattrdata * const pckbc_attrs[] = { 
&pckbportcf_iattrdata, NULL };
CFDRIVER_DECL(pckbc, DV_DULL, pckbc_attrs);

CFDRIVER_DECL(attimer, DV_DULL, NULL);

static const struct cfiattrdata * const atabus_attrs[] = { &ata_hlcf_iattrdata, 
&atapicf_iattrdata, NULL };
CFDRIVER_DECL(atabus, DV_DULL, atabus_attrs);

CFDRIVER_DECL(hpet, DV_DULL, NULL);

static const struct cfiattrdata * const vga_attrs[] = { &drmcf_iattrdata, 
&wsemuldisplaydevcf_iattrdata, NULL };
CFDRIVER_DECL(vga, DV_DISPLAYDEV, vga_attrs);

CFDRIVER_DECL(wsdisplay, DV_DULL, NULL);

CFDRIVER_DECL(wskbd, DV_DULL, NULL);

CFDRIVER_DECL(wsmouse, DV_DULL, NULL);

static const struct cfiattrdata * const ohci_attrs[] = { &usbuscf_iattrdata, 
NULL };
CFDRIVER_DECL(ohci, DV_DULL, ohci_attrs);

static const struct cfiattrdata * const ehci_attrs[] = { &usbuscf_iattrdata, 
NULL };
CFDRIVER_DECL(ehci, DV_DULL, ehci_attrs);

CFDRIVER_DECL(vnd, DV_DISK, NULL);

CFDRIVER_DECL(md, DV_DISK, NULL);

static const struct cfiattrdata * const pad_attrs[] = { &audiobuscf_iattrdata, 
NULL };
CFDRIVER_DECL(pad, DV_DULL, pad_attrs);

CFDRIVER_DECL(cpu, DV_DULL, NULL);

CFDRIVER_DECL(ioapic, DV_DULL, NULL);

static const struct cfiattrdata * const scsibus_attrs[] = { 
&scsibuscf_iattrdata, NULL };
CFDRIVER_DECL(scsibus, DV_DULL, scsibus_attrs);

CFDRIVER_DECL(sd, DV_DISK, NULL);

CFDRIVER_DECL(wd, DV_DISK, NULL);

static const struct cfiattrdata * const mainbus_attrs[] = { 
&ipmibuscf_iattrdata, &ioapicbuscf_iattrdata, &cpubuscf_iattrdata, 
&acpibuscf_iattrdata, &pcibuscf_iattrdata, &isabuscf_iattrdata, NULL };
CFDRIVER_DECL(mainbus, DV_DULL, mainbus_attrs);

static const struct cfiattrdata * const pci_attrs[] = { &pcicf_iattrdata, NULL 
};
CFDRIVER_DECL(pci, DV_DULL, pci_attrs);

static const struct cfiattrdata * const viaide_attrs[] = { &atacf_iattrdata, 
NULL };
CFDRIVER_DECL(viaide, DV_DULL, viaide_attrs);

static const struct cfiattrdata * const ppb_attrs[] = { &pcibuscf_iattrdata, 
NULL };
CFDRIVER_DECL(ppb, DV_DULL, ppb_attrs);

static const struct cfiattrdata * const azalia_attrs[] = { 
&audiobuscf_iattrdata, NULL };
CFDRIVER_DECL(azalia, DV_DULL, azalia_attrs);

static const struct cfiattrdata * const nfe_attrs[] = { &miicf_iattrdata, NULL 
};
CFDRIVER_DECL(nfe, DV_IFNET, nfe_attrs);

static const struct cfiattrdata * const nfsmbc_attrs[] = { &nfsmbccf_iattrdata, 
NULL };
CFDRIVER_DECL(nfsmbc, DV_DULL, nfsmbc_attrs);

static const struct cfiattrdata * const nfsmb_attrs[] = { &i2cbuscf_iattrdata, 
NULL };
CFDRIVER_DECL(nfsmb, DV_DULL, nfsmb_attrs);

static const struct cfiattrdata * const pchb_attrs[] = { &agpbuscf_iattrdata, 
&pcibuscf_iattrdata, NULL };
CFDRIVER_DECL(pchb, DV_DULL, pchb_attrs);

static const struct cfiattrdata * const pcib_attrs[] = { &isabuscf_iattrdata, 
NULL };
CFDRIVER_DECL(pcib, DV_DULL, pcib_attrs);

CFDRIVER_DECL(amdtemp, DV_DULL, NULL);

static const struct cfiattrdata * const isa_attrs[] = { &isacf_iattrdata, NULL 
};
CFDRIVER_DECL(isa, DV_DULL, isa_attrs);

static const struct cfiattrdata * const pcppi_attrs[] = { &pcppicf_iattrdata, 
NULL };
CFDRIVER_DECL(pcppi, DV_DULL, pcppi_attrs);

CFDRIVER_DECL(itesio, DV_DULL, NULL);

static const struct cfiattrdata * const pckbd_attrs[] = { 
&wskbddevcf_iattrdata, NULL };
CFDRIVER_DECL(pckbd, DV_DULL, pckbd_attrs);

static const struct cfiattrdata * const pms_attrs[] = { 
&wsmousedevcf_iattrdata, NULL };
CFDRIVER_DECL(pms, DV_DULL, pms_attrs);

CFDRIVER_DECL(sysbeep, DV_DULL, NULL);

static const struct cfiattrdata * const usb_attrs[] = { 
&usbroothubifcf_iattrdata, NULL };
CFDRIVER_DECL(usb, DV_DULL, usb_attrs);

static const struct cfiattrdata * const uhub_attrs[] = { &usbififcf_iattrdata, 
&usbdevifcf_iattrdata, NULL };
CFDRIVER_DECL(uhub, DV_DULL, uhub_attrs);

CFDRIVER_DECL(ugen, DV_DULL, NULL);

static const struct cfiattrdata * const uhidev_attrs[] = { 
&uhidbuscf_iattrdata, NULL };
CFDRIVER_DECL(uhidev, DV_DULL, uhidev_attrs);

CFDRIVER_DECL(uhid, DV_DULL, NULL);

static const struct cfiattrdata * const ukbd_attrs[] = { &wskbddevcf_iattrdata, 
NULL };
CFDRIVER_DECL(ukbd, DV_DULL, ukbd_attrs);

static const struct cfiattrdata * const ums_attrs[] = { 
&wsmousedevcf_iattrdata, NULL };
CFDRIVER_DECL(ums, DV_DULL, ums_attrs);

CFDRIVER_DECL(ulpt, DV_DULL, NULL);

static const struct cfiattrdata * const umass_attrs[] = { &ata_hlcf_iattrdata, 
&atapicf_iattrdata, &scsicf_iattrdata, NULL };
CFDRIVER_DECL(umass, DV_DULL, umass_attrs);

static const struct cfiattrdata * const acpi_attrs[] = { 
&acpiecdtbuscf_iattrdata, &acpinodebuscf_iattrdata, &acpiapmbuscf_iattrdata, 
NULL };
CFDRIVER_DECL(acpi, DV_DULL, acpi_attrs);

CFDRIVER_DECL(acpiec, DV_DULL, NULL);

CFDRIVER_DECL(acpiecdt, DV_DULL, NULL);

CFDRIVER_DECL(acpibut, DV_DULL, NULL);

CFDRIVER_DECL(acpitz, DV_DULL, NULL);

CFDRIVER_DECL(aiboost, DV_DULL, NULL);


struct cfdriver * const cfdriver_list_initial[] = {
        &audio_cd,
        &midi_cd,
        &iic_cd,
        &adt7463c_cd,
        &spdmem_cd,
        &lpt_cd,
        &makphy_cd,
        &com_cd,
        &pckbc_cd,
        &attimer_cd,
        &atabus_cd,
        &hpet_cd,
        &vga_cd,
        &wsdisplay_cd,
        &wskbd_cd,
        &wsmouse_cd,
        &ohci_cd,
        &ehci_cd,
        &vnd_cd,
        &md_cd,
        &pad_cd,
        &cpu_cd,
        &ioapic_cd,
        &scsibus_cd,
        &sd_cd,
        &wd_cd,
        &mainbus_cd,
        &pci_cd,
        &viaide_cd,
        &ppb_cd,
        &azalia_cd,
        &nfe_cd,
        &nfsmbc_cd,
        &nfsmb_cd,
        &pchb_cd,
        &pcib_cd,
        &amdtemp_cd,
        &isa_cd,
        &pcppi_cd,
        &itesio_cd,
        &pckbd_cd,
        &pms_cd,
        &sysbeep_cd,
        &usb_cd,
        &uhub_cd,
        &ugen_cd,
        &uhidev_cd,
        &uhid_cd,
        &ukbd_cd,
        &ums_cd,
        &ulpt_cd,
        &umass_cd,
        &acpi_cd,
        &acpiec_cd,
        &acpiecdt_cd,
        &acpibut_cd,
        &acpitz_cd,
        &aiboost_cd,
        NULL
};

extern struct cfattach audio_ca;
extern struct cfattach iic_ca;
extern struct cfattach adt7463c_ca;
extern struct cfattach spdmem_ca;
extern struct cfattach makphy_ca;
extern struct cfattach atabus_ca;
extern struct cfattach wsdisplay_emul_ca;
extern struct cfattach wskbd_ca;
extern struct cfattach wsmouse_ca;
extern struct cfattach cpu_ca;
extern struct cfattach ioapic_ca;
extern struct cfattach scsibus_ca;
extern struct cfattach sd_ca;
extern struct cfattach wd_ca;
extern struct cfattach mainbus_ca;
extern struct cfattach pci_ca;
extern struct cfattach viaide_ca;
extern struct cfattach ppb_ca;
extern struct cfattach vga_pci_ca;
extern struct cfattach azalia_ca;
extern struct cfattach ohci_pci_ca;
extern struct cfattach ehci_pci_ca;
extern struct cfattach nfe_ca;
extern struct cfattach nfsmbc_ca;
extern struct cfattach nfsmb_ca;
extern struct cfattach pchb_ca;
extern struct cfattach pcib_ca;
extern struct cfattach amdtemp_ca;
extern struct cfattach isa_ca;
extern struct cfattach midi_pcppi_ca;
extern struct cfattach itesio_ca;
extern struct cfattach pckbd_ca;
extern struct cfattach pms_ca;
extern struct cfattach sysbeep_ca;
extern struct cfattach usb_ca;
extern struct cfattach uroothub_ca;
extern struct cfattach uhub_ca;
extern struct cfattach ugen_ca;
extern struct cfattach uhidev_ca;
extern struct cfattach uhid_ca;
extern struct cfattach ukbd_ca;
extern struct cfattach ums_ca;
extern struct cfattach ulpt_ca;
extern struct cfattach umass_ca;
extern struct cfattach acpi_ca;
extern struct cfattach acpiec_ca;
extern struct cfattach acpiecdt_ca;
extern struct cfattach acpibut_ca;
extern struct cfattach acpitz_ca;
extern struct cfattach com_acpi_ca;
extern struct cfattach lpt_acpi_ca;
extern struct cfattach pckbc_acpi_ca;
extern struct cfattach pcppi_acpi_ca;
extern struct cfattach attimer_acpi_ca;
extern struct cfattach hpet_acpi_ca;
extern struct cfattach aiboost_ca;

static struct cfattach * const audio_cfattachinit[] = {
        &audio_ca, NULL
};
static struct cfattach * const midi_cfattachinit[] = {
        &midi_pcppi_ca, NULL
};
static struct cfattach * const iic_cfattachinit[] = {
        &iic_ca, NULL
};
static struct cfattach * const adt7463c_cfattachinit[] = {
        &adt7463c_ca, NULL
};
static struct cfattach * const spdmem_cfattachinit[] = {
        &spdmem_ca, NULL
};
static struct cfattach * const lpt_cfattachinit[] = {
        &lpt_acpi_ca, NULL
};
static struct cfattach * const makphy_cfattachinit[] = {
        &makphy_ca, NULL
};
static struct cfattach * const com_cfattachinit[] = {
        &com_acpi_ca, NULL
};
static struct cfattach * const pckbc_cfattachinit[] = {
        &pckbc_acpi_ca, NULL
};
static struct cfattach * const attimer_cfattachinit[] = {
        &attimer_acpi_ca, NULL
};
static struct cfattach * const atabus_cfattachinit[] = {
        &atabus_ca, NULL
};
static struct cfattach * const hpet_cfattachinit[] = {
        &hpet_acpi_ca, NULL
};
static struct cfattach * const vga_cfattachinit[] = {
        &vga_pci_ca, NULL
};
static struct cfattach * const wsdisplay_cfattachinit[] = {
        &wsdisplay_emul_ca, NULL
};
static struct cfattach * const wskbd_cfattachinit[] = {
        &wskbd_ca, NULL
};
static struct cfattach * const wsmouse_cfattachinit[] = {
        &wsmouse_ca, NULL
};
static struct cfattach * const ohci_cfattachinit[] = {
        &ohci_pci_ca, NULL
};
static struct cfattach * const ehci_cfattachinit[] = {
        &ehci_pci_ca, NULL
};
static struct cfattach * const cpu_cfattachinit[] = {
        &cpu_ca, NULL
};
static struct cfattach * const ioapic_cfattachinit[] = {
        &ioapic_ca, NULL
};
static struct cfattach * const scsibus_cfattachinit[] = {
        &scsibus_ca, NULL
};
static struct cfattach * const sd_cfattachinit[] = {
        &sd_ca, NULL
};
static struct cfattach * const wd_cfattachinit[] = {
        &wd_ca, NULL
};
static struct cfattach * const mainbus_cfattachinit[] = {
        &mainbus_ca, NULL
};
static struct cfattach * const pci_cfattachinit[] = {
        &pci_ca, NULL
};
static struct cfattach * const viaide_cfattachinit[] = {
        &viaide_ca, NULL
};
static struct cfattach * const ppb_cfattachinit[] = {
        &ppb_ca, NULL
};
static struct cfattach * const azalia_cfattachinit[] = {
        &azalia_ca, NULL
};
static struct cfattach * const nfe_cfattachinit[] = {
        &nfe_ca, NULL
};
static struct cfattach * const nfsmbc_cfattachinit[] = {
        &nfsmbc_ca, NULL
};
static struct cfattach * const nfsmb_cfattachinit[] = {
        &nfsmb_ca, NULL
};
static struct cfattach * const pchb_cfattachinit[] = {
        &pchb_ca, NULL
};
static struct cfattach * const pcib_cfattachinit[] = {
        &pcib_ca, NULL
};
static struct cfattach * const amdtemp_cfattachinit[] = {
        &amdtemp_ca, NULL
};
static struct cfattach * const isa_cfattachinit[] = {
        &isa_ca, NULL
};
static struct cfattach * const pcppi_cfattachinit[] = {
        &pcppi_acpi_ca, NULL
};
static struct cfattach * const itesio_cfattachinit[] = {
        &itesio_ca, NULL
};
static struct cfattach * const pckbd_cfattachinit[] = {
        &pckbd_ca, NULL
};
static struct cfattach * const pms_cfattachinit[] = {
        &pms_ca, NULL
};
static struct cfattach * const sysbeep_cfattachinit[] = {
        &sysbeep_ca, NULL
};
static struct cfattach * const usb_cfattachinit[] = {
        &usb_ca, NULL
};
static struct cfattach * const uhub_cfattachinit[] = {
        &uroothub_ca, &uhub_ca, NULL
};
static struct cfattach * const ugen_cfattachinit[] = {
        &ugen_ca, NULL
};
static struct cfattach * const uhidev_cfattachinit[] = {
        &uhidev_ca, NULL
};
static struct cfattach * const uhid_cfattachinit[] = {
        &uhid_ca, NULL
};
static struct cfattach * const ukbd_cfattachinit[] = {
        &ukbd_ca, NULL
};
static struct cfattach * const ums_cfattachinit[] = {
        &ums_ca, NULL
};
static struct cfattach * const ulpt_cfattachinit[] = {
        &ulpt_ca, NULL
};
static struct cfattach * const umass_cfattachinit[] = {
        &umass_ca, NULL
};
static struct cfattach * const acpi_cfattachinit[] = {
        &acpi_ca, NULL
};
static struct cfattach * const acpiec_cfattachinit[] = {
        &acpiec_ca, NULL
};
static struct cfattach * const acpiecdt_cfattachinit[] = {
        &acpiecdt_ca, NULL
};
static struct cfattach * const acpibut_cfattachinit[] = {
        &acpibut_ca, NULL
};
static struct cfattach * const acpitz_cfattachinit[] = {
        &acpitz_ca, NULL
};
static struct cfattach * const aiboost_cfattachinit[] = {
        &aiboost_ca, NULL
};

const struct cfattachinit cfattachinit[] = {
        { "audio", audio_cfattachinit },
        { "midi", midi_cfattachinit },
        { "iic", iic_cfattachinit },
        { "adt7463c", adt7463c_cfattachinit },
        { "spdmem", spdmem_cfattachinit },
        { "lpt", lpt_cfattachinit },
        { "makphy", makphy_cfattachinit },
        { "com", com_cfattachinit },
        { "pckbc", pckbc_cfattachinit },
        { "attimer", attimer_cfattachinit },
        { "atabus", atabus_cfattachinit },
        { "hpet", hpet_cfattachinit },
        { "vga", vga_cfattachinit },
        { "wsdisplay", wsdisplay_cfattachinit },
        { "wskbd", wskbd_cfattachinit },
        { "wsmouse", wsmouse_cfattachinit },
        { "ohci", ohci_cfattachinit },
        { "ehci", ehci_cfattachinit },
        { "cpu", cpu_cfattachinit },
        { "ioapic", ioapic_cfattachinit },
        { "scsibus", scsibus_cfattachinit },
        { "sd", sd_cfattachinit },
        { "wd", wd_cfattachinit },
        { "mainbus", mainbus_cfattachinit },
        { "pci", pci_cfattachinit },
        { "viaide", viaide_cfattachinit },
        { "ppb", ppb_cfattachinit },
        { "azalia", azalia_cfattachinit },
        { "nfe", nfe_cfattachinit },
        { "nfsmbc", nfsmbc_cfattachinit },
        { "nfsmb", nfsmb_cfattachinit },
        { "pchb", pchb_cfattachinit },
        { "pcib", pcib_cfattachinit },
        { "amdtemp", amdtemp_cfattachinit },
        { "isa", isa_cfattachinit },
        { "pcppi", pcppi_cfattachinit },
        { "itesio", itesio_cfattachinit },
        { "pckbd", pckbd_cfattachinit },
        { "pms", pms_cfattachinit },
        { "sysbeep", sysbeep_cfattachinit },
        { "usb", usb_cfattachinit },
        { "uhub", uhub_cfattachinit },
        { "ugen", ugen_cfattachinit },
        { "uhidev", uhidev_cfattachinit },
        { "uhid", uhid_cfattachinit },
        { "ukbd", ukbd_cfattachinit },
        { "ums", ums_cfattachinit },
        { "ulpt", ulpt_cfattachinit },
        { "umass", umass_cfattachinit },
        { "acpi", acpi_cfattachinit },
        { "acpiec", acpiec_cfattachinit },
        { "acpiecdt", acpiecdt_cfattachinit },
        { "acpibut", acpibut_cfattachinit },
        { "acpitz", acpitz_cfattachinit },
        { "aiboost", aiboost_cfattachinit },
        { NULL, NULL }
};

/* locators */
static int loc[123] = {
        0x2e, 0, -1, 0, -1, -1, -1, -1,
        -1, -1, -1, -1, -1, -1, -1, -1,
        -1, -1, -1, -1, -1, -1, -1, -1,
        -1, -1, -1, -1, -1, -1, -1, -1,
        -1, -1, -1, -1, -1, 24, 3, 1,
        0, -1, -1, 0x51, -1, 0x52, -1, 0x53,
        -1, 0, 0, -1, 1, -1, 1, -1,
        1, 2, 0, 2, 1, -1, -1, 0x2e,
        -1, 4, 0, 5, 0, 5, 1, 5,
        2, 6, 0, 15, 0, 6, 1, 0,
        1, 8, 0, 1, 1, 0x50, -1, 24,
        0, 24, 1, 24, 2, 24, 4, -1,
        -1, -1, -1, 0, 1, 1, 0, 0,
        -1, -1, -1, -1, -1, 0, 1, -1,
        2, 0, -1, 1, 0, 0, 0, 1,
        -1, -1, -1,
};

static const struct cfparent pspec0 = {
        "cpubus", "mainbus", DVUNIT_ANY
};
static const struct cfparent pspec1 = {
        "ioapicbus", "mainbus", DVUNIT_ANY
};
static const struct cfparent pspec2 = {
        "cpubus", "mainbus", 0
};
static const struct cfparent pspec3 = {
        "ioapicbus", "mainbus", 0
};
static const struct cfparent pspec4 = {
        "acpibus", "mainbus", 0
};
static const struct cfparent pspec5 = {
        "pcibus", "mainbus", 0
};
static const struct cfparent pspec6 = {
        "pcibus", "ppb", 0
};
static const struct cfparent pspec7 = {
        "pcibus", "ppb", 1
};
static const struct cfparent pspec8 = {
        "acpinodebus", "acpi", 0
};
static const struct cfparent pspec9 = {
        "pcppi", "pcppi", 0
};
static const struct cfparent pspec10 = {
        "acpiecdtbus", "acpi", 0
};
static const struct cfparent pspec11 = {
        "pci", "pci", DVUNIT_ANY
};
static const struct cfparent pspec12 = {
        "pci", "pci", 0
};
static const struct cfparent pspec13 = {
        "nfsmbc", "nfsmbc", 0
};
static const struct cfparent pspec14 = {
        "i2cbus", "nfsmb", 0
};
static const struct cfparent pspec15 = {
        "i2cbus", "nfsmb", 1
};
static const struct cfparent pspec16 = {
        "mii", "nfe", 0
};
static const struct cfparent pspec17 = {
        "pci", "pci", 2
};
static const struct cfparent pspec18 = {
        "wsemuldisplaydev", "vga", 0
};
static const struct cfparent pspec19 = {
        "isabus", "pcib", 0
};
static const struct cfparent pspec20 = {
        "isa", "isa", 0
};
static const struct cfparent pspec21 = {
        "audiobus", "azalia", 0
};
static const struct cfparent pspec22 = {
        "audiobus", "azalia", 1
};
static const struct cfparent pspec23 = {
        "audiobus", "pad", 0
};
static const struct cfparent pspec24 = {
        "ata", "viaide", 0
};
static const struct cfparent pspec25 = {
        "ata", "viaide", 1
};
static const struct cfparent pspec26 = {
        "ata", "viaide", 2
};
static const struct cfparent pspec27 = {
        "ata", "viaide", 3
};
static const struct cfparent pspec28 = {
        "ata_hl", "atabus", 4
};
static const struct cfparent pspec29 = {
        "ata_hl", "atabus", DVUNIT_ANY
};
static const struct cfparent pspec30 = {
        "usbus", "ohci", 0
};
static const struct cfparent pspec31 = {
        "usbroothubif", "usb", 0
};
static const struct cfparent pspec32 = {
        "usbus", "ehci", 0
};
static const struct cfparent pspec33 = {
        "usbroothubif", "usb", 1
};
static const struct cfparent pspec34 = {
        "usbdevif", "uhub", DVUNIT_ANY
};
static const struct cfparent pspec35 = {
        "usbifif", "uhub", DVUNIT_ANY
};
static const struct cfparent pspec36 = {
        "uhidbus", "uhidev", DVUNIT_ANY
};
static const struct cfparent pspec37 = {
        "wskbddev", "ukbd", DVUNIT_ANY
};
static const struct cfparent pspec38 = {
        "wsmousedev", "ums", DVUNIT_ANY
};
static const struct cfparent pspec39 = {
        "scsi", "umass", DVUNIT_ANY
};
static const struct cfparent pspec40 = {
        "scsibus", "scsibus", DVUNIT_ANY
};
static const struct cfparent pspec41 = {
        "pckbport", "pckbc", 0
};
static const struct cfparent pspec42 = {
        "wskbddev", "pckbd", 0
};
static const struct cfparent pspec43 = {
        "wsmousedev", "pms", 0
};
static const struct cfparent pspec44 = {
        "iic", "iic", 0
};
static const struct cfparent pspec45 = {
        "iic", "iic", 1
};

#define NORM FSTATE_NOTFOUND
#define STAR FSTATE_STAR

struct cfdata cfdata[] = {
    /* driver           attachment    unit state loc   flags pspec */
/*  0: audio0 at azalia0 */
    {"audio",           "audio",         0, NORM,     loc,      0, &pspec21},
/*  1: audio1 at azalia1 */
    {"audio",           "audio",         1, NORM,     loc,      0, &pspec22},
/*  2: audio2 at pad0 */
    {"audio",           "audio",         2, NORM,     loc,      0, &pspec23},
/*  3: midi0 at pcppi0 */
    {"midi",            "midi_pcppi",    0, NORM,     loc,      0, &pspec9},
/*  4: iic0 at nfsmb0 */
    {"iic",             "iic",           0, NORM,     loc,      0, &pspec14},
/*  5: iic1 at nfsmb1 */
    {"iic",             "iic",           1, NORM,     loc,      0, &pspec15},
/*  6: adt7463c0 at iic1 addr 0x2e size -1 */
    {"adt7463c",        "adt7463c",      0, NORM, loc+ 63,      0, &pspec45},
/*  7: spdmem0 at iic0 addr 0x50 size -1 */
    {"spdmem",          "spdmem",        0, NORM, loc+ 85,      0, &pspec44},
/*  8: spdmem1 at iic0 addr 0x51 size -1 */
    {"spdmem",          "spdmem",        1, NORM, loc+ 43,      0, &pspec44},
/*  9: spdmem2 at iic0 addr 0x52 size -1 */
    {"spdmem",          "spdmem",        2, NORM, loc+ 45,      0, &pspec44},
/* 10: spdmem3 at iic0 addr 0x53 size -1 */
    {"spdmem",          "spdmem",        3, NORM, loc+ 47,      0, &pspec44},
/* 11: lpt0 at acpi0 */
    {"lpt",             "lpt_acpi",      0, NORM,     loc,      0, &pspec8},
/* 12: makphy0 at nfe0 phy 1 */
    {"makphy",          "makphy",        0, NORM, loc+115,      0, &pspec16},
/* 13: com0 at acpi0 */
    {"com",             "com_acpi",      0, NORM,     loc,      0, &pspec8},
/* 14: pckbc0 at acpi0 */
    {"pckbc",           "pckbc_acpi",    0, NORM,     loc,      0, &pspec8},
/* 15: attimer0 at acpi0 */
    {"attimer",         "attimer_acpi",  0, NORM,     loc,      0, &pspec8},
/* 16: atabus0 at viaide0 channel 0 */
    {"atabus",          "atabus",        0, NORM, loc+103,      0, &pspec24},
/* 17: atabus1 at viaide1 channel 0 */
    {"atabus",          "atabus",        1, NORM, loc+102,      0, &pspec25},
/* 18: atabus2 at viaide1 channel 1 */
    {"atabus",          "atabus",        2, NORM, loc+101,      0, &pspec25},
/* 19: atabus3 at viaide2 channel 0 */
    {"atabus",          "atabus",        3, NORM, loc+ 99,      0, &pspec26},
/* 20: atabus4 at viaide2 channel 1 */
    {"atabus",          "atabus",        4, NORM, loc+100,      0, &pspec26},
/* 21: atabus5 at viaide3 channel 0 */
    {"atabus",          "atabus",        5, NORM, loc+109,      0, &pspec27},
/* 22: atabus6 at viaide3 channel 1 */
    {"atabus",          "atabus",        6, NORM, loc+110,      0, &pspec27},
/* 23: hpet0 at acpi0 */
    {"hpet",            "hpet_acpi",     0, NORM,     loc,      0, &pspec8},
/* 24: vga0 at pci2 dev 0 function 0 */
    {"vga",             "vga_pci",       0, NORM, loc+ 49,      0, &pspec17},
/* 25: wsdisplay0 at vga0 console -1 kbdmux 1 */
    {"wsdisplay",       "wsdisplay_emul",        0, NORM, loc+ 51,      0, 
&pspec18},
/* 26: wskbd0 at pckbd0 console -1 mux 1 */
    {"wskbd",           "wskbd",         0, NORM, loc+ 53,      0, &pspec42},
/* 27: wskbd* at ukbd? console -1 mux 1 */
    {"wskbd",           "wskbd",         1, STAR, loc+ 55,      0, &pspec37},
/* 28: wsmouse0 at pms0 mux 0 */
    {"wsmouse",         "wsmouse",       0, NORM, loc+116,      0, &pspec43},
/* 29: wsmouse* at ums? mux 0 */
    {"wsmouse",         "wsmouse",       1, STAR, loc+117,      0, &pspec38},
/* 30: ohci0 at pci0 dev 2 function 0 */
    {"ohci",            "ohci_pci",      0, NORM, loc+ 57,      0, &pspec12},
/* 31: ehci0 at pci0 dev 2 function 1 */
    {"ehci",            "ehci_pci",      0, NORM, loc+ 59,      0, &pspec12},
/* 32: cpu0 at mainbus0 apid -1 */
    {"cpu",             "cpu",           0, NORM, loc+120,      0, &pspec2},
/* 33: cpu1 at mainbus0 apid -1 */
    {"cpu",             "cpu",           1, NORM, loc+121,      0, &pspec2},
/* 34: cpu2 at mainbus0 apid -1 */
    {"cpu",             "cpu",           2, NORM, loc+ 95,      0, &pspec2},
/* 35: cpu3 at mainbus0 apid -1 */
    {"cpu",             "cpu",           3, NORM, loc+122,      0, &pspec2},
/* 36: cpu* at mainbus? apid -1 */
    {"cpu",             "cpu",           4, STAR, loc+ 96,      0, &pspec0},
/* 37: ioapic0 at mainbus0 apid -1 */
    {"ioapic",          "ioapic",        0, NORM, loc+ 97,      0, &pspec3},
/* 38: ioapic* at mainbus? apid -1 */
    {"ioapic",          "ioapic",        1, STAR, loc+ 98,      0, &pspec1},
/* 39: scsibus* at umass? channel -1 */
    {"scsibus",         "scsibus",       0, STAR, loc+111,      0, &pspec39},
/* 40: sd* at scsibus? target -1 lun -1 */
    {"sd",              "sd",            0, STAR, loc+ 61,      0, &pspec40},
/* 41: wd0 at atabus4 drive 0 */
    {"wd",              "wd",            0, NORM, loc+113,      0, &pspec28},
/* 42: wd* at atabus? drive -1 */
    {"wd",              "wd",            1, STAR, loc+114,      0, &pspec29},
/* 43: mainbus0 at root */
    {"mainbus",         "mainbus",       0, NORM,     loc,      0, NULL},
/* 44: pci0 at mainbus0 bus 0 */
    {"pci",             "pci",           0, NORM, loc+118,      0, &pspec5},
/* 45: pci1 at ppb0 bus 1 */
    {"pci",             "pci",           1, NORM, loc+119,      0, &pspec6},
/* 46: pci2 at ppb1 bus 2 */
    {"pci",             "pci",           2, NORM, loc+112,      0, &pspec7},
/* 47: viaide0 at pci0 dev 4 function 0 */
    {"viaide",          "viaide",        0, NORM, loc+ 65,      0, &pspec12},
/* 48: viaide1 at pci0 dev 5 function 0 */
    {"viaide",          "viaide",        1, NORM, loc+ 67,      0, &pspec12},
/* 49: viaide2 at pci0 dev 5 function 1 */
    {"viaide",          "viaide",        2, NORM, loc+ 69,      0, &pspec12},
/* 50: viaide3 at pci0 dev 5 function 2 */
    {"viaide",          "viaide",        3, NORM, loc+ 71,      0, &pspec12},
/* 51: ppb0 at pci0 dev 6 function 0 */
    {"ppb",             "ppb",           0, NORM, loc+ 73,      0, &pspec12},
/* 52: ppb1 at pci0 dev 15 function 0 */
    {"ppb",             "ppb",           1, NORM, loc+ 75,      0, &pspec12},
/* 53: azalia0 at pci0 dev 6 function 1 */
    {"azalia",          "azalia",        0, NORM, loc+ 77,      0, &pspec12},
/* 54: azalia1 at pci2 dev 0 function 1 */
    {"azalia",          "azalia",        1, NORM, loc+ 79,      0, &pspec17},
/* 55: nfe0 at pci0 dev 8 function 0 */
    {"nfe",             "nfe",           0, NORM, loc+ 81,      0, &pspec12},
/* 56: nfsmbc0 at pci0 dev 1 function 1 */
    {"nfsmbc",          "nfsmbc",        0, NORM, loc+ 83,      0, &pspec12},
/* 57: nfsmb0 at nfsmbc0 */
    {"nfsmb",           "nfsmb",         0, NORM,     loc,      0, &pspec13},
/* 58: nfsmb1 at nfsmbc0 */
    {"nfsmb",           "nfsmb",         1, NORM,     loc,      0, &pspec13},
/* 59: pchb0 at pci0 dev 24 function 0 */
    {"pchb",            "pchb",          0, NORM, loc+ 87,      0, &pspec12},
/* 60: pchb1 at pci0 dev 24 function 1 */
    {"pchb",            "pchb",          1, NORM, loc+ 89,      0, &pspec12},
/* 61: pchb2 at pci0 dev 24 function 2 */
    {"pchb",            "pchb",          2, NORM, loc+ 91,      0, &pspec12},
/* 62: pchb3 at pci0 dev 24 function 3 */
    {"pchb",            "pchb",          3, NORM, loc+ 37,      0, &pspec12},
/* 63: pchb4 at pci0 dev 24 function 4 */
    {"pchb",            "pchb",          4, NORM, loc+ 93,      0, &pspec12},
/* 64: pcib0 at pci0 dev 1 function 0 */
    {"pcib",            "pcib",          0, NORM, loc+ 39,      0, &pspec12},
/* 65: amdtemp* at pci? dev -1 function -1 */
    {"amdtemp",         "amdtemp",       0, STAR, loc+ 41,      0, &pspec11},
/* 66: isa0 at pcib0 */
    {"isa",             "isa",           0, NORM,     loc,      0, &pspec19},
/* 67: pcppi0 at acpi0 */
    {"pcppi",           "pcppi_acpi",    0, NORM,     loc,      0, &pspec8},
/* 68: itesio0 at isa0 port 0x2e size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1 
*/
    {"itesio",          "itesio",        0, NORM, loc+  0,      0, &pspec20},
/* 69: pckbd0 at pckbc0 slot -1 */
    {"pckbd",           "pckbd",         0, NORM, loc+108,      0, &pspec41},
/* 70: pms0 at pckbc0 slot -1 */
    {"pms",             "pms",           0, NORM, loc+107,      0, &pspec41},
/* 71: sysbeep0 at pcppi0 */
    {"sysbeep",         "sysbeep",       0, NORM,     loc,      0, &pspec9},
/* 72: usb0 at ohci0 */
    {"usb",             "usb",           0, NORM,     loc,      0, &pspec30},
/* 73: usb1 at ehci0 */
    {"usb",             "usb",           1, NORM,     loc,      0, &pspec32},
/* 74: uhub0 at usb0 */
    {"uhub",            "uroothub",      0, NORM,     loc,      0, &pspec31},
/* 75: uhub1 at usb1 */
    {"uhub",            "uroothub",      1, NORM,     loc,      0, &pspec33},
/* 76: uhub* at uhub? port -1 configuration -1 interface -1 vendor -1 product 
-1 release -1 */
    {"uhub",            "uhub",          2, STAR, loc+ 31,      0, &pspec34},
/* 77: ugen* at uhub? port -1 configuration -1 interface -1 vendor -1 product 
-1 release -1 */
    {"ugen",            "ugen",          0, STAR, loc+ 25,      0, &pspec34},
/* 78: uhidev* at uhub? port -1 configuration -1 interface -1 vendor -1 product 
-1 release -1 */
    {"uhidev",          "uhidev",        0, STAR, loc+ 19,      0, &pspec35},
/* 79: uhid* at uhidev? reportid -1 */
    {"uhid",            "uhid",          0, STAR, loc+104,      0, &pspec36},
/* 80: ukbd* at uhidev? reportid -1 */
    {"ukbd",            "ukbd",          0, STAR, loc+105,      0, &pspec36},
/* 81: ums* at uhidev? reportid -1 */
    {"ums",             "ums",           0, STAR, loc+106,      0, &pspec36},
/* 82: ulpt* at uhub? port -1 configuration -1 interface -1 vendor -1 product 
-1 release -1 */
    {"ulpt",            "ulpt",          0, STAR, loc+ 13,      0, &pspec35},
/* 83: umass* at uhub? port -1 configuration -1 interface -1 vendor -1 product 
-1 release -1 */
    {"umass",           "umass",         0, STAR, loc+  7,      0, &pspec35},
/* 84: acpi0 at mainbus0 */
    {"acpi",            "acpi",          0, NORM,     loc,      0, &pspec4},
/* 85: acpiec0 at acpi0 */
    {"acpiec",          "acpiec",        0, NORM,     loc,      0, &pspec8},
/* 86: acpiecdt0 at acpi0 */
    {"acpiecdt",        "acpiecdt",      0, NORM,     loc,      0, &pspec10},
/* 87: acpibut0 at acpi0 */
    {"acpibut",         "acpibut",       0, NORM,     loc,      0, &pspec8},
/* 88: acpitz0 at acpi0 */
    {"acpitz",          "acpitz",        0, NORM,     loc,      0, &pspec8},
/* 89: aiboost0 at acpi0 */
    {"aiboost",         "aiboost",       0, NORM,     loc,      0, &pspec8},
    {NULL,              NULL,            0, 0,    NULL,      0, NULL}
};

const short cfroots[] = {
        43 /* mainbus0 */,
        -1
};

/* pseudo-devices */
void cpuctlattach(int);
void accf_dataattach(int);
void accf_httpattach(int);
void cryptoattach(int);
void swcryptoattach(int);
void cgdattach(int);
void mdattach(int);
void vndattach(int);
void bpfilterattach(int);
void ipfilterattach(int);
void loopattach(int);
void ptyattach(int);
void sequencerattach(int);
void rndattach(int);
void clockctlattach(int);
void ksymsattach(int);
void lockstatattach(int);
void drvctlattach(int);
void padattach(int);
void wsmuxattach(int);
void wsfontattach(int);

struct pdevinit pdevinit[] = {
        { cpuctlattach, 1 },
        { accf_dataattach, 1 },
        { accf_httpattach, 1 },
        { cryptoattach, 1 },
        { swcryptoattach, 1 },
        { cgdattach, 4 },
        { mdattach, 1 },
        { vndattach, 1 },
        { bpfilterattach, 1 },
        { ipfilterattach, 1 },
        { loopattach, 1 },
        { ptyattach, 1 },
        { sequencerattach, 1 },
        { rndattach, 1 },
        { clockctlattach, 1 },
        { ksymsattach, 1 },
        { lockstatattach, 1 },
        { drvctlattach, 1 },
        { padattach, 1 },
        { wsmuxattach, 1 },
        { wsfontattach, 1 },
        { 0, 0 }
};
include "arch/amd64/conf/std.amd64"

options         INCLUDE_CONFIG_FILE     # embed config file in kernel binary

#ident          "GENERIC-$Revision: 1.224 $"

ident           "SPEEDY (ASUS M2N-E) 2008-09-08 16:20:43"

maxusers        64              # estimated number of users

options         INSECURE        # disable kernel security levels - X needs this
options         RTC_OFFSET=0    # hardware clock is this many mins. west of GMT
options         NTP             # NTP phase/frequency locked loop
options         KTRACE          # system call tracing via ktrace(1)
#options        SYSTRACE        # system call vetting via systrace(1)
options         SYSVMSG         # System V-like message queues
options         SYSVSEM         # System V-like semaphores
options         SYSVSHM         # System V-like memory sharing
#options        SHMMAXPGS=2048  # 2048 pages is the default
options         P1003_1B_SEMAPHORE
options         LKM             # loadable kernel modules
options         MODULAR
options         MEMORY_DISK_HOOKS
options         MEMORY_DISK_DYNAMIC
options         WAPBL           # File system journaling
options         VGA_POST

options         USERCONF        # userconf(4) support
options         SYSCTL_INCLUDE_DESCR    # Include sysctl descriptions in kernel

options         POWERNOW_K8
options         SOFTDEP         # FFS soft updates support.
options         QUOTA           # UFS quotas
options         NFSSERVER       # Network File System server

options         EXEC_ELF32
options         COMPAT_NETBSD32
options         COMPAT_BSDPTY   # /dev/[pt]ty?? ptys.
options         COMPAT_40

options         DIAGNOSTIC      # expensive kernel consistency checks
#options        DEBUG           # expensive debugging checks/support
options         KMEMSTATS       # kernel memory statistics (vmstat -m)

# Because gcc omits the frame pointer for any -O level, the line below
# is needed to make backtraces in DDB work.
#
makeoptions     COPTS="-O2 -fno-omit-frame-pointer"
options         DDB             # in-kernel debugger
#options        DDB_ONPANIC=1   # see also sysctl(8): `ddb.onpanic'
options         DDB_HISTORY_SIZE=512    # enable history editing in DDB
#options        KGDB            # remote debugger
#options        KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600
makeoptions     DEBUG="-g"      # compile full symbol table

# File systems
file-system     FFS             # UFS
file-system     MFS             # memory file system
file-system     NFS             # Network File System client
file-system     CD9660          # ISO 9660 + Rock Ridge file system
file-system     MSDOSFS
file-system     FDESC           # /dev/fd
file-system     KERNFS          # /kern
file-system     NULLFS          # loopback file system
file-system     PROCFS          # /proc
file-system     PTYFS           # /dev/pts/N support
file-system     TMPFS           # Efficient memory file-system

# Networking options
options         GATEWAY         # packet forwarding
options         INET            # IP + ICMP + TCP + UDP
options         PFIL_HOOKS      # pfil(9) packet filter hooks
options         IPFILTER_LOG    # ipmon(8) log support
options         IPFILTER_LOOKUP # ippool(8) support
#options        IPFILTER_DEFAULT_BLOCK  # block all packets by default

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
#options        ACPIVERBOSE     # verbose ACPI configuration messages
#options        MIIVERBOSE      # verbose PHY autoconfig messages
#options        PCIVERBOSE      # verbose PCI device autoconfig messages
#options        SCSIVERBOSE     # human readable SCSI error messages
#options        USBVERBOSE      # verbose USB device autoconfig messages

#
# wscons options
#
options         WSEMUL_VT100            # VT100 / VT220 emulation
options         WS_KERNEL_FG=WSCOL_GREEN
options         WSDISPLAY_COMPAT_PCVT           # emulate some ioctls
options         WSDISPLAY_COMPAT_SYSCONS        # emulate some ioctls
options         WSDISPLAY_COMPAT_USL            # VT handling
options         WSDISPLAY_COMPAT_RAWKBD         # can get raw scancodes
options         PCDISPLAY_SOFTCURSOR
options         WSDISPLAY_SCROLLSUPPORT

config          netbsd  root on wd0a type ffs

#
# Pseudo-Devices
#

# accept filters
pseudo-device   accf_data               # "dataready" accept filter
pseudo-device   accf_http               # "httpready" accept filter

# crypto pseudo-devices
pseudo-device   crypto                  # /dev/crypto device
pseudo-device   swcrypto                # software crypto implementation

# disk/mass storage pseudo-devices
pseudo-device   cgd             4       # cryptographic disk devices
#pseudo-device  fss             4       # file system snapshot device
pseudo-device   md              1       # memory disk device (ramdisk)
pseudo-device   vnd                     # disk-like interface to files
#options        VND_COMPRESSION         # compressed vnd(4)

# network pseudo-devices
pseudo-device   bpfilter                # Berkeley packet filter
pseudo-device   ipfilter                # IP filter (firewall) and NAT
pseudo-device   loop                    # network loopback

# miscellaneous pseudo-devices
pseudo-device   pty                     # pseudo-terminals
pseudo-device   sequencer       1       # MIDI sequencer
pseudo-device   rnd                     # /dev/random and in-kernel generator
pseudo-device   clockctl                # user control of clock subsystem
pseudo-device   ksyms                   # /dev/ksyms
#pseudo-device  pf                      # PF packet filter
#pseudo-device  pflog                   # PF log if
pseudo-device   lockstat
pseudo-device   drvctl
pseudo-device   pad

# wscons pseudo-devices
pseudo-device   wsmux                   # mouse & keyboard multiplexor
pseudo-device   wsfont

options         PAX_MPROTECT=0          # PaX mprotect(2) restrictions
options         PAX_ASLR=0              # PaX Address Space Layout Randomization

options         DKWEDGE_AUTODISCOVER
options         DKWEDGE_METHOD_GPT

#
# Device configuration
#

# Mainbus configuration

mainbus0        at root
cpu0            at mainbus0
cpu1            at mainbus0
cpu2            at mainbus0
cpu3            at mainbus0
ioapic0         at mainbus0
acpi0           at mainbus0
options         ACPI_SCANPCI
pci0            at mainbus0 bus 0
pci1            at ppb0 bus 1
pci2            at ppb1 bus 2

# ACPI devices (includes formerly-isa stuff!)
hpet0           at acpi0
aiboost0        at acpi0
acpibut0        at acpi0                # ACPI Button
acpitz0         at acpi0                # ACPI Thermal Zone
com0            at acpi0
lpt0            at acpi0
attimer0        at acpi0
#fdc0           at acpi0
#fd0            at fdc0
pcppi0          at acpi0
midi0           at pcppi0
sysbeep0        at pcppi0
acpiec0         at acpi0        # ACPI Embedded Controller (late binding)
acpiecdt0       at acpi0        # ACPI Embedded Controller (early binding)
#npx0           at acpi0

# PCI Bus configuration

amdtemp*        at pci? dev ? function ?        # XXX
pcib0           at pci0 dev 1 function 0
nfsmbc0         at pci0 dev 1 function 1
nfsmb0          at nfsmbc0
iic0            at nfsmb0
nfsmb1          at nfsmbc0
iic1            at nfsmb1
ohci0           at pci0 dev 2 function 0
ehci0           at pci0 dev 2 function 1
viaide0         at pci0 dev 4 function 0
viaide1         at pci0 dev 5 function 0
viaide2         at pci0 dev 5 function 1
viaide3         at pci0 dev 5 function 2
ppb0            at pci0 dev 6 function 0
azalia0         at pci0 dev 6 function 1
nfe0            at pci0 dev 8 function 0
makphy0         at nfe0 phy 1
ppb1            at pci0 dev 15 function 0
azalia1         at pci2 dev 0 function 1
pchb0           at pci0 dev 24 function 0
pchb1           at pci0 dev 24 function 1
pchb2           at pci0 dev 24 function 2
pchb3           at pci0 dev 24 function 3
pchb4           at pci0 dev 24 function 4

vga0            at pci2 dev 0 function 0
wsdisplay0      at vga0 kbdmux 1
#drm0           at vga0

isa0            at pcib0
itesio0         at isa0 port 0x2e

audio0          at azalia0
audio1          at azalia1
audio2          at pad0

# IDE Disk/CD/Tape configuration

atabus0         at viaide0 channel 0
atabus1         at viaide1 channel 0
atabus2         at viaide1 channel 1
atabus3         at viaide2 channel 0
atabus4         at viaide2 channel 1
atabus5         at viaide3 channel 0
atabus6         at viaide3 channel 1

wd0             at atabus4 drive 0
wd*             at atabus? drive ?

# USB keyboard, mouse, and printer

usb0            at ohci0
uhub0           at usb0
usb1            at ehci0
uhub1           at usb1
uhub*           at uhub? port ?

uhidev*         at uhub? port ? configuration ? interface ?
ukbd*           at uhidev? reportid ?
wskbd*          at ukbd? console ? mux 1
ums*            at uhidev? reportid ? 
wsmouse*        at ums? mux 0
ulpt*           at uhub? port ? configuration ? interface ?
uhid*           at uhidev? reportid ?
ugen*           at uhub? port ? 
options         UGEN_BULK_RA_WB # Read-ahead/write-behind on ugen bulk endpts
umass*          at uhub? port ? configuration ? interface ?
scsibus*        at umass?
sd*             at scsibus?

# PS/2 keyboard and mouse

pckbc0          at acpi0
pckbd0          at pckbc0
wskbd0          at pckbd0 mux 1
pms0            at pckbc0
wsmouse0        at pms0 mux 0

# NVIDIA nForce2/3/4 SMBus controller
spdmem0         at iic0 addr 0x50
spdmem1         at iic0 addr 0x51
spdmem2         at iic0 addr 0x52
spdmem3         at iic0 addr 0x53
adt7463c0       at iic1 addr 0x2e

options I2C_SCAN        # See what else might be there

options         DDB_ONPANIC=0
options         DDB_COMMANDONENTER="call ddb_vgapost; bt"

# Temporary, until bounce-buffers are fixed
#options        PHYSMEM_MAX_ADDR=4096


Home | Main Index | Thread Index | Old Index