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