# # Tatsuya TANIKAWA 1999/11/23 # # for PCG-767 # # # This directive is mandatory; it defines the architecture to be # configured for; in this case, the 386 family based IBM-PC and # compatibles. # machine "i386" # # This is the ``identification'' of the kernel. Usually this should # be the same as the name of your kernel. # ident TANIKAWA # # The `maxusers' parameter controls the static sizing of a number of # internal system tables by a complicated formula defined in param.c. # maxusers 32 # # The `makeoptions' parameter allows variables to be passed to the # generated Makefile in the build area. The following is equivalent # to `config -g KERNELNAME'. # #makeoptions DEBUG="-g" #Build kernel with debug symbols. # When this is set, be extra conservative in various parts of the kernel # and choose functionality over speed (on the widest variety of systems). options FAILSAFE # Options for the VM subsystem #options PQ_NOOPT # No coloring #options PQ_LARGECACHE # color for 512k/16k cache #options PQ_HUGECACHE # color for 1024k/16k cache # This allows you to actually store this configuration file into # the kernel binary itself, where it may be later read by saying: # strings -aout -n 3 /kernel | grep ^___ | sed -e 's/^___//' > MYKERNEL # #options INCLUDE_CONFIG_FILE # Include this file in kernel # # This directive defines a number of things: # - The compiled kernel is to be called `kernel' # - The root filesystem might be on partition wd0a # - Crash dumps will be written to wd0b, if possible. Specifying the # dump device here is not recommended. Use dumpon(8). # config kernel root on wd0 dumps on wd0 ##################################################################### # SMP OPTIONS: # # SMP enables building of a Symmetric MultiProcessor Kernel. # APIC_IO enables the use of the IO APIC for Symmetric I/O. # NCPU sets the number of CPUs, defaults to 2. # NBUS sets the number of busses, defaults to 4. # NAPIC sets the number of IO APICs on the motherboard, defaults to 1. # NINTR sets the total number of INTs provided by the motherboard. # # Notes: # # An SMP kernel will ONLY run on an Intel MP spec. qualified motherboard. # # Be sure to disable 'cpu "I386_CPU"' && 'cpu "I486_CPU"' for SMP kernels. # # Check the 'Rogue SMP hardware' section to see if additional options # are required by your hardware. # # Mandatory: #options SMP # Symmetric MultiProcessor Kernel #options APIC_IO # Symmetric (APIC) I/O # Optional, these are the defaults plus 1: #options NCPU=5 # number of CPUs #options NBUS=5 # number of busses #options NAPIC=2 # number of IO APICs #options NINTR=25 # number of INTs # # Rogue SMP hardware: # # Bridged PCI cards: # # The MP tables of most of the current generation MP motherboards # do NOT properly support bridged PCI cards. To use one of these # cards you should refer to ??? ##################################################################### # CPU OPTIONS # # You must specify at least one CPU (the one you intend to run on); # deleting the specification for CPUs you don't need to use may make # parts of the system run faster. This is especially true removing # I386_CPU. # #cpu "I386_CPU" #cpu "I486_CPU" cpu "I586_CPU" # aka Pentium(tm) cpu "I686_CPU" # aka Pentium Pro(tm) # # Options for CPU features. # # NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY # Pentiums) from locking up when a LOCK CMPXCHG8B instruction is # executed. This should be included for ALL kernels that won't run # on a Pentium. #options "NO_F00F_HACK" # # A math emulator is mandatory if you wish to run on hardware which # does not have a floating-point processor. Pick either the original, # bogus (but freely-distributable) math emulator, or a much more # fully-featured but GPL-licensed emulator taken from Linux. # #options MATH_EMULATE #Support for x87 emulation # Don't enable both of these in a real config. #options GPL_MATH_EMULATE #Support for x87 emulation via #new math emulator ##################################################################### # COMPATIBILITY OPTIONS # # Implement system calls compatible with 4.3BSD and older versions of # FreeBSD. You probably do NOT want to remove this as much current code # still relies on the 4.3 emulation. # options "COMPAT_43" # # Statically compile in the i386 a.out LKM compatability support. # Also available as an KLD module. # #options LKM # # Allow user-mode programs to manipulate their local descriptor tables. # This option is required for the WINE Windows(tm) emulator, and is # not used by anything else (that we know of). # options USER_LDT #allow user-level control of i386 ldt # # These three options provide support for System V Interface # Definition-style interprocess communication, in the form of shared # memory, semaphores, and message queues, respectively. # options SYSVSHM options SYSVSEM options SYSVMSG # # This option includes a MD5 routine in the kernel, this is used for # various authentication and privacy uses. # options "MD5" # # Allow processes to switch to vm86 mode, as well as enabling direct # user-mode access to the I/O port space. This option is necessary for # the doscmd emulator to run and the VESA modes in syscons to be available. # #options "VM86" ##################################################################### # DEBUGGING OPTIONS # # Enable the kernel debugger. # #options DDB # # Don't drop into DDB for a panic. Intended for unattended operation # where you may want to drop to DDB from the console, but still want # the machine to recover from a panic # #options DDB_UNATTENDED # # If using GDB remote mode to debug the kernel, there's a non-standard # extension to the remote protocol that can be used to use the serial # port as both the debugging port and the system console. It's non- # standard and you're on your own if you enable it. See also the # "remotechat" variables in the FreeBSD specific version of gdb. # #options GDB_REMOTE_CHAT # # KTRACE enables the system-call tracing facility ktrace(2). # options KTRACE #kernel tracing # # The INVARIANTS option is used in a number of source files to enable # extra sanity checking of internal structures. This support is not # enabled by default because of the extra time it would take to check # for these conditions, which can only occur as a result of # programming errors. # #options INVARIANTS # # The INVARIANT_SUPPORT option makes us compile in support for # verifying some of the internal structures. It is a prerequisite for # 'INVARIANTS', as enabling 'INVARIANTS' will make these functions be # called. The intent is that you can set 'INVARIANTS' for single # source files (by changing the source file or specifying it on the # command line) if you have 'INVARIANT_SUPPORT' enabled. # #options INVARIANT_SUPPORT # # The DIAGNOSTIC option is used to enable extra debugging information # from some parts of the kernel. As this makes everything more noisy, # it is disabled by default. # #options DIAGNOSTIC # # PERFMON causes the driver for Pentium/Pentium Pro performance counters # to be compiled. See perfmon(4) for more information. # options PERFMON # # This option let some drivers co-exist that can't co-exist in a running # system. This is used to be able to compile all kernel code in one go for # quality assurance purposes (like this file, which the option takes it name # from.) # #options COMPILING_LINT # XXX - this doesn't belong here. # Allow ordinary users to take the console - this is useful for X. options UCONSOLE # XXX - this doesn't belong here either options USERCONFIG #boot -c editor #options INTRO_USERCONFIG #imply -c and show intro screen options VISUAL_USERCONFIG #visual boot -c editor ##################################################################### # NETWORKING OPTIONS # # Protocol families: # Only the INET (Internet) family is officially supported in FreeBSD. # Source code for the NS (Xerox Network Service) is provided for amusement # value. # options INET #Internet communications protocols # # Network interfaces: # pseudo-device ether #Generic Ethernet pseudo-device loop #Network loopback device pseudo-device bpfilter 4 #Berkeley packet filter #pseudo-device disc #Discard device pseudo-device tun 1 #Tunnel driver #pseudo-device sl 2 #Serial Line IP #pseudo-device ppp 2 #Point-to-point protocol #options PPP_BSDCOMP #PPP BSD-compress support #options PPP_DEFLATE #PPP zlib/deflate/gzip support #options PPP_FILTER #enable bpf filtering (needs bpfilter) # # Internet family options: # options MROUTING # Multicast routing options IPFIREWALL #firewall options IPFIREWALL_VERBOSE #print information about # dropped packets #options IPFIREWALL_FORWARD #enable transparent proxy support #options "IPFIREWALL_VERBOSE_LIMIT=100" #limit verbosity #options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default #options IPDIVERT #divert sockets #options IPFILTER #kernel ipfilter support #options IPFILTER_LOG #ipfilter logging #options IPFILTER_LKM #kernel support for ip_fil.o LKM # DUMMYNET enables the "dummynet" bandwidth limiter. You need # IPFIREWALL as well. See the dummynet(4) manpage for more info. # BRIDGE enables bridging between ethernet cards -- see bridge(4). # You can use IPFIREWALL and dummynet together with bridging. #options DUMMYNET #options BRIDGE ##################################################################### # FILESYSTEM OPTIONS # One of these is mandatory: options FFS #Fast filesystem options MFS #Memory File System options NFS #Network File System # The rest are optional: # options NFS_NOSERVER #Disable the NFS-server code. #options "CD9660" #ISO 9660 filesystem #options FDESC #File descriptor filesystem options MSDOSFS #MS DOS File System #options NTFS #NT File System options PROCFS #Process filesystem # The xFS_ROOT options REQUIRE the associated ``options xFS'' options FFS_ROOT #FFS usable as root device # Soft updates is technique for improving file system speed and # making abrupt shutdown less risky. It is not enabled by default due # to copyright restraints on the code that implement it. # # Read ../../ufs/ffs/README.softupdates to learn what you need to # do to enable this. ../../contrib/softupdates/README gives # more details on how they actually work. # #options SOFTUPDATES # Make space in the kernel for a MFS root filesystem. Define to the number # of kilobytes to reserve for the filesystem. #options MFS_ROOT_SIZE=10 # Allows MFS filesystems to be exported via nfs #options EXPORTMFS # Allow this many swap-devices. #options NSWAPDEV=20 # Disk quotas are supported when this option is enabled. If you # change the value of this option, you must do a `make clean' in your # kernel compile directory in order to get a working kernel. # #options QUOTA #enable disk quotas # The number is supposed to be in seconds. #options "CD9660_ROOTDELAY=20" # If you are running a machine just as a fileserver for PC and MAC # users, using SAMBA or Netatalk, you may consider setting this option # and keeping all those users' directories on a filesystem that is # mounted with the suiddir option. This gives new files the same # ownership as the directory (similiar to group). It's a security hole # if you let these users run programs, so confine it to file-servers # (but it'll save you lots of headaches in those cases). Root owned # directories are exempt and X bits are cleared. The suid bit must be # set on the directory as well; see chmod(1) PC owners can't see/set # ownerships so they keep getting their toes trodden on. This saves # you all the support calls as the filesystem it's used on will act as # they expect: "It's my dir so it must be my file". # #options SUIDDIR # Large sector media compatibility options FFS_COMPAT_XXXXBSD # FreeBSD 1.X, 2.X and NetBSD FFS # compatibility for sector size is # other than DEVBSIZE. ##################################################################### # SCSI DEVICES # SCSI DEVICE CONFIGURATION controller scbus0 #base SCSI code device ch0 #SCSI media changers device da0 #SCSI direct access devices (aka disks) device sa0 #SCSI tapes device cd0 #SCSI CD-ROMs device od0 # Optical Memory (MO etc) device pass0 #CAM passthrough driver # CAM OPTIONS: #options CAMDEBUG #options "CAM_DEBUG_BUS=-1" #options "CAM_DEBUG_TARGET=-1" #options "CAM_DEBUG_LUN=-1" #options "CAM_DEBUG_FLAGS=CAM_DEBUG_INFO|CAM_DEBUG_TRACE|CAM_DEBUG_CDB" #options "CAM_MAX_HIGHPOWER=4" #options SCSI_NO_SENSE_STRINGS #options SCSI_NO_OP_STRINGS #options SCSI_REPORT_GEOMETRY #options SCSI_DELAY=8000 # Be pessimistic about Joe SCSI device # Optional timeout for the CAM processor target (pt) device # This is specified in seconds. The default is 60 seconds. #options SCSI_PT_DEFAULT_TIMEOUT="60" ##################################################################### # MISCELLANEOUS DEVICES AND OPTIONS pseudo-device pty 32 #Pseudo ttys - can go as high as 256 pseudo-device speaker #Play IBM BASIC-style noises out your speaker pseudo-device gzip #Exec gzipped a.out's pseudo-device vn #Vnode driver (turns a file into a device) #pseudo-device snp 3 #Snoop device - to look at pty/vty/etc.. #pseudo-device ccd 4 #Concatenated disk driver #pseudo-device vinum #Vinum concat/mirror/raid driver #options VINUMDEBUG #enable Vinum debugging hooks # Size of the kernel message buffer. Should be N * pagesize. #options "MSGBUF_SIZE=40960" ##################################################################### # HARDWARE DEVICE CONFIGURATION # # Mandatory ISA devices: isa, npx # controller isa0 # # Options for `isa': # #options "AUTO_EOI_1" #options "AUTO_EOI_2" #options "MAXMEM=(128*1024)" #options "TUNE_1542" #options BROKEN_KEYBOARD_RESET #options PAS_JOYSTICK_ENABLE # Enable support for the kernel PLL to use an external PPS signal, # under supervision of [x]ntpd(8) # More info in ftp://ftp.udel.edu/pub/ntp/kernel.tar.Z options PPS_SYNC # If you see the "calcru: negative time of %ld usec for pid %d (%s)\n" # message you probably have some broken sw/hw which disables interrupts # for too long. You can make the system more resistant to this by # choosing a high value for NTIMECOUNTER. The default is 5, there # is no upper limit but more than a couple of hundred are not productive. #options "NTIMECOUNTER=20" # Enable PnP support in the kernel. This allows you to automaticly # attach to PnP cards for drivers that support it and allows you to # configure cards from USERCONFIG. See pnp(4) for more info. #controller pnp0 # The keyboard controller; it controlls the keyboard and the PS/2 mouse. controller atkbdc0 at isa? port IO_KBD tty # The AT keyboard device atkbd0 at isa? tty irq 1 # Options for atkbd: #options ATKBD_DFLT_KEYMAP # specify the built-in keymap #makeoptions ATKBD_DFLT_KEYMAP="jp.106" # These options are valid for other keyboard drivers as well. #options KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap #options KBD_INSTALL_CDEV # install a CDEV entry in /dev # `flags' for atkbd: # 0x01 Force detection of keyboard, else we always assume a keyboard # 0x02 Don't reset keyboard, useful for some newer ThinkPads # 0x04 Old-style (XT) keyboard support, useful for older ThinkPads # PS/2 mouse device psm0 at isa? tty irq 12 # Options for psm: #options PSM_HOOKAPM #hook the APM resume event, useful #for some laptops #options PSM_RESETAFTERSUSPEND #reset the device at the resume event # The video card driver. device vga0 at isa? port ? conflicts # Options for vga: # Try the following option if the mouse pointer is not drawn correctly # or font does not seem to be loaded properly. May cause flicker on # some systems. #options VGA_ALT_SEQACCESS # If you can dispense with some vga driver features, you may want to # use the following options to save some memory. #options VGA_NO_FONT_LOADING # don't save/load font #options VGA_NO_MODE_CHANGE # don't change video modes # Older video cards may require this option for proper operation. #options VGA_SLOW_IOACCESS # do byte-wide i/o's to TS and GDC regs # To include support for VESA video modes #options VESA # needs VM86 defined too!! # Splash screen at start up! Screen savers require this too. pseudo-device splash # The pcvt console driver (vt220 compatible). #device vt0 at isa? tty #options XSERVER # support for running an X server. #options FAT_CURSOR # start with block cursor # This PCVT option is for keyboards such as those used on IBM ThinkPad laptops #options PCVT_SCANSET=2 # IBM keyboards are non-std # The syscons console driver (sco color console compatible). device sc0 at isa? tty options MAXCONS=8 # number of virtual consoles #options "STD8X16FONT" # Compile font in #makeoptions "STD8X16FONT"="cp850" #options SC_HISTORY_SIZE=200 # number of history buffer lines options SC_DISABLE_REBOOT # disable reboot key sequence # # The Numeric Processing eXtension driver. This should be configured if # your machine has a math co-processor, unless the coprocessor is very # buggy. If it is not configured then you *must* configure math emulation # (see above). If both npx0 and emulation are configured, then only npx0 # is used (provided it works). device npx0 at isa? port IO_NPX iosiz 0x0 flags 0x0 irq 13 # # Optional ISA and EISA devices: # # # SCSI host adapters: `aha', `bt' # #controller aha0 at isa? port ? cam irq ? controller aic0 at isa? disable port ? cam irq ? # # ST-506, ESDI, and IDE hard disks: `wdc' and `wd' # controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0x0000a0ff disk wd0 at wdc0 drive 0 #disk wd1 at wdc0 drive 1 controller wdc1 at isa? port "IO_WD2" bio irq 15 #disk wd2 at wdc1 drive 0 #disk wd3 at wdc1 drive 1 controller wdc2 at isa? disable port "0x240" bio irq 10 disk wd3 at wdc2 drive 0 # # Options for `wdc': # # # ATAPI enables the support for ATAPI-compatible IDE devices # options ATAPI #Enable ATAPI support for IDE bus options ATAPI_STATIC #Don't do it as an LKM # # This option allow you to override the default probe time for IDE # devices, to get a faster probe. Setting this below 10000 violate # the IDE specs, but may still work for you (it will work for most # people). # options IDE_DELAY=3000 # Be optimistic about Joe IDE device # IDE CD-ROM & CD-R/RW driver - requires wdc controller and ATAPI option device acd0 # IDE floppy driver - requires wdc controller and ATAPI option device wfd0 # IDE tape driver - requires wdc controller and ATAPI option device wst0 # # Standard floppy disk controllers and floppy tapes: `fdc', `fd', and `ft' # controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 disk fd0 at fdc0 drive 0 disk fd1 at fdc0 drive 1 # # Other standard PC hardware: `olpt', `mse', `sio', etc. # #device olpt0 at isa? port? tty irq 7 #device olpt1 at isa? port "IO_LPT3" tty irq 5 #device mse0 at isa? port 0x23c tty irq 5 device sio0 at isa? port "IO_COM1" tty flags 0x10 irq 4 device sio1 at isa? port "IO_COM2" tty irq 3 device sio2 at isa? disable port "IO_COM3" tty irq 10 device sio3 at isa? disable port "IO_COM4" tty irq 10 # Options for serial drivers that support consoles (only for sio now): #options BREAK_TO_DEBUGGER #a BREAK on a comconsole goes to #DDB, if available. #options CONSPEED=9600 #default speed for serial console (default 9600) # Options for sio: #options COM_ESP #code for Hayes ESP #options COM_MULTIPORT #code for some cards with shared IRQs #options "EXTRA_SIO=2" #number of extra sio ports to allocate # Parallel-Port Bus # # Supported interfaces: # ppc ISA-bus parallel port interfaces. # controller ppbus0 #controller vpo0 at ppbus? device lpt0 at ppbus? #device plip0 at ppbus? device ppi0 at ppbus? #device pps0 at ppbus? #device lpbb0 at ppbus? device ppc0 at isa? port? tty irq 7 # # Network interfaces: `cx', `ed', `el', `ep', `ie', `is', `le', `lnc' # device ed0 at isa? disable port 0x280 net irq 5 iomem 0xd8000 device ep0 at isa? disable port 0x300 net irq 10 device fe0 at isa? disable port 0x300 net irq ? # # Audio drivers: `snd', `sb', `pas', `gus', `pca' # # options SBC_IRQ=5 #PAS-16. Must match irq on sb0 line. #controller snd0 #device sb0 at isa? port 0x220 irq 5 drq 1 #device sbxvi0 at isa? drq 5 #device sbmidi0 at isa? port 0x330 #device opl0 at isa? port 0x388 # Luigi's snd code (use INSTEAD of snd0 and all VOXWARE drivers!). # You may also wish to enable the pnp controller with this, for pnp # sound cards. # device pcm0 at isa? port 0x220 tty irq 5 drq 1 flags 0x15 # Not controlled by `snd' device pca0 at isa? port "IO_TIMER1" tty # # Miscellaneous hardware: # device apm0 at isa? device joy0 at isa? port IO_GAME # # PCI devices & PCI options: # controller pci0 #controller ahc0 #device fxp0 # # Embedded system options: # # An embedded system might want to run something other than init. #options INIT_PATH="/sbin/init:/stand/sysinstall" # USB support # UHCI controller #controller uhci0 # OHCI controller #controller ohci0 # General USB code (mandatory for USB) #controller usb0 # # Generic USB device driver #device ugen0 # Human Interface Device (anything with buttons and dials) #device uhid0 # USB keyboard #device ukbd0 # USB printer #device ulpt0 # USB mouse #device ums0 # Kernel BOOTP support #options BOOTP # Use BOOTP to obtain IP address/hostname #options BOOTP_NFSROOT # NFS mount root filesystem using BOOTP info #options "BOOTP_NFSV3" # Use NFS v3 to NFS mount root #options BOOTP_COMPAT # Workaround for broken bootp daemons. #options "BOOTP_WIRED_TO=fxp0" # Use interface fxp0 for BOOTP ##################################################################### # # PCCARD/PCMCIA # # PCCARD (PCMCIA) support - do not remove. pseudo-device card 1 # You must use "flags 0x1" when you don't hear any negotiation noise(?) # if you use modem card, or pccardd doesn't read cis tuple, tell you # 'No card in database for"(null)"("(null)")' in case of Cirrus Logic's # pcic is your PC. #device pcic0 at isa? port 0x3e0 flags 0x1 irq 11 device pcic0 at isa? port 0x3e0 irq 9 # # Laptop/Notebook options: # #options POWERFAIL_NMI # make it beep instead of panicing # You may need to reset all pccards after resuming options PCIC_RESUME_RESET # reset after resume # Detach SCSI devices when the SCSI card is removed #options SCSI_DETACH # Detach ATAPI devices when the ATA card is removed options ATAPI_DETACH # Japanese version of WaveLAN PCMCIA uses 2.4GHz band instead of 915MHz # band that US version uses. If you want to use Japanese version of # WaveLAN, uncomment this line, or edit the corresponding config entry # of /etc/pccard.conf. #options "WAVELAN_PCMCIA_24" # Suspend the system when the battery status is "Low" options "APM_BATT_LOW_SUSPEND" # If you want to use NTP on laptop machines, uncomment the following # option. Current APM implementation affects NTP client. #options "APM_NO_CLOCK_ADJUST" # PAO Enhanced PCI-PCIC support (experimental) #options CB_TEST #options FORCE_IRQ_ROUTING # If you want to disable loadable kernel modules (LKM), you # might want to use this option. #options NO_LKM # IBM Smart Capture PCMCIA card #device scc0 #device scc1 # Hitachi microcomputer system Speach Synthesizer card #device hss0 #device hss1