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