1# 2# NOTES -- Lines that can be cut/pasted into kernel and hints configs. 3# 4# This file contains machine dependent kernel configuration notes. For 5# machine independent notes, look in /sys/conf/NOTES. 6# 7# $FreeBSD$ 8# 9 10# 11# This directive is mandatory; it defines the architecture to be 12# configured for; in this case, the 386 family based IBM-PC and 13# compatibles. 14# 15machine i386 16 17# 18# We want LINT to cover profiling as well 19profile 2 20 21 22##################################################################### 23# SMP OPTIONS: 24# 25# APIC_IO enables the use of the IO APIC for Symmetric I/O. 26# 27# Notes: 28# 29# An SMP kernel will ONLY run on an Intel MP spec. qualified motherboard. 30# 31# Be sure to disable 'cpu I386_CPU' && 'cpu I486_CPU' for SMP kernels. 32# 33# Check the 'Rogue SMP hardware' section to see if additional options 34# are required by your hardware. 35# 36 37# Mandatory: 38options APIC_IO # Symmetric (APIC) I/O 39 40# 41# Rogue SMP hardware: 42# 43 44# Bridged PCI cards: 45# 46# The MP tables of most of the current generation MP motherboards 47# do NOT properly support bridged PCI cards. To use one of these 48# cards you should refer to ??? 49 50 51##################################################################### 52# CPU OPTIONS 53 54# 55# You must specify at least one CPU (the one you intend to run on); 56# deleting the specification for CPUs you don't need to use may make 57# parts of the system run faster. 58# I386_CPU is mutually exclusive with the other CPU types. 59# 60#cpu I386_CPU 61cpu I486_CPU 62cpu I586_CPU # aka Pentium(tm) 63cpu I686_CPU # aka Pentium Pro(tm) 64 65# 66# Options for CPU features. 67# 68# CPU_ATHLON_SSE_HACK tries to enable SSE instructions when the BIOS has 69# forgotten to enable them. 70# 71# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM 72# BlueLightning CPU. It works only with Cyrix FPU, and this option 73# should not be used with Intel FPU. 74# 75# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning 76# CPU if CPU supports it. The default is double-clock mode on 77# BlueLightning CPU box. 78# 79# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1). 80# 81# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct 82# mapped mode. Default is 2-way set associative mode. 83# 84# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space 85# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1. 86# Otherwise, the NO_LOCK bit of CCR1 is cleared. (NOTE 3) 87# 88# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e. enables 89# reorder). This option should not be used if you use memory mapped 90# I/O device(s). 91# 92# CPU_ELAN enables support for AMDs ElanSC520 CPU. 93# ELAN_XTAL sets the clock crystal frequency in Hz 94# ELAN_PPS enables precision timestamp code. 95# 96# CPU_ENABLE_SSE enables SSE/MMX2 instructions support. This is default 97# on I686_CPU and above. 98# CPU_DISABLE_SSE explicitly prevent I686_CPU from turning on SSE. 99# 100# CPU_FASTER_5X86_FPU enables faster FPU exception handler. 101# 102# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products 103# for i386 machines. 104# 105# CPU_IORT defines I/O clock delay time (NOTE 1). Default values of 106# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively 107# (no clock delay). 108# 109# CPU_L2_LATENCY specifed the L2 cache latency value. This option is used 110# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected. 111# The default value is 5. 112# 113# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination 114# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE 115# 1). 116# 117# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs. This option 118# is useful when you use Socket 8 to Socket 370 converter, because most Pentium 119# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs. 120# 121# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1). 122# 123# CPU_SUSP_HLT enables suspend on HALT. If this option is set, CPU 124# enters suspend mode following execution of HALT instruction. 125# 126# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s). 127# 128# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD 129# K5/K6/K6-2 cpus. 130# 131# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache 132# flush at hold state. 133# 134# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs 135# without cache flush at hold state, and (2) write-back CPU cache on 136# Cyrix 6x86 whose revision < 2.7 (NOTE 2). 137# 138# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY 139# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is 140# executed. This option is only needed if I586_CPU is also defined, 141# and should be included for any non-Pentium CPU that defines it. 142# 143# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors 144# which indicates that the 15-16MB range is *definitely* not being 145# occupied by an ISA memory hole. 146# 147# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32 148# machines. VmWare seems to emulate this instruction poorly, causing 149# the guest OS to run very slowly. Enabling this with a SMP kernel 150# will cause the kernel to be unusable. 151# 152# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT, 153# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs. 154# These options may crash your system. 155# 156# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled 157# in write-through mode when revision < 2.7. If revision of Cyrix 158# 6x86 >= 2.7, CPU cache is always enabled in write-back mode. 159# 160# NOTE 3: This option may cause failures for software that requires 161# locked cycles in order to operate correctly. 162# 163options CPU_ATHLON_SSE_HACK 164options CPU_BLUELIGHTNING_FPU_OP_CACHE 165options CPU_BLUELIGHTNING_3X 166options CPU_BTB_EN 167options CPU_DIRECT_MAPPED_CACHE 168options CPU_DISABLE_5X86_LSSER 169options CPU_ELAN 170options ELAN_XTAL=32768000 171options ELAN_PPS 172options CPU_ENABLE_SSE 173#options CPU_DISABLE_SSE 174options CPU_FASTER_5X86_FPU 175options CPU_I486_ON_386 176options CPU_IORT 177options CPU_L2_LATENCY=5 178options CPU_LOOP_EN 179options CPU_PPRO2CELERON 180options CPU_RSTK_EN 181options CPU_SUSP_HLT 182options CPU_UPGRADE_HW_CACHE 183options CPU_WT_ALLOC 184options CYRIX_CACHE_WORKS 185options CYRIX_CACHE_REALLY_WORKS 186#options NO_F00F_HACK 187options CPU_DISABLE_CMPXCHG 188 189# 190# A math emulator is mandatory if you wish to run on hardware which 191# does not have a floating-point processor. Pick either the original, 192# bogus (but freely-distributable) math emulator, or a much more 193# fully-featured but GPL-licensed emulator taken from Linux. 194# 195options MATH_EMULATE #Support for x87 emulation 196# Don't enable both of these in a real config. 197options GPL_MATH_EMULATE #Support for x87 emulation via 198 199# Debug options 200options NPX_DEBUG # enable npx debugging (FPU/math emu) 201 #new math emulator 202 203# 204# PERFMON causes the driver for Pentium/Pentium Pro performance counters 205# to be compiled. See perfmon(4) for more information. 206# 207options PERFMON 208 209 210##################################################################### 211# NETWORKING OPTIONS 212 213# 214# DEVICE_POLLING adds support for mixed interrupt-polling handling 215# of network device drivers, which has significant benefits in terms 216# of robustness to overloads and responsivity, as well as permitting 217# accurate scheduling of the CPU time between kernel network processing 218# and other activities. The drawback is a moderate (up to 1/HZ seconds) 219# potential increase in response times. 220# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING 221# to achieve smoother behaviour. 222# Additionally, you can enable/disable polling at runtime with the 223# sysctl variable kern.polling.enable (defaults off), and select 224# the CPU fraction reserved to userland with the sysctl variable 225# kern.polling.user_frac (default 50, range 0..100). 226# 227# Only the "dc" "fxp" and "sis" devices support this mode of operation at 228# the time of this writing. 229 230options DEVICE_POLLING 231 232 233##################################################################### 234# CLOCK OPTIONS 235 236# The following options are used for debugging clock behavior only, and 237# should not be used for production systems. 238# 239# CLK_CALIBRATION_LOOP will run the clock calibration loop at startup 240# until the user presses a key. 241 242options CLK_CALIBRATION_LOOP 243 244# The following two options measure the frequency of the corresponding 245# clock relative to the RTC (onboard mc146818a). 246 247options CLK_USE_I8254_CALIBRATION 248options CLK_USE_TSC_CALIBRATION 249 250 251##################################################################### 252# MISCELLANEOUS DEVICES AND OPTIONS 253 254device speaker #Play IBM BASIC-style noises out your speaker 255hint.speaker.0.at="isa" 256hint.speaker.0.port="0x61" 257device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT! 258device apm_saver # Requires APM 259 260 261##################################################################### 262# HARDWARE BUS CONFIGURATION 263 264# 265# ISA bus 266# 267device isa 268 269# 270# Options for `isa': 271# 272# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A 273# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 274# This option breaks suspend/resume on some portables. 275# 276# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A 277# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 278# Automatic EOI is documented not to work for for the slave with the 279# original i8259A, but it works for some clones and some integrated 280# versions. 281# 282# MAXMEM specifies the amount of RAM on the machine; if this is not 283# specified, FreeBSD will first read the amount of memory from the CMOS 284# RAM, so the amount of memory will initially be limited to 64MB or 16MB 285# depending on the BIOS. If the BIOS reports 64MB, a memory probe will 286# then attempt to detect the installed amount of RAM. If this probe 287# fails to detect >64MB RAM you will have to use the MAXMEM option. 288# The amount is in kilobytes, so for a machine with 128MB of RAM, it would 289# be 131072 (128 * 1024). 290# 291# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to 292# reset the CPU for reboot. This is needed on some systems with broken 293# keyboard controllers. 294 295options COMPAT_OLDISA #Use ISA shims and glue for old drivers 296options AUTO_EOI_1 297#options AUTO_EOI_2 298 299options MAXMEM=(128*1024) 300#options BROKEN_KEYBOARD_RESET 301 302# 303# EISA bus 304# 305# The EISA bus device is `eisa'. It provides auto-detection and 306# configuration support for all devices on the EISA bus. 307 308device eisa 309 310# By default, only 10 EISA slots are probed, since the slot numbers 311# above clash with the configuration address space of the PCI subsystem, 312# and the EISA probe is not very smart about this. This is sufficient 313# for most machines, but in particular the HP NetServer LC series comes 314# with an onboard AIC7770 dual-channel SCSI controller on EISA slot #11, 315# thus you need to bump this figure to 12 for them. 316options EISA_SLOTS=12 317 318# 319# MCA bus: 320# 321# The MCA bus device is `mca'. It provides auto-detection and 322# configuration support for all devices on the MCA bus. 323# No hints are required for MCA. 324 325device mca 326 327# 328# PCI bus & PCI options: 329# 330device pci 331 332# 333# AGP GART support 334device agp 335 336 337##################################################################### 338# HARDWARE DEVICE CONFIGURATION 339 340# 341# Mandatory devices: 342# 343 344# To include support for VGA VESA video modes 345options VESA 346 347# Turn on extra debugging checks and output for VESA support. 348options VESA_DEBUG 349 350# The pcvt console driver (vt220 compatible). 351device vt 352hint.vt.0.at="isa" 353options XSERVER # support for running an X server on vt 354options FAT_CURSOR # start with block cursor 355# This PCVT option is for keyboards such as those used on really old ThinkPads 356options PCVT_SCANSET=2 357# Other PCVT options are documented in pcvt(4). 358options PCVT_24LINESDEF 359options PCVT_CTRL_ALT_DEL 360options PCVT_META_ESC 361options PCVT_NSCREENS=9 362options PCVT_PRETTYSCRNS 363options PCVT_SCREENSAVER 364options PCVT_USEKBDSEC 365options PCVT_VT220KEYB 366options PCVT_GREENSAVER 367 368# 369# The Numeric Processing eXtension driver. In addition to this, you 370# may configure a math emulator (see above). If your machine has a 371# hardware FPU and the kernel configuration includes the npx device 372# *and* a math emulator compiled into the kernel, the hardware FPU 373# will be used, unless it is found to be broken or unless "flags" to 374# npx0 includes "0x08", which requests preference for the emulator. 375device npx 376hint.npx.0.flags="0x0" 377hint.npx.0.irq="13" 378 379# 380# `flags' for npx0: 381# 0x01 don't use the npx registers to optimize bcopy. 382# 0x02 don't use the npx registers to optimize bzero. 383# 0x04 don't use the npx registers to optimize copyin or copyout. 384# 0x08 use emulator even if hardware FPU is available. 385# The npx registers are normally used to optimize copying and zeroing when 386# all of the following conditions are satisfied: 387# I586_CPU is an option 388# the cpu is an i586 (perhaps not a Pentium) 389# the probe for npx0 succeeds 390# INT 16 exception handling works. 391# Then copying and zeroing using the npx registers is normally 30-100% faster. 392# The flags can be used to control cases where it doesn't work or is slower. 393# Setting them at boot time using userconfig works right (the optimizations 394# are not used until later in the bootstrap when npx0 is attached). 395# Flag 0x08 automatically disables the i586 optimized routines. 396# 397 398# 399# Optional devices: 400# 401 402# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create 403# the /dev/3dfx0 device to work with glide implementations. This should get 404# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as 405# the tdfx DRI module from XFree86 and is completely unrelated. 406# 407# To enable Linuxulator support, one must also include COMPAT_LINUX in the 408# config as well, or you will not have the dependencies. The other option 409# is to load both as modules. 410 411device tdfx # Enable 3Dfx Voodoo support 412options TDFX_LINUX # Enable Linuxulator support 413 414# 415# ACPI support using the Intel ACPI Component Architecture reference 416# implementation. 417# 418# ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer 419# kernel environment variables to select initial debugging levels for the 420# Intel ACPICA code. (Note that the Intel code must also have USE_DEBUGGER 421# defined when it is built). 422# 423# Note that building ACPI into the kernel is deprecated; the module is 424# normally loaded automatically by the loader. 425# 426device acpi 427options ACPI_DEBUG 428 429# DRM options: 430# gammadrm: 3Dlabs Oxygen GMX 2000 431# mgadrm: AGP Matrox G200, G400, G450, G550 432# tdfxdrm: 3dfx Voodoo 3/4/5 and Banshee 433# r128drm: AGP ATI Rage 128 434# radeondrm: AGP ATI Radeon, including 7200 and 7500 435# DRM_LINUX: include linux compatibility, requires COMPAT_LINUX 436# DRM_DEBUG: include debugging code, very slow 437# 438# mga, r128, and radeon require AGP in the kernel 439 440device gammadrm 441device mgadrm 442device "r128drm" 443device radeondrm 444device tdfxdrm 445 446options DRM_DEBUG 447options DRM_LINUX 448 449# M-systems DiskOnchip products see src/sys/contrib/dev/fla/README 450device fla 451hint.fla.0.at="isa" 452 453# 454# mse: Logitech and ATI InPort bus mouse ports 455 456device mse 457hint.mse.0.at="isa" 458hint.mse.0.port="0x23c" 459hint.mse.0.irq="5" 460 461# 462# Network interfaces: 463# 464 465# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver 466# (requires sppp) 467# cx: Cronyx/Sigma multiport sync/async (with Cisco or PPP framing) 468# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503 469# HP PC Lan+, various PC Card devices (refer to etc/defauls/pccard.conf) 470# (requires miibus) 471# el: 3Com 3C501 (slow!) 472# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210; 473# Intel EtherExpress 474# le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100, 475# DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422) 476# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and 477# Am79C960) 478# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133 479# (no hints needed). 480# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140, 481# OC-3141, OC-3540, OC-3250 482# rdp: RealTek RTL 8002-based pocket ethernet adapters 483# sbni: Granch SBNI12-xx ISA and PCI adapters 484# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp) 485# wl: Lucent Wavelan (ISA card only). 486 487# Order for ISA/EISA devices is important here 488 489device ar 490hint.ar.0.at="isa" 491hint.ar.0.port="0x300" 492hint.ar.0.irq="10" 493hint.ar.0.maddr="0xd0000" 494device cx 1 495hint.cx.0.at="isa" 496hint.cx.0.port="0x240" 497hint.cx.0.irq="15" 498hint.cx.0.drq="7" 499device ed 500#options ED_NO_MIIBUS # Disable ed miibus support 501hint.ed.0.at="isa" 502hint.ed.0.port="0x280" 503hint.ed.0.irq="5" 504hint.ed.0.maddr="0xd8000" 505device el 1 506hint.el.0.at="isa" 507hint.el.0.port="0x300" 508hint.el.0.irq="9" 509device ie 2 510hint.ie.0.at="isa" 511hint.ie.0.port="0x300" 512hint.ie.0.irq="5" 513hint.ie.0.maddr="0xd0000" 514hint.ie.1.at="isa" 515hint.ie.1.port="0x360" 516hint.ie.1.irq="7" 517hint.ie.1.maddr="0xd0000" 518device le 1 519hint.le.0.at="isa" 520hint.le.0.port="0x300" 521hint.le.0.irq="5" 522hint.le.0.maddr="0xd0000" 523device lnc 524hint.lnc.0.at="isa" 525hint.lnc.0.port="0x280" 526hint.lnc.0.irq="10" 527hint.lnc.0.drq="0" 528device rdp 1 529hint.rdp.0.at="isa" 530hint.rdp.0.port="0x378" 531hint.rdp.0.irq="7" 532hint.rdp.0.flags="2" 533device sbni 534hint.sbni.0.at="isa" 535hint.sbni.0.port="0x210" 536hint.sbni.0.irq="0xefdead" 537hint.sbni.0.flags="0" 538device sr 539hint.sr.0.at="isa" 540hint.sr.0.port="0x300" 541hint.sr.0.irq="5" 542hint.sr.0.maddr="0xd0000" 543device oltr 544hint.oltr.0.at="isa" 545device wl 546hint.wl.0.at="isa" 547hint.wl.0.port="0x300" 548options WLCACHE # enables the signal-strength cache 549options WLDEBUG # enables verbose debugging output 550 551# 552# Audio drivers: `pca' 553# 554# pca: PCM audio through your PC speaker 555 556device pca 557hint.pca.0.at="isa" 558hint.pca.0.port="0x040" 559 560# 561# ATA raid adapters 562# 563device pst 564 565# 566# SCSI host adapters: 567# 568# ncv: NCR 53C500 based SCSI host adapters. 569# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters. 570# stg: TMC 18C30, 18C50 based SCSI host adapters. 571 572device ncv 573device nsp 574device stg 575hint.stg.0.at="isa" 576hint.stg.0.port="0x140" 577hint.stg.0.port="11" 578 579# 580# Adaptec FSA RAID controllers, including integrated DELL controllers, 581# the Dell PERC 2/QC and the HP NetRAID-4M 582device aac 583device aacp # SCSI Passthrough interface (optional, CAM required) 584 585# 586# Miscellaneous hardware: 587# 588# wt: Wangtek and Archive QIC-02/QIC-36 tape drives 589# ctx: Cortex-I frame grabber 590# apm: Laptop Advanced Power Management (experimental) 591# pmtimer: Timer device driver for power management events (APM or ACPI) 592# spigot: The Creative Labs Video Spigot video-acquisition board 593# dgb: Digiboard PC/Xi and PC/Xe series driver (ALPHA QUALITY!) 594# digi: Digiboard driver 595# gp: National Instruments AT-GPIB and AT-GPIB/TNT board, PCMCIA-GPIB 596# asc: GI1904-based hand scanners, e.g. the Trust Amiscan Grey 597# gsc: Genius GS-4500 hand scanner. 598# tw: TW-523 power line interface for use with X-10 home control products 599# spic: Sony Programmable I/O controller (VAIO notebooks) 600# stl: Stallion EasyIO and EasyConnection 8/32 (cd1400 based) 601# stli: Stallion EasyConnection 8/64, ONboard, Brumby (intelligent) 602 603# Notes on APM 604# The flags takes the following meaning for apm0: 605# 0x0020 Statclock is broken. 606# If apm is omitted, some systems require sysctl kern.timecounter.method=1 607# for correct timekeeping. 608 609# Notes on the spigot: 610# The video spigot is at 0xad6. This port address can not be changed. 611# The irq values may only be 10, 11, or 15 612# I/O memory is an 8kb region. Possible values are: 613# 0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff 614# The start address must be on an even boundary. 615# Add the following option if you want to allow non-root users to be able 616# to access the spigot. This option is not secure because it allows users 617# direct access to the I/O page. 618# options SPIGOT_UNSECURE 619 620# Notes on the Specialix SI/XIO driver: 621# The host card is memory, not IO mapped. 622# The Rev 1 host cards use a 64K chunk, on a 32K boundary. 623# The Rev 2 host cards use a 32K chunk, on a 32K boundary. 624# The cards can use an IRQ of 11, 12 or 15. 625 626# Notes on the Sony Programmable I/O controller 627# This is a temporary driver that should someday be replaced by something 628# that hooks into the ACPI layer. The device is hooked to the PIIX4's 629# General Device 10 decoder, which means you have to fiddle with PCI 630# registers to map it in, even though it is otherwise treated here as 631# an ISA device. At the moment, the driver polls, although the device 632# is capable of generating interrupts. It largely undocumented. 633# The port location in the hint is where you WANT the device to be 634# mapped. 0x10a0 seems to be traditional. At the moment the jogdial 635# is the only thing truly supported, but aparently a fair percentage 636# of the Vaio extra features are controlled by this device. 637 638# Notes on the Stallion stl and stli drivers: 639# See src/i386/isa/README.stl for complete instructions. 640# This is version 0.0.5alpha, unsupported by Stallion. 641# The stl driver has a secondary IO port hard coded at 0x280. You need 642# to change src/i386/isa/stallion.c if you reconfigure this on the boards. 643# The "flags" and "msize" settings on the stli driver depend on the board: 644# EasyConnection 8/64 ISA: flags 23 msize 0x1000 645# EasyConnection 8/64 EISA: flags 24 msize 0x10000 646# EasyConnection 8/64 MCA: flags 25 msize 0x1000 647# ONboard ISA: flags 4 msize 0x10000 648# ONboard EISA: flags 7 msize 0x10000 649# ONboard MCA: flags 3 msize 0x10000 650# Brumby: flags 2 msize 0x4000 651# Stallion: flags 1 msize 0x10000 652 653# Notes on the Digiboard PC/Xi and PC/Xe series driver 654# 655# The NDGBPORTS option specifies the number of ports controlled by the 656# dgb(4) driver. The default value is 16 ports per device. 657# 658# The following flag values have special meanings in dgb: 659# 0x01 - alternate layout of pins 660# 0x02 - use the windowed PC/Xe in 64K mode 661 662device wt 1 663hint.wt.0.at="isa" 664hint.wt.0.port="0x300" 665hint.wt.0.irq="5" 666hint.wt.0.drq="1" 667device ctx 1 668hint.ctx.0.at="isa" 669hint.ctx.0.port="0x230" 670hint.ctx.0.maddr="0xd0000" 671device spigot 1 672hint.spigot.0.at="isa" 673hint.spigot.0.port="0xad6" 674hint.spigot.0.irq="15" 675hint.spigot.0.maddr="0xee000" 676device apm 677hint.apm.0.flags="0x20" 678device pmtimer # Adjust system timer at wakeup time 679device gp 680hint.gp.0.at="isa" 681hint.gp.0.port="0x2c0" 682device gsc 1 683hint.gsc.0.at="isa" 684hint.gsc.0.port="0x270" 685hint.gsc.0.drq="3" 686device dgb 1 687options NDGBPORTS=17 688hint.dgb.0.at="isa" 689hint.dgb.0.port="0x220" 690hint.dgb.0.maddr="0xfc000" 691device digi 692hint.digi.0.at="isa" 693hint.digi.0.port="0x104" 694hint.digi.0.maddr="0xd0000" 695# BIOS & FEP/OS components of device digi. 696device digi_CX 697device digi_CX_PCI 698device digi_EPCX 699device digi_EPCX_PCI 700device digi_Xe 701device digi_Xem 702device digi_Xr 703# the port and irq for tw0 are fictitious 704device tw 1 705hint.tw.0.at="isa" 706hint.tw.0.port="0x380" 707hint.tw.0.irq="11" 708device asc 1 709hint.asc.0.at="isa" 710hint.asc.0.port="0x3EB" 711hint.asc.0.drq="3" 712hint.asc.0.irq="10" 713device spic 714hint.spic.0.at="isa" 715hint.spic.0.port="0x10a0" 716device stl 717hint.stl.0.at="isa" 718hint.stl.0.port="0x2a0" 719hint.stl.0.irq="10" 720device stli 721hint.stli.0.at="isa" 722hint.stli.0.port="0x2a0" 723hint.stli.0.maddr="0xcc000" 724hint.stli.0.flags="23" 725hint.stli.0.msize="0x1000" 726# You are unlikely to have the hardware for loran <phk@FreeBSD.org> 727device loran 728hint.loran.0.at="isa" 729hint.loran.0.irq="5" 730# HOT1 Xilinx 6200 card (http://www.vcc.com/) 731device xrpu 732 733# 734# Laptop/Notebook options: 735# 736# See also: 737# apm under `Miscellaneous hardware' 738# above. 739 740# For older notebooks that signal a powerfail condition (external 741# power supply dropped, or battery state low) by issuing an NMI: 742 743options POWERFAIL_NMI # make it beep instead of panicing 744 745# 746# I2C Bus 747# 748# Philips i2c bus support is provided by the `iicbus' device. 749# 750# Supported interfaces: 751# pcf Philips PCF8584 ISA-bus controller 752# 753device pcf 754hint.pcf.0.at="isa" 755hint.pcf.0.port="0x320" 756hint.pcf.0.irq="5" 757 758#--------------------------------------------------------------------------- 759# ISDN4BSD 760# 761# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd. 762# 763# i4b passive ISDN cards support contains the following hardware drivers: 764# 765# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver 766# iwic - Winbond W6692 PCI bus ISDN S/T interface controller 767# ifpi - AVM Fritz!Card PCI driver 768# ifpi2 - AVM Fritz!Card PCI version 2 driver 769# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver 770# ifpnp - AVM Fritz!Card PnP driver 771# itjc - Siemens ISAC / TJNet Tiger300/320 chipset 772# 773# i4b active ISDN cards support contains the following hardware drivers: 774# 775# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1 776# 777# Note that the ``options'' (if given) and ``device'' lines must BOTH 778# be uncommented to enable support for a given card ! 779# 780# In addition to a hardware driver (and probably an option) the mandatory 781# ISDN protocol stack devices and the mandatory support device must be 782# enabled as well as one or more devices from the optional devices section. 783# 784#--------------------------------------------------------------------------- 785# isic driver (Siemens/Infineon chipsets) 786# 787device isic 788# 789# ISA bus non-PnP Cards: 790# ---------------------- 791# 792# Teles S0/8 or Niccy 1008 793options TEL_S0_8 794hint.isic.0.at="isa" 795hint.isic.0.maddr="0xd0000" 796hint.isic.0.irq="5" 797hint.isic.0.flags="1" 798# 799# Teles S0/16 or Creatix ISDN-S0 or Niccy 1016 800options TEL_S0_16 801hint.isic.0.at="isa" 802hint.isic.0.port="0xd80" 803hint.isic.0.maddr="0xd0000" 804hint.isic.0.irq="5" 805hint.isic.0.flags="2" 806# 807# Teles S0/16.3 808options TEL_S0_16_3 809hint.isic.0.at="isa" 810hint.isic.0.port="0xd80" 811hint.isic.0.irq="5" 812hint.isic.0.flags="3" 813# 814# AVM A1 or AVM Fritz!Card 815options AVM_A1 816hint.isic.0.at="isa" 817hint.isic.0.port="0x340" 818hint.isic.0.irq="5" 819hint.isic.0.flags="4" 820# 821# USRobotics Sportster ISDN TA intern 822options USR_STI 823hint.isic.0.at="isa" 824hint.isic.0.port="0x268" 825hint.isic.0.irq="5" 826hint.isic.0.flags="7" 827# 828# ITK ix1 Micro ( < V.3, non-PnP version ) 829options ITKIX1 830hint.isic.0.at="isa" 831hint.isic.0.port="0x398" 832hint.isic.0.irq="10" 833hint.isic.0.flags="18" 834# 835# ELSA PCC-16 836options ELSA_PCC16 837hint.isic.0.at="isa" 838hint.isic.0.port="0x360" 839hint.isic.0.irq="10" 840hint.isic.0.flags="20" 841# 842# ISA bus PnP Cards: 843# ------------------ 844# 845# Teles S0/16.3 PnP 846options TEL_S0_16_3_P 847# 848# Creatix ISDN-S0 P&P 849options CRTX_S0_P 850# 851# Dr. Neuhaus Niccy Go@ 852options DRN_NGO 853# 854# Sedlbauer Win Speed 855options SEDLBAUER 856# 857# Dynalink IS64PH 858options DYNALINK 859# 860# ELSA QuickStep 1000pro ISA 861options ELSA_QS1ISA 862# 863# Siemens I-Surf 2.0 864options SIEMENS_ISURF2 865# 866# Asuscom ISDNlink 128K ISA 867options ASUSCOM_IPAC 868# 869# Eicon Diehl DIVA 2.0 and 2.02 870options EICON_DIVA 871# 872# Compaq Microcom 610 ISDN card (Compaq series PSB2222I) 873options COMPAQ_M610 874# 875# PCI bus Cards: 876# -------------- 877# 878# Cyclades Cyclom-Y PCI serial driver 879device cy 1 880options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared 881hint.cy.0.at="isa" 882hint.cy.0.irq="10" 883hint.cy.0.maddr="0xd4000" 884hint.cy.0.msize="0x2000" 885# 886#--------------------------------------------------------------------------- 887# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI) 888options ELSA_QS1PCI 889# 890# 891#--------------------------------------------------------------------------- 892# ifpnp driver for AVM Fritz!Card PnP 893# 894# AVM Fritz!Card PnP 895device ifpnp 896# 897#--------------------------------------------------------------------------- 898# ihfc driver for Cologne Chip ISA chipsets (experimental!) 899# 900# Teles 16.3c ISA PnP 901# AcerISDN P10 ISA PnP 902# TELEINT ISDN SPEED No.1 903device ihfc 904# 905#--------------------------------------------------------------------------- 906# ifpi driver for AVM Fritz!Card PCI 907# 908# AVM Fritz!Card PCI 909device ifpi 910# 911#--------------------------------------------------------------------------- 912# ifpi2 driver for AVM Fritz!Card PCI version 2 913# 914# AVM Fritz!Card PCI version 2 915device "ifpi2" 916# 917#--------------------------------------------------------------------------- 918# iwic driver for Winbond W6692 chipset 919# 920# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards) 921device iwic 922# 923#--------------------------------------------------------------------------- 924# itjc driver for Simens ISAC / TJNet Tiger300/320 chipset 925# 926# Traverse Technologies NETjet-S 927# Teles PCI-TJ 928device itjc 929# 930#--------------------------------------------------------------------------- 931# iavc driver (AVM active cards, needs i4bcapi driver!) 932# 933device iavc 934# 935# AVM B1 ISA bus (PnP mode not supported!) 936# ---------------------------------------- 937hint.iavc.0.at="isa" 938hint.iavc.0.port="0x150" 939hint.iavc.0.irq="5" 940# 941#--------------------------------------------------------------------------- 942# ISDN Protocol Stack - mandatory for all hardware drivers 943# 944# Q.921 / layer 2 - i4b passive cards D channel handling 945device "i4bq921" 946# 947# Q.931 / layer 3 - i4b passive cards D channel handling 948device "i4bq931" 949# 950# layer 4 - i4b common passive and active card handling 951device "i4b" 952# 953#--------------------------------------------------------------------------- 954# ISDN devices - mandatory for all hardware drivers 955# 956# userland driver to do ISDN tracing (for passive cards only) 957device "i4btrc" 4 958# 959# userland driver to control the whole thing 960device "i4bctl" 961# 962#--------------------------------------------------------------------------- 963# ISDN devices - optional 964# 965# userland driver for access to raw B channel 966device "i4brbch" 4 967# 968# userland driver for telephony 969device "i4btel" 2 970# 971# network driver for IP over raw HDLC ISDN 972device "i4bipr" 4 973# enable VJ header compression detection for ipr i/f 974options IPR_VJ 975# enable logging of the first n IP packets to isdnd (n=32 here) 976options IPR_LOG=32 977# 978# network driver for sync PPP over ISDN; requires an equivalent 979# number of sppp device to be configured 980device "i4bisppp" 4 981# 982# B-channel interface to the netgraph subsystem 983device "i4bing" 2 984# 985# CAPI driver needed for active ISDN cards (see iavc driver above) 986device "i4bcapi" 987# 988#--------------------------------------------------------------------------- 989 990# 991# Set the number of PV entries per process. Increasing this can 992# stop panics related to heavy use of shared memory. However, that can 993# (combined with large amounts of physical memory) cause panics at 994# boot time due the kernel running out of VM space. 995# 996# If you're tweaking this, you might also want to increase the sysctls 997# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target". 998# 999# The value below is the one more than the default. 1000# 1001options PMAP_SHPGPERPROC=201 1002 1003# 1004# Change the size of the kernel virtual address space. Due to 1005# constraints in loader(8) on i386, this must be a multiple of 4. 1006# 256 = 1 GB of kernel address space. Increasing this also causes 1007# a reduction of the address space in user processes. 512 splits 1008# the 4GB cpu address space in half (2GB user, 2GB kernel). 1009# 1010options KVA_PAGES=260 1011 1012 1013##################################################################### 1014# ABI Emulation 1015 1016# Enable iBCS2 runtime support for SCO and ISC binaries 1017options IBCS2 1018 1019# Emulate spx device for client side of SVR3 local X interface 1020options SPX_HACK 1021 1022# Enable Linux ABI emulation 1023options COMPAT_LINUX 1024 1025# Enable i386 a.out binary support 1026options COMPAT_AOUT 1027 1028# Enable the linux-like proc filesystem support (requires COMPAT_LINUX 1029# and PSEUDOFS) 1030options LINPROCFS 1031 1032# 1033# SysVR4 ABI emulation 1034# 1035# The svr4 ABI emulator can be statically compiled into the kernel or loaded as 1036# a KLD module. 1037# The STREAMS network emulation code can also be compiled statically or as a 1038# module. If loaded as a module, it must be loaded before the svr4 module 1039# (the /usr/sbin/svr4 script does this for you). If compiling statically, 1040# the `streams' device must be configured into any kernel which also 1041# specifies COMPAT_SVR4. It is possible to have a statically-configured 1042# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4 1043# script understands that it doesn't need to load the `streams' module under 1044# those circumstances. 1045# Caveat: At this time, `options KTRACE' is required for the svr4 emulator 1046# (whether static or dynamic). 1047# 1048options COMPAT_SVR4 # build emulator statically 1049options DEBUG_SVR4 # enable verbose debugging 1050device streams # STREAMS network driver (required for svr4). 1051 1052 1053##################################################################### 1054# VM OPTIONS 1055 1056# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the 1057# kernel to use a 4 MByte pages to map the kernel instead of 4k pages. 1058# This saves on the amount of memory needed for page tables needed to 1059# map the kernel. You should only disable this feature as a temporary 1060# workaround if you are having problems with it enabled. 1061# 1062#options DISABLE_PSE 1063 1064# Disable the global pages PGE CPU feature. The PGE feature allows pages 1065# to be marked with the PG_G bit. TLB entries for these pages are not 1066# flushed from the cache when %cr3 is reloaded. This can make context 1067# switches less expensive. You should only disable this feature as a 1068# temporary workaround if you are having problems with it enabled. 1069# 1070#options DISABLE_PG_G 1071 1072# KSTACK_PAGES is the number of memory pages to assign to the kernel 1073# stack of each thread. 1074 1075options KSTACK_PAGES=3 1076 1077##################################################################### 1078 1079# More undocumented options for linting. 1080# Note that documenting these are not considered an affront. 1081 1082options FB_INSTALL_CDEV # install a CDEV entry in /dev 1083 1084# PECOFF module (Win32 Execution Format) 1085options PECOFF_SUPPORT 1086options PECOFF_DEBUG 1087 1088options ENABLE_ALART 1089options I4B_SMP_WORKAROUND 1090options I586_PMC_GUPROF=0x70000 1091options KBDIO_DEBUG=2 1092options KBD_MAXRETRY=4 1093options KBD_MAXWAIT=6 1094options KBD_RESETDELAY=201 1095 1096options PSM_DEBUG=1 1097 1098options TIMER_FREQ=((14318182+6)/12) 1099 1100options VM_KMEM_SIZE 1101options VM_KMEM_SIZE_MAX 1102options VM_KMEM_SIZE_SCALE 1103 1104# Yet more undocumented options for linting. 1105options COMPAT_SUNOS 1106