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