Subject: Re: Refactoring MI devices in GENERIC and friends
To: Antti Kantee <pooka@cs.hut.fi>
From: Quentin Garnier <cube@cubidou.net>
List: tech-kern
Date: 09/15/2007 17:32:12
--FAjJmzZt7svs8COR
Content-Type: multipart/mixed; boundary="F20q8ig/xCX9TrYX"
Content-Disposition: inline
--F20q8ig/xCX9TrYX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Sat, Sep 08, 2007 at 08:46:55PM +0300, Antti Kantee wrote:
[...]
> I suggest a tool for flattening the config file, usage e.g.
> config -f GENERIC > MYCONF
>=20
> That way you could also comment out the inclusion of, say, cardbus from
> the config file before flattening it and get a much more trimmed-down
> version without extra goop and a "no cardbus" statement. This might be
> at least slightly better for usabilty?
>=20
> Dunno how much work that is, but I assume negligible for someone who
> knows config(1). Hmm, who around here knows config(1) .... ?-)
See what's attached. I could make locators prettier.
Strangely enough, repeatedly running config -f on GENERIC doesn't
converge; it loops over 6 occurrences. That wouldn't happen if I
ordered stuff in a more logical manner, of course.
--=20
Quentin Garnier - cube@cubidou.net - cube@NetBSD.org
"You could have made it, spitting out benchmarks
Owe it to yourself not to fail"
Amplifico, Spitting Out Benchmarks, Hometakes Vol. 2, 2005.
--F20q8ig/xCX9TrYX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="config-f.diff"
Content-Transfer-Encoding: quoted-printable
Index: Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /pub/NetBSD-CVS/src/usr.bin/config/Makefile,v
retrieving revision 1.8
diff -u -r1.8 Makefile
--- Makefile 13 May 2007 20:22:45 -0000 1.8
+++ Makefile 15 Sep 2007 15:24:49 -0000
@@ -4,7 +4,8 @@
.include <bsd.own.mk>
=20
PROG=3D config
-SRCS=3D files.c gram.y hash.c lint.c main.c mkdevsw.c mkheaders.c mkioconf=
.c \
+SRCS=3D files.c flatten.c gram.y hash.c lint.c main.c mkdevsw.c \
+ mkheaders.c mkioconf.c \
mkmakefile.c mkswap.c pack.c scan.l sem.c util.c
=20
.PATH: ${NETBSDSRCDIR}/usr.bin/cksum
Index: defs.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /pub/NetBSD-CVS/src/usr.bin/config/defs.h,v
retrieving revision 1.20
diff -u -r1.20 defs.h
--- defs.h 13 Jan 2007 23:47:36 -0000 1.20
+++ defs.h 15 Sep 2007 15:24:49 -0000
@@ -366,6 +366,17 @@
struct nvlist *dm_opts; /* options */
};
=20
+enum opt_types {
+ OT_FLAG,
+ OT_PARAM,
+};
+
+struct opt_type {
+ enum opt_types ot_type;
+ const char *ot_name;
+ struct hashtab **ot_ht;
+};
+
/*
* Hash tables look up name=3Dvalue pairs. The pointer value of the name
* is assumed to be constant forever; this can be arranged by interning
@@ -406,6 +417,7 @@
struct hashtab *needcnttab; /* retains names marked "needs-count" */
struct hashtab *opttab; /* table of configured options */
struct hashtab *fsopttab; /* table of configured file systems */
+struct hashtab *mkopttab;
struct hashtab *defopttab; /* options that have been "defopt"'d */
struct hashtab *defflagtab; /* options that have been "defflag"'d */
struct hashtab *defparamtab; /* options that have been "defparam"'d */
@@ -479,6 +491,12 @@
void emit_options(void);
void emit_params(void);
=20
+/* flatten.c */
+void flat_emit_headers(void);
+void flat_emit_options(void);
+void flat_emit_instances(void);
+void flat_emit_configs(void);
+
/* main.c */
void addoption(const char *, const char *);
void addfsoption(const char *);
@@ -517,6 +535,7 @@
=20
/* mkioconf.c */
int mkioconf(void);
+void printlocs(FILE *, struct devi *);
=20
/* mkmakefile.c */
int mkmakefile(void);
Index: lint.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /pub/NetBSD-CVS/src/usr.bin/config/lint.c,v
retrieving revision 1.4
diff -u -r1.4 lint.c
--- lint.c 10 Jan 2007 15:17:43 -0000 1.4
+++ lint.c 15 Sep 2007 15:24:49 -0000
@@ -51,20 +51,10 @@
printf("\n");
}
=20
-enum opt_types {
- OT_FLAG,
- OT_PARAM,
- OT_FS
-};
-
-static struct opt_type {
- enum opt_types ot_type;
- const char *ot_name;
- struct hashtab **ot_ht;
-} opt_types[] =3D {
+static struct opt_type opt_types[] =3D {
{ OT_FLAG, "options", &opttab },
{ OT_PARAM, "options", &opttab },
- { OT_FS, "file-system", &fsopttab },
+ { OT_FLAG, "file-system", &fsopttab },
};
=20
static int
Index: main.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /pub/NetBSD-CVS/src/usr.bin/config/main.c,v
retrieving revision 1.23
diff -u -r1.23 main.c
--- main.c 13 Jan 2007 23:47:36 -0000 1.23
+++ main.c 15 Sep 2007 15:24:50 -0000
@@ -81,7 +81,8 @@
=20
int vflag; /* verbose output */
int Pflag; /* pack locators */
-int Lflag; /* lint config generation */
+static int Lflag; /* lint config generation */
+int fflag; /* flatten configuration */
=20
int yyparse(void);
=20
@@ -90,7 +91,6 @@
#endif
=20
static struct hashtab *obsopttab;
-static struct hashtab *mkopttab;
static struct nvlist **nextopt;
static struct nvlist **nextmkopt;
static struct nvlist **nextappmkopt;
@@ -147,7 +147,7 @@
=20
pflag =3D 0;
xflag =3D 0;
- while ((ch =3D getopt(argc, argv, "DLPgpvb:s:x")) !=3D -1) {
+ while ((ch =3D getopt(argc, argv, "DLPfgpvb:s:x")) !=3D -1) {
switch (ch) {
=20
#ifndef MAKE_BOOTSTRAP
@@ -164,6 +164,10 @@
Pflag =3D 1;
break;
=20
+ case 'f':
+ fflag =3D 1;
+ break;
+
case 'g':
/*
* In addition to DEBUG, you probably wanted to
@@ -218,8 +222,10 @@
}
=20
if (xflag && (builddir !=3D NULL || srcdir !=3D NULL || Pflag || pflag ||
- vflag || Lflag))
+ vflag || Lflag || fflag))
errx(EXIT_FAILURE, "-x must be used alone");
+ if (fflag && (builddir !=3D NULL || Pflag || pflag || Lflag))
+ errx(EXIT_FAILURE, "-f can only be used with -s and -v");
if (Lflag && (builddir !=3D NULL || Pflag || pflag))
errx(EXIT_FAILURE, "-L can only be used with -s and -v");
=20
@@ -307,7 +313,8 @@
if (yyparse())
stop();
=20
- printf("include \"%s\"\n", resolvedname);
+ if (Lflag)
+ printf("include \"%s\"\n", resolvedname);
=20
emit_params();
emit_options();
@@ -417,6 +424,19 @@
if (badstar())
stop();
=20
+ if (fflag) {
+ /* machine, ident, maxusers */
+ flat_emit_headers();
+ /* options, params, fses */
+ flat_emit_options();
+ /* all instances of drivers */
+ flat_emit_instances();
+ /* config <netbsd> root on ... */
+ flat_emit_configs();
+
+ exit (EXIT_SUCCESS);
+ }
+
/*
* Ready to go. Build all the various files.
*/
@@ -890,21 +910,13 @@
=20
/*
* Convert to lower case. This will be used in the select
- * table, to verify root file systems, and when the initial
- * VFS list is created.
+ * table, to verify root file systems.
*/
n =3D strtolower(name);
=20
if (do_option(fsopttab, &nextfsopt, name, n, "file-system"))
return;
=20
- /*
- * Add a lower-case version to the table for root file system
- * verification.
- */
- if (ht_insert(fsopttab, n, __UNCONST(n)))
- panic("addfsoption: already in table");
-
/* Add to select table. */
(void)ht_insert(selecttab, n, __UNCONST(n));
}
@@ -917,8 +929,6 @@
n =3D strtolower(name);
if (undo_option(fsopttab, &fsoptions, &nextfsopt, name, "file-system"))
return;
- if (undo_option(fsopttab, NULL, NULL, n, "file-system"))
- return;
if (undo_option(selecttab, NULL, NULL, n, "file-system"))
return;
}
@@ -984,15 +994,6 @@
{
struct nvlist *nv;
=20
- /*
- * If a defopt'ed or defflag'ed option was enabled but without
- * an explicit value (always the case for defflag), supply a
- * default value of 1, as for non-defopt options (where cc
- * treats -DBAR as -DBAR=3D1.)=20
- */
- if ((OPT_DEFOPT(name) || OPT_DEFFLAG(name)) && value =3D=3D NULL)
- value =3D "1";
-
/* assume it will work */
nv =3D newnv(name, value, NULL, 0, NULL);
if (ht_insert(ht, name, nv) =3D=3D 0) {
@@ -1214,7 +1215,7 @@
exit(1);
}
=20
- if (Lflag) {
+ if (Lflag || fflag) {
if (srcdir =3D=3D NULL)
srcdir =3D "../../..";
return;
Index: mkheaders.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /pub/NetBSD-CVS/src/usr.bin/config/mkheaders.c,v
retrieving revision 1.12
diff -u -r1.12 mkheaders.c
--- mkheaders.c 12 May 2007 10:15:31 -0000 1.12
+++ mkheaders.c 15 Sep 2007 15:24:50 -0000
@@ -257,6 +257,8 @@
fprintf(fp, "#define\t%s", nv->nv_name);
if (opt_value !=3D NULL)
fprintstr(fp, opt_value);
+ else if (!isfsoption)
+ fprintstr(fp, "1");
fputc('\n', fp);
fprint_global(fp, nv->nv_name,
opt_value =3D=3D NULL ? 1 : global_hash(opt_value));
Index: mkioconf.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /pub/NetBSD-CVS/src/usr.bin/config/mkioconf.c,v
retrieving revision 1.9
diff -u -r1.9 mkioconf.c
--- mkioconf.c 13 Jan 2007 23:47:36 -0000 1.9
+++ mkioconf.c 15 Sep 2007 15:24:50 -0000
@@ -346,6 +346,46 @@
}
=20
/*
+ * Print locators
+ */
+void
+printlocs(FILE *fp, struct devi *i)
+{
+ struct attr *a;
+ struct pspec *ps;
+ struct nvlist *nv;
+ int v;
+ const char *lastname =3D "";
+
+ if ((ps =3D i->i_pspec) !=3D NULL) {
+ if (ps->p_atdev !=3D NULL &&
+ ps->p_atunit !=3D WILD) {
+ fprintf(fp, "%s%d", ps->p_atdev->d_name,
+ ps->p_atunit);
+ } else if (ps->p_atdev !=3D NULL) {
+ fprintf(fp, "%s?", ps->p_atdev->d_name);
+ } else {
+ fprintf(fp, "%s?", ps->p_iattr->a_name);
+ }
+
+ a =3D ps->p_iattr;
+ for (nv =3D a->a_locs, v =3D 0; nv !=3D NULL;
+ nv =3D nv->nv_next, v++) {
+ if (ARRNAME(nv->nv_name, lastname)) {
+ fprintf(fp, " %s %s",
+ nv->nv_name, i->i_locs[v]);
+ } else {
+ fprintf(fp, " %s %s",
+ nv->nv_name,
+ i->i_locs[v]);
+ lastname =3D nv->nv_name;
+ }
+ }
+ } else
+ fputs("root", fp);
+}
+
+/*
* Emit the cfdata array.
*/
static void
@@ -353,13 +393,10 @@
{
struct devi **p, *i;
struct pspec *ps;
- int unit, v;
+ int unit;
const char *state, *basename, *attachment;
- struct nvlist *nv;
- struct attr *a;
char *loc;
char locbuf[20];
- const char *lastname =3D "";
=20
fprintf(fp, "\n"
"#define NORM FSTATE_NOTFOUND\n"
@@ -371,34 +408,9 @@
for (p =3D packed; (i =3D *p) !=3D NULL; p++) {
/* the description */
fprintf(fp, "/*%3d: %s at ", i->i_cfindex, i->i_name);
- if ((ps =3D i->i_pspec) !=3D NULL) {
- if (ps->p_atdev !=3D NULL &&
- ps->p_atunit !=3D WILD) {
- fprintf(fp, "%s%d", ps->p_atdev->d_name,
- ps->p_atunit);
- } else if (ps->p_atdev !=3D NULL) {
- fprintf(fp, "%s?", ps->p_atdev->d_name);
- } else {
- fprintf(fp, "%s?", ps->p_iattr->a_name);
- }
=20
- a =3D ps->p_iattr;
- for (nv =3D a->a_locs, v =3D 0; nv !=3D NULL;
- nv =3D nv->nv_next, v++) {
- if (ARRNAME(nv->nv_name, lastname)) {
- fprintf(fp, " %s %s",
- nv->nv_name, i->i_locs[v]);
- } else {
- fprintf(fp, " %s %s",
- nv->nv_name,
- i->i_locs[v]);
- lastname =3D nv->nv_name;
- }
- }
- } else {
- a =3D NULL;
- fputs("root", fp);
- }
+ ps =3D i->i_pspec;
+ printlocs(fp, i);
=20
fputs(" */\n", fp);
=20
--- /dev/null 2007-09-15 13:55:10.000000000 +0200
+++ flatten.c 2007-09-15 17:17:18.000000000 +0200
@@ -0,0 +1,141 @@
+/* $NetBSD$ */
+
+/*
+ * Copyright (c) 2007 The NetBSD Foundation.
+ * 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. 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 CONTRIBUT=
ORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LI=
MITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTIC=
ULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUT=
ORS
+ * 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 BUSINE=
SS
+ * 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.
+ */
+
+#if HAVE_NBTOOL_CONFIG_H
+#include "nbtool_config.h"
+#endif
+
+#include <stdlib.h>
+
+#include "defs.h"
+
+void
+flat_emit_headers()
+{
+ struct nvlist *nv;
+
+ printf("machine %s", machine);
+ if (machinearch !=3D NULL) {
+ printf(" %s", machinearch);
+ for (nv =3D machinesubarches; nv !=3D NULL; nv =3D nv->nv_next)
+ printf(" %s", nv->nv_name);
+ }
+ printf("\n");
+
+ if (ident !=3D NULL)
+ printf("ident \t\"%s\"\n", ident);
+
+ if (maxusers !=3D 0)
+ printf("maxusers \t%d\n", maxusers);
+}
+
+static struct opt_type opt_types[3] =3D {
+ { OT_PARAM, "options", &opttab },
+ { OT_FLAG, "file-system", &fsopttab },
+ { OT_PARAM, "makeoptions", &mkopttab },
+};
+
+static int
+do_flat_emit_option(const char *name, void *value, void *v)
+{
+ const struct opt_type *ot =3D v;
+ struct nvlist *nv =3D value;
+
+ printf("%s \t%s", ot->ot_name, name);
+ if (ot->ot_type !=3D OT_FLAG && nv->nv_str !=3D NULL)
+ printf("=3D\"%s\"", nv->nv_str);
+ printf("\n");
+
+ return 0;
+}
+
+void
+flat_emit_options()
+{
+ unsigned int i;
+
+ for (i =3D 0; i < 3; i++) {
+ printf("\n");
+ (void)ht_enumerate(*(opt_types[i].ot_ht), do_flat_emit_option,
+ &opt_types[i]);
+ }
+}
+
+static void
+flat_print_instance(struct devi *i)
+{
+ if (i->i_active !=3D DEVI_ACTIVE)
+ return;
+
+ printf("%s at ", i->i_name);
+ printlocs(stdout, i);
+ printf("\n");
+}
+
+static int
+do_flat_emit_instances(const char *key, void *value, void *aux)
+{
+ struct devi *a, *i =3D (struct devi *)value;
+
+ if (i->i_base->d_ispseudo) {
+ if (i->i_active =3D=3D DEVI_ACTIVE)
+ printf("pseudo-device \t%s\t%d\n", i->i_base->d_name,
+ i->i_unit+1);
+ } else {
+ flat_print_instance(i);
+ for (a =3D i->i_alias; a !=3D NULL; a =3D a->i_alias)
+ flat_print_instance(a);
+ }
+
+ return 0;
+}
+
+void
+flat_emit_instances()
+{
+
+ printf("\n");
+ ht_enumerate(devitab, do_flat_emit_instances, NULL);
+}
+
+void
+flat_emit_configs()
+{
+ struct config *cf;
+
+ printf("\n");
+ TAILQ_FOREACH(cf, &allcf, cf_next) {
+ printf("config %s root on %s", cf->cf_name, cf->cf_root->nv_str);
+ if (cf->cf_dump)
+ printf(" dumps on %s", cf->cf_dump->nv_str);
+ printf("\n");
+ }
+}
--F20q8ig/xCX9TrYX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="GENERIC.flat"
machine i386 x86
maxusers 32
options PCDISPLAY_SOFTCURSOR
options PMS_SYNAPTICS_TOUCHPAD
options COMPAT_30
options PFIL_HOOKS
options VM86
options COMPAT_SVR4
options WSDISPLAY_COMPAT_SYSCONS
options NETATALK
options WS_KERNEL_FG="WSCOL_GREEN"
options COMPAT_IBCS2
options NFS_BOOT_DHCP
options secmodel_bsd44_logic
options EXEC_AOUT
options SYSVSHM
options COMPAT_FREEBSD
options VMSWAP
options PTRACE
options VERIFIED_EXEC_FP_RMD160
options POWERNOW_K7
options POWERNOW_K8
options UGEN_BULK_RA_WB
options COMPAT_40
options QUOTA
options COMPAT_OSSAUDIO
options COMPAT_43
options COMPAT_09
options VERIFIED_EXEC_FP_MD5
options RTC_OFFSET="0"
options INET
options ACPIVERBOSE
options I586_CPU
options VERIFIED_EXEC_FP_SHA1
options PPP_FILTER
options DDB_HISTORY_SIZE="512"
options PAX_MPROTECT="0"
options WSDISPLAY_CUSTOM_BORDER
options IPFILTER_LOOKUP
options INET6_MD_CKSUM
options SYSVSEM
options ATADEBUG
options WSDISPLAY_COMPAT_RAWKBD
options NFS_BOOT_BOOTPARAM
options INSECURE
options VERIFIED_EXEC_FP_SHA256
options BUFQ_DISKSORT
options EXEC_ELF32
options ENHANCED_SPEEDSTEP
options PPP_DEFLATE
options LKM
options COMPAT_10
options USERCONF
options COMPAT_11
options COMPAT_12
options COMPAT_13
options SCSIVERBOSE
options COMPAT_14
options P1003_1B_SEMAPHORE
options COMPAT_15
options PCKBD_CNATTACH_MAY_FAIL
options WSDISPLAY_CUSTOM_OUTPUT
options RFC2292
options DDB
options COMPAT_16
options WSDISPLAY_SCROLLSUPPORT
options secmodel_bsd44
options PCIVERBOSE
options SCHED_4BSD
options SOFTDEP
options SYSCTL_INCLUDE_DESCR
options PPP_BSDCOMP
options FILEASSOC
options COMPAT_BSDPTY
options EXEC_SCRIPT
options COMPAT_NOMID
options WSDISPLAY_COMPAT_PCVT
options COREDUMP
options USBVERBOSE
options IPFILTER_LOG
options VERIFIED_EXEC_FP_SHA384
options USER_LDT
options MTRR
options COMPAT_20
options INET6
options MCAVERBOSE
options RAID_AUTOCONFIG
options BUFQ_FCFS
options I486_CPU
options NTP
options COMPAT_LINUX
options I686_CPU
options MIIVERBOSE
options WSDISPLAY_COMPAT_USL
options WSEMUL_VT100
options EISAVERBOSE
options INCLUDE_CONFIG_FILE
options VND_COMPRESSION
options KTRACE
options VERIFIED_EXEC_FP_SHA512
options SYSVMSG
options ACPI_SCANPCI
options NFSSERVER
options MULTIBOOT
file-system PORTAL
file-system OVERLAY
file-system NULLFS
file-system FDESC
file-system LFS
file-system MFS
file-system PTYFS
file-system NFS
file-system CODA
file-system KERNFS
file-system UNION
file-system TMPFS
file-system NTFS
file-system SMBFS
file-system CD9660
file-system EXT2FS
file-system UMAPFS
file-system PROCFS
file-system MSDOSFS
file-system FFS
makeoptions CPUFLAGS="-march=i486 -mtune=pentiumpro"
btms* at bthidev? reportid -1
auvia* at pci? dev -1 function -1
geodeide* at pci? dev -1 function -1
zyd* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
pseudo-device pppoe 1
sb0 at isa? port 0x220 size 0 iomem -1 iosiz 0 irq 5 drq 1 drq2 5
geodecntr* at geodegcb?
uftdi* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
uyap* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
esiop* at pci? dev -1 function -1
vge* at pci? dev -1 function -1
cardbus* at cardslot? slot -1
inphy* at mii? phy -1
esp* at pcmcia? function -1
pas0 at isa? port 0x220 size 0 iomem -1 iosiz 0 irq 7 drq 1 drq2 -1
uhid* at uhidev? reportid -1
brgphy* at mii? phy -1
ahc* at pci? dev -1 function -1
ahc* at eisa? slot -1
ahc* at cardbus? function -1
pseudo-device gif 1
cdce* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
ukphy* at mii? phy -1
joy* at acpi?
joy* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
joy* at pci? dev -1 function -1
joy* at eso?
ahc0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
acpibat* at acpi?
xirc* at pcmcia? function -1
cs* at pcmcia? function -1
re* at pci? dev -1 function -1
re* at cardbus? function -1
esa* at pci? dev -1 function -1
nfsmbc* at pci? dev -1 function -1
cs0 at isa? port 0x300 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
guspnp* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
rtw* at pci? dev -1 function -1
rtw* at cardbus? function -1
icpsp* at icp? unit -1
xi* at xirc?
pseudo-device swcrypto 1
pseudo-device sequencer 1
ohci* at pci? dev -1 function -1
ohci* at cardbus? function -1
acpiec* at acpi?
ss* at scsibus? target -1 lun -1
cd* at scsibus? target -1 lun -1
cd* at atapibus? drive -1
pseudo-device btuart 1
bha* at pci? dev -1 function -1
bha* at eisa? slot -1
iopsp* at iop? tid -1
ses* at scsibus? target -1 lun -1
ste* at pci? dev -1 function -1
ahd* at pci? dev -1 function -1
optiide* at pci? dev -1 function -1
rgephy* at mii? phy -1
yds* at pci? dev -1 function -1
bha0 at isa? port 0x330 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
mhzc* at pcmcia? function -1
bha1 at isa? port 0x334 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
viaide* at pci? dev -1 function -1
bktr* at pci? dev -1 function -1
mainbus0 at root
ep* at pci? dev -1 function -1
ep* at eisa? slot -1
ep* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
ep* at pcmcia? function -1
ep* at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
ep* at mca? slot -1
sd* at scsibus? target -1 lun -1
sd* at atapibus? drive -1
pseudo-device wsfont 1
hme* at pci? dev -1 function -1
stuirda* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
uvscom* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
ahcisata* at pci? dev -1 function -1
ahcisata* at jmide?
uipaq* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
pseudo-device ccd 4
aac* at pci? dev -1 function -1
tr* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
tr* at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
tr* at mca? slot -1
ix0 at isa? port 0x300 size 0 iomem -1 iosiz 0 irq 10 drq -1 drq2 -1
st* at scsibus? target -1 lun -1
st* at atapibus? drive -1
uslsa* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
usb* at ehci?
usb* at gcscehci?
usb* at ohci?
usb* at slhci?
usb* at uhci?
nele0 at isa? port 0x320 size 0 iomem -1 iosiz 0 irq 9 drq 7 drq2 -1
ubt* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
tr0 at isa? port 0xa20 size 0 iomem 0xd8000 iosiz 0 irq -1 drq -1 drq2 -1
tr1 at isa? port 0xa24 size 0 iomem 0xd0000 iosiz 0 irq -1 drq -1 drq2 -1
aic* at pcmcia? function -1
aic* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
ai0 at isa? port 0x360 size 0 iomem 0xd0000 iosiz 0 irq 7 drq -1 drq2 -1
pseudo-device agr 1
aiboost* at acpi?
mlx* at pci? dev -1 function -1
mlx* at eisa? slot -1
aic0 at isa? port 0x340 size 0 iomem -1 iosiz 0 irq 11 drq -1 drq2 -1
lc0 at isa? port 0x320 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
attimer* at acpi?
pceb* at pci? dev -1 function -1
pseudo-device tap 1
attimer0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
cue* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
axe* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
elmc* at mca? slot -1
dmphy* at mii? phy -1
pcmb* at pci? dev -1 function -1
pseudo-device vcoda 4
wm* at pci? dev -1 function -1
hifn* at pci? dev -1 function -1
oboe* at pci? dev -1 function -1
umodem* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
pseudo-device md 1
iy0 at isa? port 0x360 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
auich* at pci? dev -1 function -1
rccide* at pci? dev -1 function -1
ess* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
msk* at mskc?
cmpci* at pci? dev -1 function -1
piixide* at pci? dev -1 function -1
pcmcia* at pcic? controller -1 socket -1
pcmcia* at tcic? controller -1 socket -1
pcmcia* at cardslot? controller -1 socket -1
bge* at pci? dev -1 function -1
amdpm* at pci? dev -1 function -1
glxtphy* at mii? phy -1
ld* at iop? tid -1
ld* at aac? unit -1
ld* at amr? unit -1
ld* at cac? unit -1
ld* at icp? unit -1
ld* at twa? unit -1
ld* at twe? unit -1
ld* at mlx? unit -1
ld* at ataraid? vendtype -1 unit -1
lpt* at acpi?
lpt* at puc? port -1
mly* at pci? dev -1 function -1
wsmouse* at spic? mux 0
wsmouse* at pms? mux 0
wsmouse* at ums? mux 0
wsmouse* at uep? mux 0
wsmouse* at btms? mux 0
wsmouse* at lms? mux 0
wsmouse* at mms? mux 0
ukyopon* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
tqphy* at mii? phy -1
lpt0 at isa? port 0x378 size 0 iomem -1 iosiz 0 irq 7 drq -1 drq2 -1
lpt1 at isa? port 0x278 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
lpt2 at isa? port 0x3bc size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
umct* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
gcscehci* at pci? dev -1 function -1
sf* at pci? dev -1 function -1
siop* at pci? dev -1 function -1
pseudo-device vnd 1
igphy* at mii? phy -1
sysbeep0 at pcppi?
acpi0 at mainbus0
pseudo-device stf 1
autri* at pci? dev -1 function -1
ikphy* at mii? phy -1
btkbd* at bthidev? reportid -1
iop* at pci? dev -1 function -1
eisa0 at mainbus?
eisa0 at pceb?
sv* at pci? dev -1 function -1
iophy* at mii? phy -1
uep* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
opl* at cmpci?
opl* at eso?
opl* at ess?
opl* at fms?
opl* at sb?
opl* at sv?
opl* at wss?
opl* at yds?
opl* at ym?
edc* at mca? slot -1
exphy* at mii? phy -1
ec0 at isa? port 0x250 size 0 iomem 0xd8000 iosiz 0 irq 9 drq -1 drq2 -1
mskc* at pci? dev -1 function -1
geodegcb* at pci? dev -1 function -1
rtk* at pci? dev -1 function -1
rtk* at cardbus? function -1
le* at pci? dev -1 function -1
le* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
le* at nele?
le* at bicc?
le* at mca? slot -1
pseudo-device veriexec 1
nfsmb* at nfsmbc?
glxsb* at pci? dev -1 function -1
awi* at pcmcia? function -1
pckbc* at acpi?
amhphy* at mii? phy -1
vald* at acpi?
bnx* at pci? dev -1 function -1
pckbc0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
ed* at edc? drive -1
ch* at scsibus? target -1 lun -1
pseudo-device ataraid 1
pseudo-device ksyms 1
rlphy* at mii? phy -1
gsip* at pci? dev -1 function -1
elansc* at pci? dev -1 function -1
piixpcib* at pci? dev -1 function -1
nfe* at pci? dev -1 function -1
pseudo-device wsmux 1
pseudo-device lockstat 1
scsibus* at scsi? channel -1
nsphyter* at mii? phy -1
uchcom* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
atabus* at ata? channel -1
xge* at pci? dev -1 function -1
pckbd* at pckbc? slot -1
pseudo-device cgd 4
bthidev* at bthub?
auixp* at pci? dev -1 function -1
vr* at pci? dev -1 function -1
pseudo-device strip 1
sip* at pci? dev -1 function -1
twa* at pci? dev -1 function -1
udav* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
pseudo-device bio 1
upl* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
mpt* at pci? dev -1 function -1
iha* at pci? dev -1 function -1
ucom* at umodem? portno -1
ucom* at ubsa? portno -1
ucom* at uchcom? portno -1
ucom* at uftdi? portno -1
ucom* at uipaq? portno -1
ucom* at umct? portno -1
ucom* at uplcom? portno -1
ucom* at uslsa? portno -1
ucom* at uvscom? portno -1
ucom* at uvisor? portno -1
ucom* at ukyopon? portno -1
ucom* at ugensa? portno -1
uhub* at usb? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
uhub* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
mfi* at pci? dev -1 function -1
cy* at pci? dev -1 function -1
pcppi* at acpi?
wsdisplay* at vga? console -1 kbdmux 1
wsdisplay* at pcdisplay? console -1 kbdmux 1
pdcsata* at pci? dev -1 function -1
epic* at pci? dev -1 function -1
pcppi0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
urlphy* at mii? phy -1
clcs* at pci? dev -1 function -1
ym* at acpi?
ym* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
acpiacad* at acpi?
spc* at pcmcia? function -1
cnw* at pcmcia? function -1
fd* at fdc? drive -1
acpitz* at acpi?
fea* at eisa? slot -1
pseudo-device tun 1
pcdisplay0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
an* at pci? dev -1 function -1
an* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
an* at pcmcia? function -1
uplcom* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
artsata* at pci? dev -1 function -1
ef0 at isa? port 0x360 size 0 iomem 0xd0000 iosiz 0 irq 7 drq -1 drq2 -1
audio* at audiobus?
azalia* at pci? dev -1 function -1
mpu* at acpi?
mpu* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
mpu* at cmpci?
mpu* at eso?
mpu* at fms?
mpu* at sb?
mpu* at yds?
mpu* at ym?
slhci* at pcmcia? function -1
fdc0 at isa? port 0x3f0 size 0 iomem -1 iosiz 0 irq 6 drq 2 drq2 -1
ums* at uhidev? reportid -1
ustir* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
txp* at pci? dev -1 function -1
cz* at pci? dev -1 function -1
esh* at pci? dev -1 function -1
siside* at pci? dev -1 function -1
sbp* at ieee1394if? euihi -1 euilo -1
clct* at pci? dev -1 function -1
cac* at eisa? slot -1
cac* at pci? dev -1 function -1
pseudo-device vlan 1
puc* at pci? dev -1 function -1
pnaphy* at mii? phy -1
pms* at pckbc? slot -1
slide* at pci? dev -1 function -1
ubsec* at pci? dev -1 function -1
eg0 at isa? port 0x280 size 0 iomem -1 iosiz 0 irq 9 drq -1 drq2 -1
ne* at pci? dev -1 function -1
ne* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
ne* at pcmcia? function -1
ne* at mca? slot -1
trm* at pci? dev -1 function -1
rum* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
mca0 at mainbus?
ehci* at pci? dev -1 function -1
ehci* at cardbus? function -1
gentbi* at mii? phy -1
ne0 at isa? port 0x280 size 0 iomem -1 iosiz 0 irq 9 drq -1 drq2 -1
ne1 at isa? port 0x300 size 0 iomem -1 iosiz 0 irq 10 drq -1 drq2 -1
btbc* at pcmcia? function -1
ug* at acpi?
ti* at pci? dev -1 function -1
pchb* at pci? dev -1 function -1
sk* at skc?
pseudo-device fss 4
pseudo-device clockctl 1
uaudio* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
cbb* at pci? dev -1 function -1
cpu* at mainbus? apid -1
acpibut* at acpi?
uhci* at pci? dev -1 function -1
uhci* at cardbus? function -1
bt3c* at pcmcia? function -1
stpcide* at pci? dev -1 function -1
aceride* at pci? dev -1 function -1
wpi* at pci? dev -1 function -1
dge* at pci? dev -1 function -1
stge* at pci? dev -1 function -1
pseudo-device gre 1
pseudo-device sl 1
bicc0 at isa? port 0x320 size 0 iomem -1 iosiz 0 irq 10 drq 7 drq2 -1
satalink* at pci? dev -1 function -1
ieee1394if* at fwohci?
btsco* at bthub?
wskbd* at pckbd? console -1 mux 1
wskbd* at ukbd? console -1 mux 1
wskbd* at btkbd? console -1 mux 1
wd* at atabus? drive -1
wd* at umass? drive -1
pci* at mainbus? bus -1
pci* at pchb? bus -1
pci* at ppb? bus -1
wss* at acpi?
wss* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
ex* at pci? dev -1 function -1
ex* at cardbus? function -1
urio* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
udsbr* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
amr* at pci? dev -1 function -1
wss0 at isa? port 0x530 size 0 iomem -1 iosiz 0 irq 10 drq 0 drq2 1
fms* at pci? dev -1 function -1
pseudo-device ppp 1
pseudo-device nsmb 1
ucycom* at uhidev? reportid -1
twe* at pci? dev -1 function -1
isapnp0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
url* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
mbe* at pcmcia? function -1
iteide* at pci? dev -1 function -1
iic* at ichsmb?
iic* at nfsmb?
iic* at piixpm?
pseudo-device crypto 1
umidi* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
ate* at mca? slot -1
we* at mca? slot -1
apm* at acpi?
pcib* at pci? dev -1 function -1
uha* at eisa? slot -1
wdc* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
wdc* at pcmcia? function -1
ate0 at isa? port 0x2a0 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
sm* at pcmcia? function -1
sm* at mhzc?
weasel* at pci? dev -1 function -1
we0 at isa? port 0x280 size 0 iomem 0xd0000 iosiz 0 irq 9 drq -1 drq2 -1
ugensa* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
we1 at isa? port 0x300 size 0 iomem 0xcc000 iosiz 0 irq 10 drq -1 drq2 -1
ixpide* at pci? dev -1 function -1
uha0 at isa? port 0x330 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
wdc0 at isa? port 0x1f0 size 0 iomem -1 iosiz 0 irq 14 drq -1 drq2 -1
kue* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
ulpt* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
uhidev* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
uha1 at isa? port 0x340 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
wdc1 at isa? port 0x170 size 0 iomem -1 iosiz 0 irq 15 drq -1 drq2 -1
irframe* at uirda?
irframe* at stuirda?
irframe* at ustir?
irframe* at oboe?
ukbd* at uhidev? reportid -1
sm0 at isa? port 0x300 size 0 iomem -1 iosiz 0 irq 10 drq -1 drq2 -1
dpt* at pci? dev -1 function -1
dpt* at eisa? slot -1
umass* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
atu* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
bce* at pci? dev -1 function -1
njata* at cardbus? function -1
pseudo-device bpfilter 1
gpio* at elansc?
bmtphy* at mii? phy -1
wds0 at isa? port 0x350 size 0 iomem -1 iosiz 0 irq 15 drq 6 drq2 -1
acphy* at mii? phy -1
wds1 at isa? port 0x358 size 0 iomem -1 iosiz 0 irq 11 drq 5 drq2 -1
eap* at pci? dev -1 function -1
piixpm* at pci? dev -1 function -1
agp* at pchb?
pseudo-device rnd 1
adv* at pci? dev -1 function -1
adv* at cardbus? function -1
icp* at pci? dev -1 function -1
lmc* at pci? dev -1 function -1
vga* at pci? dev -1 function -1
cypide* at pci? dev -1 function -1
pcmcom* at pcmcia? function -1
pcic* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
tl* at pci? dev -1 function -1
pseudo-device cpuctl 1
adv0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
vga0 at isa? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
pcic0 at isa? port 0x3e0 size 0 iomem 0xd0000 iosiz 0x10000 irq -1 drq -1 drq2 -1
pcic0 at pci? dev -1 function -1
pcic1 at isa? port 0x3e2 size 0 iomem 0xe0000 iosiz 0x4000 irq -1 drq -1 drq2 -1
tra* at mca? slot -1
pcic2 at isa? port 0x3e4 size 0 iomem 0xe0000 iosiz 0x4000 irq -1 drq -1 drq2 -1
tcic0 at isa? port 0x240 size 0 iomem 0xd0000 iosiz 0x10000 irq -1 drq -1 drq2 -1
pdcide* at pci? dev -1 function -1
njs* at pci? dev -1 function -1
njs* at cardbus? function -1
ray* at pcmcia? function -1
isp* at pci? dev -1 function -1
radio* at udsbr?
radio* at bktr?
auacer* at pci? dev -1 function -1
hpet* at acpi?
lms0 at isa? port 0x23c size 0 iomem -1 iosiz 0 irq 5 drq -1 drq2 -1
lms1 at isa? port 0x238 size 0 iomem -1 iosiz 0 irq 5 drq -1 drq2 -1
qsphy* at mii? phy -1
geodewdog* at geodegcb?
pseudo-device ipfilter 1
pcscp* at pci? dev -1 function -1
atapibus* at atapi?
aue* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
adw* at pci? dev -1 function -1
cardslot* at cbb? slot -1
pseudo-device irframetty 1
hptide* at pci? dev -1 function -1
uk* at scsibus? target -1 lun -1
uk* at atapibus? drive -1
skc* at pci? dev -1 function -1
ppb* at pci? dev -1 function -1
isa0 at piixpcib?
isa0 at mainbus?
isa0 at pceb?
isa0 at pcib?
esm* at pci? dev -1 function -1
fmv* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
sony* at acpi?
svwsata* at pci? dev -1 function -1
iwi* at pci? dev -1 function -1
makphy* at mii? phy -1
atw* at pci? dev -1 function -1
atw* at cardbus? function -1
fxp* at pci? dev -1 function -1
fxp* at cardbus? function -1
fmv0 at isa? port 0x2a0 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
ipw* at pci? dev -1 function -1
utoppy* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
nsphy* at mii? phy -1
gcscide* at pci? dev -1 function -1
gus0 at isa? port 0x220 size 0 iomem -1 iosiz 0 irq 7 drq 1 drq2 6
uirda* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
fwip* at ieee1394if? euihi -1 euilo -1
npx* at acpi?
pseudo-device raid 8
el0 at isa? port 0x300 size 0 iomem -1 iosiz 0 irq 9 drq -1 drq2 -1
fpa* at pci? dev -1 function -1
npx0 at isa? port 0xf0 size 0 iomem -1 iosiz 0 irq 13 drq -1 drq2 -1
ciphy* at mii? phy -1
ath* at pci? dev -1 function -1
ath* at cardbus? function -1
uscanner* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
neo* at pci? dev -1 function -1
midi* at midibus?
midi* at pcppi?
gphyter* at mii? phy -1
mtd* at pci? dev -1 function -1
aha* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
aha* at mca? slot -1
ntwoc* at pci? dev -1 function -1
aha0 at isa? port 0x330 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
pseudo-device loop 1
aha1 at isa? port 0x334 size 0 iomem -1 iosiz 0 irq -1 drq -1 drq2 -1
usscanner* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
ciss* at pci? dev -1 function -1
pseudo-device pty 1
sqphy* at mii? phy -1
ioapic* at mainbus? apid -1
ichsmb* at pci? dev -1 function -1
acpilid* at acpi?
ral* at pci? dev -1 function -1
ral* at cardbus? function -1
ral* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
com* at acpi?
com* at puc? port -1
com* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
com* at pcmcia? function -1
com* at pcmcom? slave -1
com* at cardbus? function -1
com* at mca? slot -1
com* at xirc?
com* at mhzc?
sea0 at isa? port -1 size 0 iomem 0xc8000 iosiz 0 irq 5 drq -1 drq2 -1
fwohci* at pci? dev -1 function -1
fwohci* at cardbus? function -1
wi* at pci? dev -1 function -1
wi* at pcmcia? function -1
pcn* at pci? dev -1 function -1
pseudo-device bridge 1
com0 at isa? port 0x3f8 size 0 iomem -1 iosiz 0 irq 4 drq -1 drq2 -1
com1 at isa? port 0x2f8 size 0 iomem -1 iosiz 0 irq 3 drq -1 drq2 -1
cmdide* at pci? dev -1 function -1
eso* at pci? dev -1 function -1
com2 at isa? port 0x3e8 size 0 iomem -1 iosiz 0 irq 5 drq -1 drq2 -1
uvisor* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
lxtphy* at mii? phy -1
jmide* at pci? dev -1 function -1
ubsa* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
ahb* at eisa? slot -1
acardide* at pci? dev -1 function -1
pciide* at pci? dev -1 function -1
ugen* at uhub? port -1 configuration -1 interface -1 vendor -1 product -1 release -1
spic* at acpi?
icsphy* at mii? phy -1
tlp* at pci? dev -1 function -1
tlp* at eisa? slot -1
tlp* at cardbus? function -1
tlphy* at mii? phy -1
dpti* at iop? tid 0
mms0 at isa? port 0x23c size 0 iomem -1 iosiz 0 irq 5 drq -1 drq2 -1
emuxki* at pci? dev -1 function -1
en* at pci? dev -1 function -1
mms1 at isa? port 0x238 size 0 iomem -1 iosiz 0 irq 5 drq -1 drq2 -1
bthub* at bt3c?
bthub* at btbc?
bthub* at btuart?
bthub* at ubt?
sb* at isapnp? port -1 size 0 iomem -1 iosiz 0 irq -1 drq -1
config netbsd root on ?
--F20q8ig/xCX9TrYX--
--FAjJmzZt7svs8COR
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (NetBSD)
iQEVAwUBRuv6/NgoQloHrPnoAQKXQwf+MdY/wOIw847MvApxblJ/ByPqTQs5au04
Sq9mQLxq9kCiE7uzDHVROPYEMj+3N30dQP9DtidOdriZsgc2ZLVYlUL7CT/+1BuD
cQBPqCH5quSOTz1Wm1Trw+DawttXcqBLizfnQ2GXg4jLuhFQ7TANJS6NMIlHyzUk
DcwTgQHO5fXeSx9kggro7W0Sw+6Pf/Qzl1CTI5WNmSPls0K2+QSF3YppcTWGjnlA
g7F+rYmYInKZmm3k91u6eaJNYDYO3W/dueOR1OUeV2JwdBMmb4exuGLAT8sxtreJ
RhuPDRtMx/todIZB8MnMJkD7Keg+ZBDE5XJpKc+WPgpIU6LNEUWlwg==
=bG0a
-----END PGP SIGNATURE-----
--FAjJmzZt7svs8COR--