==== //depot/projects/hammer/sys/coda/coda_fbsd.c#10 - /home/peter/fbp4/hammer/sys/coda/coda_fbsd.c ==== @@ -31,7 +31,7 @@ #include __FBSDID("$FreeBSD: src/sys/coda/coda_fbsd.c,v 1.36 2004/07/15 08:25:59 phk Exp $"); -#include "vcoda.h" +#include "opt_coda.h" #include #include ==== //depot/projects/hammer/sys/coda/coda_psdev.c#7 - /home/peter/fbp4/hammer/sys/coda/coda_psdev.c ==== @@ -54,7 +54,7 @@ extern int coda_nc_initialized; /* Set if cache has been initialized */ -#include +#include "opt_coda.h" #include #include ==== //depot/projects/hammer/sys/coda/coda_vfsops.c#8 - /home/peter/fbp4/hammer/sys/coda/coda_vfsops.c ==== @@ -43,7 +43,7 @@ #include __FBSDID("$FreeBSD: src/sys/coda/coda_vfsops.c,v 1.51 2004/07/30 22:08:49 phk Exp $"); -#include +#include "opt_coda.h" #include #include ==== //depot/projects/hammer/sys/conf/NOTES#59 - /home/peter/fbp4/hammer/sys/conf/NOTES ==== @@ -819,10 +819,11 @@ # Coda stuff: options CODA #CODA filesystem. -device vcoda 4 #coda minicache <-> venus comm. +device vcoda #coda minicache <-> venus comm. # Use the old Coda 5.x venus<->kernel interface instead of the new # realms-aware 6.x protocol. #options CODA_COMPAT_5 +options NVCODA=4 # # Add support for the EXT2FS filesystem of Linux fame. Be a bit @@ -1871,32 +1872,32 @@ # snd_vibes: S3 Sonicvibes PCI. # snd_uaudio: USB audio. -device "snd_ad1816" -device "snd_als4000" -#device "snd_au88x0" +device snd_ad1816 +device snd_als4000 +#device snd_au88x0 device snd_cmi -device "snd_cs4281" +device snd_cs4281 device snd_csa -device "snd_ds1" -device "snd_emu10k1" -device "snd_es137x" +device snd_ds1 +device snd_emu10k1 +device snd_es137x device snd_ess -device "snd_fm801" +device snd_fm801 device snd_gusc device snd_ich device snd_maestro -device "snd_maestro3" +device snd_maestro3 device snd_mss device snd_neomagic -device "snd_sb16" -device "snd_sb8" +device snd_sb16 +device snd_sb8 device snd_sbc device snd_solo -device "snd_t4dwave" -device "snd_via8233" -device "snd_via82c686" +device snd_t4dwave +device snd_via8233 +device snd_via82c686 device snd_vibes -#device "snd_vortex1" +#device snd_vortex1 device snd_uaudio # For non-pnp sound cards: ==== //depot/projects/hammer/sys/conf/files#76 - /home/peter/fbp4/hammer/sys/conf/files ==== @@ -82,7 +82,7 @@ cam/scsi/scsi_ses.c optional ses cam/scsi/scsi_targ_bh.c optional targbh cam/scsi/scsi_target.c optional targ -coda/coda_fbsd.c count vcoda +coda/coda_fbsd.c optional vcoda coda/coda_namecache.c optional vcoda coda/coda_psdev.c optional vcoda coda/coda_subr.c optional vcoda @@ -992,14 +992,14 @@ # # isdn4bsd device drivers # -i4b/driver/i4b_trace.c count i4btrc -i4b/driver/i4b_rbch.c count i4brbch -i4b/driver/i4b_tel.c count i4btel -i4b/driver/i4b_ipr.c count i4bipr +i4b/driver/i4b_trace.c optional i4btrc +i4b/driver/i4b_rbch.c optional i4brbch +i4b/driver/i4b_tel.c optional i4btel +i4b/driver/i4b_ipr.c optional i4bipr net/slcompress.c optional i4bipr i4b/driver/i4b_ctl.c optional i4bctl -i4b/driver/i4b_ing.c count i4bing -i4b/driver/i4b_isppp.c count i4bisppp +i4b/driver/i4b_ing.c optional i4bing +i4b/driver/i4b_isppp.c optional i4bisppp net/slcompress.c optional i4bisppp # # isdn4bsd CAPI driver ==== //depot/projects/hammer/sys/conf/files.pc98#33 - /home/peter/fbp4/hammer/sys/conf/files.pc98 ==== @@ -347,8 +347,8 @@ pc98/pc98/sio.c optional sio pc98/pc98/sio_cbus.c optional sio isa pc98/pc98/syscons_pc98.c optional sc -pc98/pc98/wd.c count wdc -pc98/pc98/wd_cd.c count wcd wdc +pc98/pc98/wd.c optional wdc +pc98/pc98/wd_cd.c optional wcd wdc pccard/mecia.c optional mecia card pci/agp_ali.c optional agp pci/agp_amd.c optional agp ==== //depot/projects/hammer/sys/conf/options#52 - /home/peter/fbp4/hammer/sys/conf/options ==== @@ -60,6 +60,7 @@ NO_ADAPTIVE_MUTEXES opt_adaptive_mutexes.h ALQ CODA_COMPAT_5 opt_coda.h +NVCODA opt_coda.h COMPAT_43 opt_compat.h COMPAT_FREEBSD4 opt_compat.h COMPILING_LINT opt_global.h @@ -680,3 +681,11 @@ DCONS_POLL_HZ opt_dcons.h DCONS_FORCE_CONSOLE opt_dcons.h DCONS_FORCE_GDB opt_dcons.h + +# Static unit counts +NI4BTRC opt_i4b.h +NI4BRBCH opt_i4b.h +NI4BTEL opt_i4b.h +NI4BIPR opt_i4b.h +NI4BING opt_i4b.h +NI4BISPPP opt_i4b.h ==== //depot/projects/hammer/sys/conf/options.pc98#24 - /home/peter/fbp4/hammer/sys/conf/options.pc98 ==== @@ -108,3 +108,7 @@ DEV_APIC opt_apic.h DEV_MECIA opt_mecia.h DEV_NPX opt_npx.h +DEV_WCD opt_wcd.h + +# Static unit counts +NWDC opt_wdc.h ==== //depot/projects/hammer/sys/i386/conf/NOTES#51 - /home/peter/fbp4/hammer/sys/i386/conf/NOTES ==== @@ -471,7 +471,7 @@ # for AGP r128 and radeon cards. device mgadrm -device "r128drm" +device r128drm device radeondrm device sisdrm device tdfxdrm @@ -863,7 +863,7 @@ # ifpi2 driver for AVM Fritz!Card PCI version 2 # # AVM Fritz!Card PCI version 2 -device "ifpi2" +device ifpi2 # #--------------------------------------------------------------------------- # iwic driver for Winbond W6692 chipset @@ -893,34 +893,38 @@ # ISDN Protocol Stack - mandatory for all hardware drivers # # Q.921 / layer 2 - i4b passive cards D channel handling -device "i4bq921" +device i4bq921 # # Q.931 / layer 3 - i4b passive cards D channel handling -device "i4bq931" +device i4bq931 # # layer 4 - i4b common passive and active card handling -device "i4b" +device i4b # #--------------------------------------------------------------------------- # ISDN devices - mandatory for all hardware drivers # # userland driver to do ISDN tracing (for passive cards only) -device "i4btrc" 4 +device i4btrc +options NI4BTRC=4 # # userland driver to control the whole thing -device "i4bctl" +device i4bctl # #--------------------------------------------------------------------------- # ISDN devices - optional # # userland driver for access to raw B channel -device "i4brbch" 4 +device i4brbch +options NI4BRBCH=4 # # userland driver for telephony -device "i4btel" 2 +device i4btel +options NI4BTEL=2 # # network driver for IP over raw HDLC ISDN -device "i4bipr" 4 +device i4bipr +options NI4BIPR=4 # enable VJ header compression detection for ipr i/f options IPR_VJ # enable logging of the first n IP packets to isdnd (n=32 here) @@ -928,13 +932,15 @@ # # network driver for sync PPP over ISDN; requires an equivalent # number of sppp device to be configured -device "i4bisppp" 4 +device i4bisppp +options NI4BISPPP=4 # # B-channel interface to the netgraph subsystem -device "i4bing" 2 +device i4bing +options NI4BING=2 # # CAPI driver needed for active ISDN cards (see iavc driver above) -device "i4bcapi" +device i4bcapi # #--------------------------------------------------------------------------- ==== //depot/projects/hammer/sys/i4b/driver/i4b_ing.c#7 - /home/peter/fbp4/hammer/sys/i4b/driver/i4b_ing.c ==== @@ -33,8 +33,6 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_ing.c,v 1.22 2004/07/06 06:43:45 ru Exp $"); -#include "i4bing.h" - #include "opt_i4b.h" #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_ipr.c#8 - /home/peter/fbp4/hammer/sys/i4b/driver/i4b_ipr.c ==== @@ -56,8 +56,6 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_ipr.c,v 1.27 2004/06/13 17:29:08 mlaier Exp $"); -#include "i4bipr.h" - #include "opt_i4b.h" #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_isppp.c#7 - /home/peter/fbp4/hammer/sys/i4b/driver/i4b_isppp.c ==== @@ -41,7 +41,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_isppp.c,v 1.25 2003/10/31 18:32:07 brooks Exp $"); -#include "i4bisppp.h" +#include "opt_i4b.h" #include #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_rbch.c#7 - /home/peter/fbp4/hammer/sys/i4b/driver/i4b_rbch.c ==== @@ -33,7 +33,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_rbch.c,v 1.33 2004/06/16 09:47:10 phk Exp $"); -#include "i4brbch.h" +#include "opt_i4b.h" #include #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_tel.c#7 - /home/peter/fbp4/hammer/sys/i4b/driver/i4b_tel.c ==== @@ -33,7 +33,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_tel.c,v 1.34 2004/06/16 09:47:10 phk Exp $"); -#include "i4btel.h" +#include "opt_i4b.h" #undef I4BTELDEBUG ==== //depot/projects/hammer/sys/i4b/driver/i4b_trace.c#8 - /home/peter/fbp4/hammer/sys/i4b/driver/i4b_trace.c ==== @@ -35,7 +35,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_trace.c,v 1.30 2004/06/16 09:47:10 phk Exp $"); -#include "i4btrc.h" +#include "opt_i4b.h" #include #include ==== //depot/projects/hammer/sys/i4b/layer4/i4b_i4bdrv.c#7 - /home/peter/fbp4/hammer/sys/i4b/layer4/i4b_i4bdrv.c ==== @@ -33,8 +33,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/layer4/i4b_i4bdrv.c,v 1.41 2004/06/16 09:47:10 phk Exp $"); -#include "i4bipr.h" -#include "i4btel.h" +#include "opt_i4b.h" #include #include @@ -48,9 +47,6 @@ #include #include -#include "i4bing.h" -#include "i4bisppp.h" - #include #include #include ==== //depot/projects/hammer/sys/i4b/layer4/i4b_l4.c#3 - /home/peter/fbp4/hammer/sys/i4b/layer4/i4b_l4.c ==== @@ -33,18 +33,13 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/layer4/i4b_l4.c,v 1.17 2003/06/11 00:01:05 obrien Exp $"); -#include "i4bipr.h" +#include "opt_i4b.h" #include #include #include #include -#include "i4bing.h" -#include "i4bisppp.h" -#include "i4brbch.h" -#include "i4btel.h" - #include #include #include ==== //depot/projects/hammer/sys/pc98/conf/GENERIC#21 - /home/peter/fbp4/hammer/sys/pc98/conf/GENERIC ==== @@ -90,10 +90,11 @@ options ATA_STATIC_ID # Static device numbering # IDE controller and disks -#device wdc 1 # Needs COMPAT_OLDISA +#device wdc # Needs COMPAT_OLDISA +#options NWDC=1 # ATAPI devices on wdc -#device wcd 1 # IDE CD-ROM +#device wcd # IDE CD-ROM # SCSI Controllers device adv # Advansys SCSI adapters ==== //depot/projects/hammer/sys/pc98/pc98/atapi.c#2 - /home/peter/fbp4/hammer/sys/pc98/pc98/atapi.c ==== @@ -101,11 +101,8 @@ */ #undef DEBUG -#include "wdc.h" - -#include "wcd.h" - -#if NWDC > 0 +#include "opt_wcd.h" +#include "opt_wdc.h" #include #include @@ -248,14 +245,14 @@ break; case AT_TYPE_DIRECT: /* direct-access */ -#if NWCD > 0 +#ifdef DEV_WCD /* FALLTHROUGH */ #else printf ("wdc%d: ATAPI Floppies not configured\n", ctlr); break; #endif case AT_TYPE_CDROM: /* CD-ROM device */ -#if NWCD > 0 +#ifdef DEV_WCD /* ATAPI CD-ROM & CD-R/RW drives */ if (acdattach (ata, unit, ap, ata->debug) < 0) break; @@ -966,5 +963,3 @@ } return (ac->result); } - -#endif /* NWDC */ ==== //depot/projects/hammer/sys/pc98/pc98/wd.c#10 - /home/peter/fbp4/hammer/sys/pc98/pc98/wd.c ==== @@ -48,12 +48,10 @@ * driver entries for polled reinit and polled write). */ -#include "wdc.h" +#include "opt_wdc.h" #undef NWD #define NWD (NWDC * 4) /* 4 drives per wdc on PC98 */ -#if NWDC > 0 - #include "opt_hw_wdog.h" #include @@ -2070,5 +2068,3 @@ } while (--timeout != 0); return (-1); } - -#endif /* NWDC > 0 */ ==== //depot/projects/hammer/usr.sbin/config/config.h#4 - /home/peter/fbp4/hammer/usr.sbin/config/config.h ==== @@ -41,7 +41,7 @@ struct file_list { STAILQ_ENTRY(file_list) f_next; char *f_fn; /* the name */ - int f_type; /* type or count */ + int f_type; /* type */ u_char f_flags; /* see below */ char *f_compilewith; /* special make rule if present */ char *f_depends; /* additional dependancies */ @@ -72,14 +72,12 @@ #define NO_IMPLCT_RULE 1 #define NO_OBJ 2 #define BEFORE_DEPEND 4 -#define NEED_COUNT 8 -#define ISDUP 16 -#define NOWERROR 32 +#define ISDUP 8 +#define NOWERROR 16 struct device { int d_done; /* processed */ char *d_name; /* name of device (e.g. rk11) */ - int d_count; /* device count */ #define UNKNOWN -2 /* -2 means not set yet */ STAILQ_ENTRY(device) d_next; /* Next one in list */ }; ==== //depot/projects/hammer/usr.sbin/config/config.y#5 - /home/peter/fbp4/hammer/usr.sbin/config/config.y ==== @@ -250,16 +250,7 @@ = { newopt(&opt, devopt($2), ns("1")); /* and the device part */ - newdev($2, UNKNOWN); - } | - DEVICE Dev NUMBER - = { - newopt(&opt, devopt($2), ns("1")); - /* and the device part */ - newdev($2, $3); - if ($3 == 0) - errx(1, "%s:%d: devices with zero units are not " - "likely to be correct", yyfile, yyline); + newdev($2); } | NODEVICE Dev = { @@ -298,14 +289,13 @@ * add a device to the list of devices */ static void -newdev(char *name, int count) +newdev(char *name) { struct device *np; np = (struct device *) malloc(sizeof *np); memset(np, 0, sizeof(*np)); np->d_name = name; - np->d_count = count; STAILQ_INSERT_TAIL(&dtab, np, d_next); } ==== //depot/projects/hammer/usr.sbin/config/lang.l#4 - /home/peter/fbp4/hammer/usr.sbin/config/lang.l ==== @@ -89,11 +89,10 @@ int yyerror(const char *); %} -WORD [A-Za-z_][-A-Za-z_]* ID [A-Za-z_][-A-Za-z_0-9]* -%START NONUM TOEOL +%START TOEOL %% -{WORD} { +{ID} { int i; BEGIN 0; @@ -104,20 +103,6 @@ } return i; } -{WORD}/[0-9]* { - int i; - - if ((i = kw_lookup(yytext)) == -1) - REJECT; - if (i == DEVICE || i == NODEVICE) - BEGIN NONUM; - return i; - } -{ID} { - BEGIN 0; - yylval.str = strdup(yytext); - return ID; - } \\\"[^"]+\\\" { BEGIN 0; yytext[yyleng-2] = '"'; ==== //depot/projects/hammer/usr.sbin/config/mkheaders.c#4 - /home/peter/fbp4/hammer/usr.sbin/config/mkheaders.c ==== @@ -47,10 +47,6 @@ #include "config.h" #include "y.tab.h" -static int do_header(char *, int); -static char *toheader(char *); -static char *tomacro(char *); - void headers(void) { @@ -69,8 +65,6 @@ dp->d_done |= DEVDONE; } } - if (fl->f_flags & NEED_COUNT) - errors += do_header(fl->f_needs, match); } } STAILQ_FOREACH(dp, &dtab, d_next) { @@ -79,157 +73,7 @@ dp->d_name); errors++; } - if (dp->d_count == UNKNOWN) - continue; - match = 0; - STAILQ_FOREACH(fl, &ftab, f_next) { - if (fl->f_needs == 0) - continue; - if ((fl->f_flags & NEED_COUNT) == 0) - continue; - if (eq(dp->d_name, fl->f_needs)) { - match++; - break; - } - } - if (match == 0) { - warnx("Error: device \"%s\" does not take a count", - dp->d_name); - errors++; - } } if (errors) errx(1, "%d errors", errors); } - -static int -do_header(char *dev, int match) -{ - char *file, *name, *inw; - struct file_list *fl, *tflp; - struct file_list_head fl_head; - struct device *dp; - FILE *inf, *outf; - int inc, oldcount; - int count, hicount; - int errors; - - /* - * After this loop, "count" will be the actual number of units, - * and "hicount" will be the highest unit declared. do_header() - * must use this higher of these values. - */ - errors = 0; - hicount = count = 0; - STAILQ_FOREACH(dp, &dtab, d_next) { - if (eq(dp->d_name, dev)) { - if (dp->d_count == UNKNOWN) { - warnx("Device \"%s\" requires a count", dev); - return 1; - } - count = dp->d_count; - break; - } - } - file = toheader(dev); - name = tomacro(dev); - if (match) - fprintf(stderr, - "FYI: static unit limits for %s are set: %s=%d\n", - dev, name, count); - remember(file); - inf = fopen(file, "r"); - oldcount = -1; - if (inf == 0) { - outf = fopen(file, "w"); - if (outf == 0) - err(1, "%s", file); - fprintf(outf, "#ifndef BURN_BRIDGES\n"); - fprintf(outf, "#define %s %d\n", name, count); - fprintf(outf, "#endif\n"); - (void) fclose(outf); - return 0; - } - STAILQ_INIT(&fl_head); - for (;;) { - char *cp; - if ((inw = get_word(inf)) == 0 || inw == (char *)EOF) - break; - if ((inw = get_word(inf)) == 0 || inw == (char *)EOF) - break; - inw = ns(inw); - cp = get_word(inf); - if (cp == 0 || cp == (char *)EOF) - break; - inc = atoi(cp); - if (eq(inw, name)) { - oldcount = inc; - inc = count; - } - cp = get_word(inf); - if (cp == (char *)EOF) - break; - fl = (struct file_list *) malloc(sizeof *fl); - bzero(fl, sizeof(*fl)); - fl->f_fn = inw; /* malloced */ - fl->f_type = inc; - STAILQ_INSERT_HEAD(&fl_head, fl, f_next); - } - (void) fclose(inf); - if (count == oldcount) { - for (fl = STAILQ_FIRST(&fl_head); fl != NULL; fl = tflp) { - tflp = STAILQ_NEXT(fl, f_next); - free(fl->f_fn); - free(fl); - } - return 0; - } - if (oldcount == -1) { - fl = (struct file_list *) malloc(sizeof *fl); - bzero(fl, sizeof(*fl)); - fl->f_fn = ns(name); - fl->f_type = count; - STAILQ_INSERT_HEAD(&fl_head, fl, f_next); - } - outf = fopen(file, "w"); - if (outf == 0) - err(1, "%s", file); - for (fl = STAILQ_FIRST(&fl_head); fl != NULL; fl = tflp) { - fprintf(outf, - "#define %s %u\n", fl->f_fn, count ? fl->f_type : 0); - tflp = STAILQ_NEXT(fl, f_next); - free(fl->f_fn); - free(fl); - } - (void) fclose(outf); - return 0; -} - -/* - * convert a dev name to a .h file name - */ -static char * -toheader(char *dev) -{ - static char hbuf[MAXPATHLEN]; - - snprintf(hbuf, sizeof(hbuf), "%s.h", path(dev)); - return (hbuf); -} - -/* - * convert a dev name to a macro name - */ -static char * -tomacro(char *dev) -{ - static char mbuf[20]; - char *cp; - - cp = mbuf; - *cp++ = 'N'; - while (*dev) - *cp++ = islower(*dev) ? toupper(*dev++) : *dev++; - *cp++ = 0; - return (mbuf); -} ==== //depot/projects/hammer/usr.sbin/config/mkmakefile.c#7 - /home/peter/fbp4/hammer/usr.sbin/config/mkmakefile.c ==== @@ -298,14 +298,14 @@ struct opt *op; char *wd, *this, *needs, *compilewith, *depends, *clean, *warning; int nreqs, isdup, std, filetype, - imp_rule, no_obj, needcount, before_depend, mandatory, nowerror; + imp_rule, no_obj, before_depend, mandatory, nowerror; fp = fopen(fname, "r"); if (fp == 0) err(1, "%s", fname); next: /* - * filename [ standard | mandatory | optional | count ] + * filename [ standard | mandatory | optional ] * [ dev* | profiling-routine ] [ no-obj ] * [ compile-with "compile rule" [no-implicit-rule] ] * [ dependency "dependency-list"] [ before-depend ] @@ -345,7 +345,6 @@ std = mandatory = 0; imp_rule = 0; no_obj = 0; - needcount = 0; before_depend = 0; nowerror = 0; filetype = NORMAL; @@ -358,10 +357,8 @@ */ } else if (eq(wd, "mandatory")) { mandatory = 1; - } else if (eq(wd, "count")) { - needcount = 1; } else if (!eq(wd, "optional")) { - printf("%s: %s must be count, optional, mandatory or standard\n", + printf("%s: %s must be optional, mandatory or standard\n", fname, this); exit(1); } @@ -451,11 +448,8 @@ if (isdup) goto invis; STAILQ_FOREACH(dp, &dtab, d_next) - if (eq(dp->d_name, wd)) { - if (std && dp->d_count <= 0) - dp->d_count = 1; + if (eq(dp->d_name, wd)) goto nextparam; - } if (mandatory) { printf("%s: mandatory device \"%s\" not found\n", fname, wd); @@ -483,8 +477,6 @@ tp->f_type = INVISIBLE; tp->f_needs = needs; tp->f_flags |= isdup; - if (needcount) - tp->f_flags |= NEED_COUNT; tp->f_compilewith = compilewith; tp->f_depends = depends; tp->f_clean = clean; @@ -516,8 +508,6 @@ tp->f_flags |= NO_OBJ; if (before_depend) tp->f_flags |= BEFORE_DEPEND; - if (needcount) - tp->f_flags |= NEED_COUNT; if (nowerror) tp->f_flags |= NOWERROR; tp->f_needs = needs;