1# 2 3# Common NOTES between i386 and amd64 4 5# DTrace core 6# NOTE: introduces CDDL-licensed components into the kernel 7#device dtrace 8 9# DTrace modules 10#device dtrace_profile 11#device dtrace_sdt 12#device dtrace_fbt 13#device dtrace_systrace 14#device dtrace_prototype 15#device dtnfscl 16#device dtmalloc 17 18# Alternatively include all the DTrace modules 19#device dtraceall 20 21 22##################################################################### 23# SMP OPTIONS: 24# 25# Notes: 26# 27# IPI_PREEMPTION instructs the kernel to preempt threads running on other 28# CPUS if needed. Relies on the PREEMPTION option 29 30# Optional: 31options IPI_PREEMPTION 32 33# Debugging options. 34# 35options COUNT_XINVLTLB_HITS # Counters for TLB events 36options COUNT_IPIS # Per-CPU IPI interrupt counters 37 38 39##################################################################### 40# COMPATIBILITY OPTIONS 41 42# Implement system calls compatible with 4.3BSD and FreeBSD 1.x, 43# and 2.x a.out binaries. Not needed for ELF binaries, or newer 44# a.out binaries. 45options COMPAT_43 46 47 48##################################################################### 49# NETWORKING OPTIONS 50 51# 52# DEVICE_POLLING adds support for mixed interrupt-polling handling 53# of network device drivers, which has significant benefits in terms 54# of robustness to overloads and responsivity, as well as permitting 55# accurate scheduling of the CPU time between kernel network processing 56# and other activities. The drawback is a moderate (up to 1/HZ seconds) 57# potential increase in response times. 58# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING 59# to achieve smoother behaviour. 60# Additionally, you can enable/disable polling at runtime with help of 61# the ifconfig(8) utility, and select the CPU fraction reserved to 62# userland with the sysctl variable kern.polling.user_frac 63# (default 50, range 0..100). 64# 65# Not all device drivers support this mode of operation at the time of 66# this writing. See polling(4) for more details. 67 68options DEVICE_POLLING 69 70# BPF_JITTER adds support for BPF just-in-time compiler. 71 72options BPF_JITTER 73 74 75##################################################################### 76# CLOCK OPTIONS 77 78# Provide read/write access to the memory in the clock chip. 79device nvram # Access to rtc cmos via /dev/nvram 80 81 82##################################################################### 83# MISCELLANEOUS DEVICES AND OPTIONS 84 85device speaker #Play IBM BASIC-style noises out your speaker 86envvar hint.speaker.0.at="isa" 87envvar hint.speaker.0.port="0x61" 88 89 90##################################################################### 91# HARDWARE BUS CONFIGURATION 92 93options IOMMU # Enable IOMMU support 94 95# 96# ISA bus 97# 98device isa 99 100# 101# Options for `isa': 102# 103# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A 104# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 105# This option breaks suspend/resume on some portables. 106# 107# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A 108# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 109# Automatic EOI is documented not to work for the slave with the 110# original i8259A, but it works for some clones and some integrated 111# versions. 112# 113# MAXMEM specifies the amount of RAM on the machine; if this is not 114# specified, FreeBSD will first read the amount of memory from the CMOS 115# RAM, so the amount of memory will initially be limited to 64MB or 16MB 116# depending on the BIOS. If the BIOS reports 64MB, a memory probe will 117# then attempt to detect the installed amount of RAM. If this probe 118# fails to detect >64MB RAM you will have to use the MAXMEM option. 119# The amount is in kilobytes, so for a machine with 128MB of RAM, it would 120# be 131072 (128 * 1024). 121# 122# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to 123# reset the CPU for reboot. This is needed on some systems with broken 124# keyboard controllers. 125 126options AUTO_EOI_1 127#options AUTO_EOI_2 128 129options MAXMEM=(128*1024) 130#options BROKEN_KEYBOARD_RESET 131 132# 133# AGP GART support 134device agp 135 136# AGP debugging. 137options AGP_DEBUG 138 139# 140# ACPI support using the Intel ACPI Component Architecture reference 141# implementation. 142# 143# ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer 144# kernel environment variables to select initial debugging levels for the 145# Intel ACPICA code. (Note that the Intel code must also have USE_DEBUGGER 146# defined when it is built). 147 148device acpi 149options ACPI_DEBUG 150 151# ACPI WMI Mapping driver 152device acpi_wmi 153 154# ACPI Asus Extras (LCD backlight/brightness, video output, etc.) 155device acpi_asus 156 157# ACPI Fujitsu Extras (Buttons) 158device acpi_fujitsu 159 160# ACPI extras driver for HP laptops 161device acpi_hp 162 163# ACPI extras driver for IBM laptops 164device acpi_ibm 165 166# ACPI Panasonic Extras (LCD backlight/brightness, video output, etc.) 167device acpi_panasonic 168 169# ACPI SBL Firmware Update 170device acpi_sbl_wmi 171 172# ACPI Sony extra (LCD brightness) 173device acpi_sony 174 175# ACPI Toshiba Extras (LCD backlight/brightness, video output, etc.) 176device acpi_toshiba 177 178# ACPI Video Extensions (LCD backlight/brightness, video output, etc.) 179device acpi_video 180 181# ACPI Docking Station 182device acpi_dock 183 184# ACPI ASOC ATK0110 ASUSTeK AI Booster (voltage, temperature and fan sensors) 185device aibs 186 187 188##################################################################### 189# HARDWARE DEVICE CONFIGURATION 190 191# 192# Optional devices: 193# 194 195# The syscons console driver (SCO color console compatible). 196device sc 197envvar hint.sc.0.at="isa" 198options MAXCONS=16 # number of virtual consoles 199options SC_ALT_MOUSE_IMAGE # simplified mouse cursor in text mode 200options SC_DFLT_FONT # compile font in 201makeoptions SC_DFLT_FONT=cp850 202options SC_DFLT_TERM=\"sc\" # default terminal emulator 203options SC_DISABLE_KDBKEY # disable `debug' key 204options SC_DISABLE_REBOOT # disable reboot key sequence 205options SC_HISTORY_SIZE=200 # number of history buffer lines 206options SC_MOUSE_CHAR=0x3 # char code for text mode mouse cursor 207options SC_PIXEL_MODE # add support for the raster text mode 208 209# The following options will let you change the default colors of syscons. 210options SC_NORM_ATTR=(FG_GREEN|BG_BLACK) 211options SC_NORM_REV_ATTR=(FG_YELLOW|BG_GREEN) 212options SC_KERNEL_CONS_ATTR=(FG_RED|BG_BLACK) 213options SC_KERNEL_CONS_ATTRS=\"\x0c\x0d\x0e\x0f\x02\x09\x0a\x0b\" 214options SC_KERNEL_CONS_REV_ATTR=(FG_BLACK|BG_RED) 215 216# The following options will let you change the default behavior of 217# cut-n-paste feature 218options SC_CUT_SPACES2TABS # convert leading spaces into tabs 219options SC_CUT_SEPCHARS=\"x09\" # set of characters that delimit words 220 # (default is single space - \"x20\") 221 222# If you have a two button mouse, you may want to add the following option 223# to use the right button of the mouse to paste text. 224options SC_TWOBUTTON_MOUSE 225 226# You can selectively disable features in syscons. 227options SC_NO_CUTPASTE 228options SC_NO_FONT_LOADING 229options SC_NO_HISTORY 230options SC_NO_MODE_CHANGE 231options SC_NO_SYSMOUSE 232options SC_NO_SUSPEND_VTYSWITCH 233#!options SC_NO_TERM_DUMB 234#!options SC_NO_TERM_SC 235#!options SC_NO_TERM_SCTEKEN 236 237# `flags' for sc 238# 0x80 Put the video card in the VESA 800x600 dots, 16 color mode 239# 0x100 Probe for a keyboard device periodically if one is not present 240 241# Splash screen and screen saver support 242device splash 243 244# Various screen savers. 245device blank_saver 246device daemon_saver 247device dragon_saver 248device fade_saver 249device fire_saver 250device green_saver 251device logo_saver 252device rain_saver 253device snake_saver 254device star_saver 255device warp_saver 256 257# To include support for VGA VESA video modes 258options VESA 259 260# Turn on extra debugging checks and output for VESA support. 261options VESA_DEBUG 262 263device dpms # DPMS suspend & resume via VESA BIOS 264 265# x86 real mode BIOS emulator, required by atkbdc/dpms/vesa 266options X86BIOS 267 268# PS/2 mouse 269device psm 270envvar hint.psm.0.at="atkbdc" 271envvar hint.psm.0.irq="12" 272 273# Options for psm: 274options PSM_HOOKRESUME #hook the system resume event, useful 275 #for some laptops 276options PSM_RESETAFTERSUSPEND #reset the device at the resume event 277 278# The keyboard controller; it controls the keyboard and the PS/2 mouse. 279device atkbdc 280envvar hint.atkbdc.0.at="isa" 281envvar hint.atkbdc.0.port="0x060" 282 283# The AT keyboard 284device atkbd 285envvar hint.atkbd.0.at="atkbdc" 286envvar hint.atkbd.0.irq="1" 287 288# Options for atkbd: 289options ATKBD_DFLT_KEYMAP # specify the built-in keymap 290makeoptions ATKBD_DFLT_KEYMAP=fr.dvorak 291 292# `flags' for atkbd: 293# 0x01 Force detection of keyboard, else we always assume a keyboard 294# 0x02 Don't reset keyboard, useful for some newer ThinkPads 295# 0x03 Force detection and avoid reset, might help with certain 296# dockingstations 297# 0x04 Old-style (XT) keyboard support, useful for older ThinkPads 298 299# Video card driver for VGA adapters. 300device vga 301envvar hint.vga.0.at="isa" 302 303# Options for vga: 304# Try the following option if the mouse pointer is not drawn correctly 305# or font does not seem to be loaded properly. May cause flicker on 306# some systems. 307options VGA_ALT_SEQACCESS 308 309# If you can dispense with some vga driver features, you may want to 310# use the following options to save some memory. 311#options VGA_NO_FONT_LOADING # don't save/load font 312#options VGA_NO_MODE_CHANGE # don't change video modes 313 314# Older video cards may require this option for proper operation. 315options VGA_SLOW_IOACCESS # do byte-wide i/o's to TS and GDC regs 316 317# The following option probably won't work with the LCD displays. 318options VGA_WIDTH90 # support 90 column modes 319 320# Debugging. 321options VGA_DEBUG 322 323# vt(4) drivers. 324device vt_vga # VGA 325device vt_vbefb # VBE framebuffer 326 327# Linear framebuffer driver for S3 VESA 1.2 cards. Works on top of VESA. 328device s3pci 329 330# 331# RAID adapters 332# 333 334# 335# Areca 11xx and 12xx series of SATA II RAID controllers. 336# CAM is required. 337# 338device arcmsr # Areca SATA II RAID 339 340# 341# Adaptec FSA RAID controllers, including integrated DELL controllers, 342# the Dell PERC 2/QC and the HP NetRAID-4M 343device aac 344device aacp # SCSI Passthrough interface (optional, CAM required) 345 346# 347# Highpoint RocketRAID 27xx. 348device hpt27xx 349 350# 351# Highpoint RocketRAID 182x. 352device hptmv 353 354# 355# Highpoint DC7280 and R750. 356device hptnr 357 358# 359# Highpoint RocketRAID. Supports RR172x, RR222x, RR2240, RR232x, RR2340, 360# RR2210, RR174x, RR2522, RR231x, RR230x. 361device hptrr 362 363# 364# Highpoint RocketRaid 3xxx series SATA RAID 365device hptiop 366 367# 368# IBM (now Adaptec) ServeRAID controllers 369device ips 370 371# 372# Intel C600 (Patsburg) integrated SAS controller 373device isci 374options ISCI_LOGGING # enable debugging in isci HAL 375 376# 377# Intel Volume Management Device (VMD) support 378device vmd 379 380# 381# PMC-Sierra SAS/SATA controller 382device pmspcv 383 384# 385# Standard floppy disk controllers and floppy tapes, supports 386# the Y-E DATA External FDD (PC Card) 387# 388device fdc 389envvar hint.fdc.0.at="isa" 390envvar hint.fdc.0.port="0x3F0" 391envvar hint.fdc.0.irq="6" 392envvar hint.fdc.0.drq="2" 393# 394# FDC_DEBUG enables floppy debugging. Since the debug output is huge, you 395# gotta turn it actually on by setting the variable fd_debug with DDB, 396# however. 397options FDC_DEBUG 398# 399# Activate this line if you happen to have an Insight floppy tape. 400# Probing them proved to be dangerous for people with floppy disks only, 401# so it's "hidden" behind a flag: 402#hint.fdc.0.flags="1" 403 404# Specify floppy devices 405envvar hint.fd.0.at="fdc0" 406envvar hint.fd.0.drive="0" 407envvar hint.fd.1.at="fdc0" 408envvar hint.fd.1.drive="1" 409 410# The cpufreq(4) driver provides support for non-ACPI CPU frequency control 411device cpufreq 412 413# 414# Network interfaces: 415# 416 417# bxe: Broadcom NetXtreme II (BCM5771X/BCM578XX) PCIe 10Gb Ethernet 418# adapters. 419# gve: Google Virtual NIC (gVNIC) 420# igc: Intel I225 2.5Gb Ethernet adapter 421# ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter 422# Requires the ipw firmware module 423# iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters 424# Requires the iwi firmware module 425# iwn: Intel Wireless WiFi Link 1000/105/135/2000/4965/5000/6000/6050 abgn 426# 802.11 network adapters 427# Requires the iwn firmware module 428# mthca: Mellanox HCA InfiniBand 429# mlx4ib: Mellanox ConnectX HCA InfiniBand 430# mlx4en: Mellanox ConnectX HCA Ethernet 431# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) 432# vmx: VMware VMXNET3 Ethernet (BSD open source) 433# wpi: Intel 3945ABG Wireless LAN controller 434# Requires the wpi firmware module 435 436device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE 437device gve # Google Virtual NIC (gVNIC) 438device igc # Intel I225 2.5G Ethernet 439device ipw # Intel 2100 wireless NICs. 440device iwi # Intel 2200BG/2225BG/2915ABG wireless NICs. 441device iwn # Intel 4965/1000/5000/6000 wireless NICs. 442device mthca # Mellanox HCA InfiniBand 443device mlx4 # Shared code module between IB and Ethernet 444device mlx4ib # Mellanox ConnectX HCA InfiniBand 445device mlx4en # Mellanox ConnectX HCA Ethernet 446device nfe # nVidia nForce MCP on-board Ethernet 447device vmx # VMware VMXNET3 Ethernet 448device wpi # Intel 3945ABG wireless NICs. 449 450# IEEE 802.11 adapter firmware modules 451 452# Intel PRO/Wireless 2100 firmware: 453# ipwfw: BSS/IBSS/monitor mode firmware 454# ipwbssfw: BSS mode firmware 455# ipwibssfw: IBSS mode firmware 456# ipwmonitorfw: Monitor mode firmware 457# Intel PRO/Wireless 2200BG/2225BG/2915ABG firmware: 458# iwifw: BSS/IBSS/monitor mode firmware 459# iwibssfw: BSS mode firmware 460# iwiibssfw: IBSS mode firmware 461# iwimonitorfw: Monitor mode firmware 462# Intel Wireless WiFi Link 4965/1000/5000/6000 series firmware: 463# iwnfw: Single module to support all devices 464# iwn1000fw: Specific module for the 1000 only 465# iwn105fw: Specific module for the 105 only 466# iwn135fw: Specific module for the 135 only 467# iwn2000fw: Specific module for the 2000 only 468# iwn2030fw: Specific module for the 2030 only 469# iwn4965fw: Specific module for the 4965 only 470# iwn5000fw: Specific module for the 5000 only 471# iwn5150fw: Specific module for the 5150 only 472# iwn6000fw: Specific module for the 6000 only 473# iwn6000g2afw: Specific module for the 6000g2a only 474# iwn6000g2bfw: Specific module for the 6000g2b only 475# iwn6050fw: Specific module for the 6050 only 476# wpifw: Intel 3945ABG Wireless LAN Controller firmware 477 478device iwifw 479device iwibssfw 480device iwiibssfw 481device iwimonitorfw 482device ipwfw 483device ipwbssfw 484device ipwibssfw 485device ipwmonitorfw 486device iwnfw 487device iwn1000fw 488device iwn105fw 489device iwn135fw 490device iwn2000fw 491device iwn2030fw 492device iwn4965fw 493device iwn5000fw 494device iwn5150fw 495device iwn6000fw 496device iwn6000g2afw 497device iwn6000g2bfw 498device iwn6050fw 499device wpifw 500 501# 502# Non-Transparent Bridge (NTB) drivers 503# 504device if_ntb # Virtual NTB network interface 505device ntb_transport # NTB packet transport driver 506device ntb # NTB hardware interface 507device ntb_hw_amd # AMD NTB hardware driver 508device ntb_hw_intel # Intel NTB hardware driver 509device ntb_hw_plx # PLX NTB hardware driver 510 511##################################################################### 512 513# 514# Miscellaneous hardware: 515# 516# ipmi: Intelligent Platform Management Interface 517# pbio: Parallel (8255 PPI) basic I/O (mode 0) port (e.g. Advantech PCL-724) 518# smbios: DMI/SMBIOS entry point (requires EFIRT option) 519# vpd: Vital Product Data kernel interface 520# asmc: Apple System Management Controller 521# si: Specialix International SI/XIO or SX intelligent serial card 522# tpm: Trusted Platform Module 523 524# Notes on the Specialix SI/XIO driver: 525# The host card is memory, not IO mapped. 526# The Rev 1 host cards use a 64K chunk, on a 32K boundary. 527# The Rev 2 host cards use a 32K chunk, on a 32K boundary. 528# The cards can use an IRQ of 11, 12 or 15. 529 530device ipmi 531device pbio 532envvar hint.pbio.0.at="isa" 533envvar hint.pbio.0.port="0x360" 534device smbios 535device vpd 536device asmc 537device tpm 538device padlock_rng # VIA Padlock RNG 539device rdrand_rng # Intel Bull Mountain RNG 540device aesni # AES-NI OpenCrypto module 541device ossl # OpenSSL OpenCrypto module 542 543# Linux KVM paravirtualization support 544device kvm_clock # KVM paravirtual clock driver 545 546# Microsoft Hyper-V enhancement support 547device hyperv # HyperV drivers 548device hvhid # HyperV HID device 549 550# VMware hypervisor support 551device pvscsi # Paravirtual SCSI driver 552device vmci # Virtual Machine Communication Interface (VMCI) 553device vmware_guestrpc # GuestRPC interface 554 555# 556# Laptop/Notebook options: 557# 558 559device backlight 560 561# 562# System Management Bus (SMB) 563# 564# Supported SMB interfaces: 565# imcsmb integrated Memory Controller (iMC) SMBus controller 566# Sandybridge-Xeon, Ivybridge-Xeon, Haswell-Xeon, Broadwell-Xeon 567# 568 569device imcsmb 570 571# 572# HID-over-I2C support 573# 574device iichid # HID-over-I2C support 575options IICHID_DEBUG # Enable HID-over-I2C debug messages 576options IICHID_SAMPLING # Workaround missing GPIO INTR support 577 578# 579# AMD System Management Network (SMN) 580# 581device amdsmn 582 583# 584# Hardware watchdog timers: 585# 586# ichwd: Intel ICH watchdog timer 587# amdsbwd: AMD SB7xx watchdog timer 588# viawd: VIA south bridge watchdog timer 589# wbwd: Winbond watchdog timer 590# itwd: ITE Super I/O watchdog timer 591# 592device ichwd 593device amdsbwd 594device viawd 595device wbwd 596device itwd 597 598# 599# Temperature sensors: 600# 601# coretemp: on-die sensor on Intel Core and newer CPUs 602# amdtemp: on-die sensor on AMD K8/K10/K11 CPUs 603# 604device coretemp 605device amdtemp 606 607# 608# CPU control pseudo-device. Provides access to MSRs, CPUID info and 609# microcode update feature. 610# 611device cpuctl 612 613# 614# SuperIO driver. 615# 616device superio 617 618##################################################################### 619 620# More undocumented options for linting. 621# Note that documenting these are not considered an affront. 622 623options KBDIO_DEBUG=2 624options KBD_MAXRETRY=4 625options KBD_MAXWAIT=6 626options KBD_RESETDELAY=201 627 628options PSM_DEBUG=1 629 630options TIMER_FREQ=((14318182+6)/12) 631 632options VM_KMEM_SIZE 633options VM_KMEM_SIZE_MAX 634options VM_KMEM_SIZE_SCALE 635