1125461Speter# 2125461Speter# NOTES -- Lines that can be cut/pasted into kernel and hints configs. 3125461Speter# 4125461Speter# This file contains machine dependent kernel configuration notes. For 5125461Speter# machine independent notes, look in /sys/conf/NOTES. 6125984Sobrien# 7125461Speter# $FreeBSD: stable/10/sys/amd64/conf/NOTES 330680 2018-03-09 02:55:27Z rpokala $ 8125461Speter# 9125461Speter 10125461Speter# 11126929Speter# We want LINT to cover profiling as well. 12147687Speterprofile 2 13125461Speter 14209313Skib# 15209313Skib# Enable the kernel DTrace hooks which are required to load the DTrace 16209313Skib# kernel modules. 17209313Skib# 18209313Skiboptions KDTRACE_HOOKS 19209313Skib 20125461Speter 21126541Sobrien##################################################################### 22126541Sobrien# SMP OPTIONS: 23126541Sobrien# 24126541Sobrien# Notes: 25126541Sobrien# 26147378Sups# IPI_PREEMPTION instructs the kernel to preempt threads running on other 27147378Sups# CPUS if needed. Relies on the PREEMPTION option 28125461Speter 29126541Sobrien# Optional: 30147378Supsoptions IPI_PREEMPTION 31126638Sobriendevice atpic # Optional legacy pic support 32126637Sobriendevice mptable # Optional MPSPEC mptable support 33126541Sobrien 34142732Sobrien# 35142732Sobrien# Watchdog routines. 36142732Sobrien# 37142732Sobrienoptions MP_WATCHDOG 38142732Sobrien 39209248Smav# Debugging options. 40209248Smav# 41209248Smavoptions COUNT_XINVLTLB_HITS # Counters for TLB events 42209248Smavoptions COUNT_IPIS # Per-CPU IPI interrupt counters 43145727Sdwhite 44209248Smav 45126541Sobrien 46126541Sobrien##################################################################### 47126541Sobrien# CPU OPTIONS 48126541Sobrien 49125461Speter# 50126541Sobrien# You must specify at least one CPU (the one you intend to run on); 51126541Sobrien# deleting the specification for CPUs you don't need to use may make 52126541Sobrien# parts of the system run faster. 53126541Sobrien# 54126541Sobriencpu HAMMER # aka K8, aka Opteron & Athlon64 55126541Sobrien 56126541Sobrien# 57126541Sobrien# Options for CPU features. 58126541Sobrien# 59126541Sobrien 60126541Sobrien# 61125461Speter# PERFMON causes the driver for Pentium/Pentium Pro performance counters 62125461Speter# to be compiled. See perfmon(4) for more information. 63125461Speter# 64126541Sobrien#XXX#options PERFMON 65125461Speter 66125461Speter 67125461Speter##################################################################### 68125461Speter# NETWORKING OPTIONS 69125461Speter 70125461Speter# 71125461Speter# DEVICE_POLLING adds support for mixed interrupt-polling handling 72125461Speter# of network device drivers, which has significant benefits in terms 73125461Speter# of robustness to overloads and responsivity, as well as permitting 74125461Speter# accurate scheduling of the CPU time between kernel network processing 75126541Sobrien# and other activities. The drawback is a moderate (up to 1/HZ seconds) 76125461Speter# potential increase in response times. 77125461Speter# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING 78125461Speter# to achieve smoother behaviour. 79151051Sglebius# Additionally, you can enable/disable polling at runtime with help of 80151051Sglebius# the ifconfig(8) utility, and select the CPU fraction reserved to 81151051Sglebius# userland with the sysctl variable kern.polling.user_frac 82151051Sglebius# (default 50, range 0..100). 83125461Speter# 84126541Sobrien# Not all device drivers support this mode of operation at the time of 85126541Sobrien# this writing. See polling(4) for more details. 86125461Speter 87125461Speteroptions DEVICE_POLLING 88125461Speter 89177586Sjkim# BPF_JITTER adds support for BPF just-in-time compiler. 90177586Sjkim 91191954Skuriyamaoptions BPF_JITTER 92177586Sjkim 93234183Sjhb# OpenFabrics Enterprise Distribution (Infiniband). 94234183Sjhboptions OFED 95234183Sjhboptions OFED_DEBUG_INIT 96234183Sjhb 97234183Sjhb# Sockets Direct Protocol 98234183Sjhboptions SDP 99234183Sjhboptions SDP_DEBUG 100234183Sjhb 101239771Sjhb# IP over Infiniband 102234183Sjhboptions IPOIB 103234183Sjhboptions IPOIB_DEBUG 104234183Sjhboptions IPOIB_CM 105234183Sjhb 106125461Speter 107125461Speter##################################################################### 108125461Speter# CLOCK OPTIONS 109125461Speter 110173160Speter# Provide read/write access to the memory in the clock chip. 111173160Speterdevice nvram # Access to rtc cmos via /dev/nvram 112173160Speter 113125461Speter 114125461Speter##################################################################### 115125461Speter# MISCELLANEOUS DEVICES AND OPTIONS 116125461Speter 117152306Srudevice speaker #Play IBM BASIC-style noises out your speaker 118152306Sruhint.speaker.0.at="isa" 119152306Sruhint.speaker.0.port="0x61" 120126541Sobriendevice gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT! 121125461Speter 122125461Speter 123125461Speter##################################################################### 124125461Speter# HARDWARE BUS CONFIGURATION 125125461Speter 126125461Speter# 127125461Speter# ISA bus 128125461Speter# 129125461Speterdevice isa 130125461Speter 131125461Speter# 132125461Speter# Options for `isa': 133125461Speter# 134125461Speter# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A 135125461Speter# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 136125461Speter# This option breaks suspend/resume on some portables. 137125461Speter# 138125461Speter# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A 139125461Speter# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 140125461Speter# Automatic EOI is documented not to work for for the slave with the 141125461Speter# original i8259A, but it works for some clones and some integrated 142125461Speter# versions. 143125461Speter# 144125461Speter# MAXMEM specifies the amount of RAM on the machine; if this is not 145125461Speter# specified, FreeBSD will first read the amount of memory from the CMOS 146125461Speter# RAM, so the amount of memory will initially be limited to 64MB or 16MB 147125461Speter# depending on the BIOS. If the BIOS reports 64MB, a memory probe will 148125461Speter# then attempt to detect the installed amount of RAM. If this probe 149125461Speter# fails to detect >64MB RAM you will have to use the MAXMEM option. 150125461Speter# The amount is in kilobytes, so for a machine with 128MB of RAM, it would 151125461Speter# be 131072 (128 * 1024). 152125461Speter# 153125461Speter# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to 154125461Speter# reset the CPU for reboot. This is needed on some systems with broken 155125461Speter# keyboard controllers. 156125461Speter 157126541Sobrienoptions AUTO_EOI_1 158126541Sobrien#options AUTO_EOI_2 159126541Sobrien 160125461Speteroptions MAXMEM=(128*1024) 161125461Speter#options BROKEN_KEYBOARD_RESET 162125461Speter 163125461Speter# 164125461Speter# PCI bus & PCI options: 165125461Speter# 166125461Speterdevice pci 167125461Speter 168125461Speter# 169125461Speter# AGP GART support 170125461Speterdevice agp 171125461Speter 172188247Swkoszek# 173188247Swkoszek# AGP debugging. 174188247Swkoszek# 175191954Skuriyamaoptions AGP_DEBUG 176188247Swkoszek 177125461Speter 178125461Speter##################################################################### 179125461Speter# HARDWARE DEVICE CONFIGURATION 180125461Speter 181197380Sdelphij# To include support for VGA VESA video modes 182197025Sdelphijoptions VESA 183197025Sdelphij 184197025Sdelphij# Turn on extra debugging checks and output for VESA support. 185197025Sdelphijoptions VESA_DEBUG 186197025Sdelphij 187197397Sdelphijdevice dpms # DPMS suspend & resume via VESA BIOS 188197397Sdelphij 189197397Sdelphij# x86 real mode BIOS emulator, required by atkbdc/dpms/vesa 190266331Sianoptions X86BIOS 191197397Sdelphij 192125461Speter# 193125461Speter# Optional devices: 194125461Speter# 195125461Speter 196163535Sdes# PS/2 mouse 197163535Sdesdevice psm 198163535Sdeshint.psm.0.at="atkbdc" 199163535Sdeshint.psm.0.irq="12" 200163535Sdes 201163535Sdes# Options for psm: 202163535Sdesoptions PSM_HOOKRESUME #hook the system resume event, useful 203163535Sdes #for some laptops 204163535Sdesoptions PSM_RESETAFTERSUSPEND #reset the device at the resume event 205163535Sdes 206163535Sdes# The keyboard controller; it controls the keyboard and the PS/2 mouse. 207163535Sdesdevice atkbdc 208163535Sdeshint.atkbdc.0.at="isa" 209163535Sdeshint.atkbdc.0.port="0x060" 210163535Sdes 211163535Sdes# The AT keyboard 212163535Sdesdevice atkbd 213163535Sdeshint.atkbd.0.at="atkbdc" 214163535Sdeshint.atkbd.0.irq="1" 215163535Sdes 216163535Sdes# Options for atkbd: 217163535Sdesoptions ATKBD_DFLT_KEYMAP # specify the built-in keymap 218163535Sdesmakeoptions ATKBD_DFLT_KEYMAP=jp.106 219163535Sdes 220163535Sdes# `flags' for atkbd: 221163535Sdes# 0x01 Force detection of keyboard, else we always assume a keyboard 222163535Sdes# 0x02 Don't reset keyboard, useful for some newer ThinkPads 223163535Sdes# 0x03 Force detection and avoid reset, might help with certain 224163535Sdes# dockingstations 225163535Sdes# 0x04 Old-style (XT) keyboard support, useful for older ThinkPads 226163535Sdes 227163535Sdes# Video card driver for VGA adapters. 228163535Sdesdevice vga 229163535Sdeshint.vga.0.at="isa" 230163535Sdes 231163535Sdes# Options for vga: 232163535Sdes# Try the following option if the mouse pointer is not drawn correctly 233163535Sdes# or font does not seem to be loaded properly. May cause flicker on 234163535Sdes# some systems. 235163535Sdesoptions VGA_ALT_SEQACCESS 236163535Sdes 237163535Sdes# If you can dispense with some vga driver features, you may want to 238163535Sdes# use the following options to save some memory. 239163535Sdes#options VGA_NO_FONT_LOADING # don't save/load font 240163535Sdes#options VGA_NO_MODE_CHANGE # don't change video modes 241163535Sdes 242163535Sdes# Older video cards may require this option for proper operation. 243163535Sdesoptions VGA_SLOW_IOACCESS # do byte-wide i/o's to TS and GDC regs 244163535Sdes 245163535Sdes# The following option probably won't work with the LCD displays. 246163535Sdesoptions VGA_WIDTH90 # support 90 column modes 247163535Sdes 248163535Sdes# Debugging. 249163535Sdesoptions VGA_DEBUG 250163535Sdes 251197379Sdelphij# Linear framebuffer driver for S3 VESA 1.2 cards. Works on top of VESA. 252197379Sdelphijdevice s3pci 253197379Sdelphij 254126541Sobrien# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create 255126541Sobrien# the /dev/3dfx0 device to work with glide implementations. This should get 256126541Sobrien# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as 257126541Sobrien# the tdfx DRI module from XFree86 and is completely unrelated. 258125461Speter# 259126541Sobrien# To enable Linuxulator support, one must also include COMPAT_LINUX in the 260156354Syar# config as well. The other option is to load both as modules. 261126541Sobrien 262126541Sobriendevice tdfx # Enable 3Dfx Voodoo support 263156354Syar#XXX#device tdfx_linux # Enable Linuxulator support 264126541Sobrien 265126541Sobrien# 266125461Speter# ACPI support using the Intel ACPI Component Architecture reference 267125461Speter# implementation. 268125461Speter# 269125461Speter# ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer 270125461Speter# kernel environment variables to select initial debugging levels for the 271125461Speter# Intel ACPICA code. (Note that the Intel code must also have USE_DEBUGGER 272125461Speter# defined when it is built). 273126541Sobrien 274125461Speterdevice acpi 275125461Speteroptions ACPI_DEBUG 276125461Speter 277171146Snjl# The cpufreq(4) driver provides support for non-ACPI CPU frequency control 278171146Snjldevice cpufreq 279171146Snjl 280145132Sanholt# Direct Rendering modules for 3D acceleration. 281145132Sanholtdevice drm # DRM core module required by DRM drivers 282153033Sanholtdevice i915drm # Intel i830 through i915 283145132Sanholtdevice mach64drm # ATI Rage Pro, Rage Mobility P/M, Rage XL 284145132Sanholtdevice mgadrm # AGP Matrox G200, G400, G450, G550 285145132Sanholtdevice r128drm # ATI Rage 128 286148211Sanholtdevice radeondrm # ATI Radeon 287152909Sanholtdevice savagedrm # S3 Savage3D, Savage4 288145132Sanholtdevice sisdrm # SiS 300/305, 540, 630 289145132Sanholtdevice tdfxdrm # 3dfx Voodoo 3/4/5 and Banshee 290203288Srnolanddevice viadrm # VIA 291145132Sanholtoptions DRM_DEBUG # Include debug printfs (slow) 292125461Speter 293125461Speter# 294125461Speter# Network interfaces: 295125461Speter# 296125461Speter 297255736Sdavidch# bxe: Broadcom NetXtreme II (BCM5771X/BCM578XX) PCIe 10Gb Ethernet 298255736Sdavidch# adapters. 299125984Sobrien# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503 300163494Simp# HP PC Lan+, various PC Card devices 301129293Speter# (requires miibus) 302159549Sjhb# ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter 303203691Sbrucec# Requires the ipw firmware module 304159549Sjhb# iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters 305203691Sbrucec# Requires the iwi firmware module 306203691Sbrucec# iwn: Intel Wireless WiFi Link 4965/1000/5000/6000 802.11 network adapters 307203691Sbrucec# Requires the iwn firmware module 308272313Sbz# ixl: Intel XL710 40Gbe PCIE Ethernet 309272313Sbz# ixlv: Intel XL710 40Gbe VF PCIE Ethernet 310234183Sjhb# mlx4ib: Mellanox ConnectX HCA InfiniBand 311234183Sjhb# mlxen: Mellanox ConnectX HCA Ethernet 312234183Sjhb# mthca: Mellanox HCA InfiniBand 313159967Sobrien# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) 314151907Sjhb# nve: nVidia nForce MCP on-board Ethernet Networking 315228085Sphilip# sfxge: Solarflare SFC9000 family 10Gb Ethernet adapters 316255323Sbryanv# vmx: VMware VMXNET3 Ethernet (BSD open source) 317173491Sbenjsc# wpi: Intel 3945ABG Wireless LAN controller 318203691Sbrucec# Requires the wpi firmware module 319125461Speter 320255736Sdavidchdevice bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE 321233872Sjhbdevice ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards 322148263Speteroptions ED_3C503 323148263Speteroptions ED_HPP 324148263Speteroptions ED_SIC 325233872Sjhbdevice ipw # Intel 2100 wireless NICs. 326233872Sjhbdevice iwi # Intel 2200BG/2225BG/2915ABG wireless NICs. 327233872Sjhbdevice iwn # Intel 4965/1000/5000/6000 wireless NICs. 328272313Sbzdevice ixl # Intel XL710 40Gbe PCIE Ethernet 329272313Sbzdevice ixlv # Intel XL710 40Gbe VF PCIE Ethernet 330234183Sjhbdevice mlx4ib # Mellanox ConnectX HCA InfiniBand 331234183Sjhbdevice mlxen # Mellanox ConnectX HCA Ethernet 332234183Sjhbdevice mthca # Mellanox HCA InfiniBand 333233872Sjhbdevice nfe # nVidia nForce MCP on-board Ethernet 334233872Sjhbdevice nve # nVidia nForce MCP on-board Ethernet Networking 335240098Sjhbdevice sfxge # Solarflare SFC9000 10Gb Ethernet 336255323Sbryanvdevice vmx # VMware VMXNET3 Ethernet 337233872Sjhbdevice wpi # Intel 3945ABG wireless NICs. 338125461Speter 339203691Sbrucec# IEEE 802.11 adapter firmware modules 340203691Sbrucec 341203691Sbrucec# Intel PRO/Wireless 2100 firmware: 342203691Sbrucec# ipwfw: BSS/IBSS/monitor mode firmware 343203691Sbrucec# ipwbssfw: BSS mode firmware 344203691Sbrucec# ipwibssfw: IBSS mode firmware 345203691Sbrucec# ipwmonitorfw: Monitor mode firmware 346203691Sbrucec# Intel PRO/Wireless 2200BG/2225BG/2915ABG firmware: 347203691Sbrucec# iwifw: BSS/IBSS/monitor mode firmware 348203691Sbrucec# iwibssfw: BSS mode firmware 349203691Sbrucec# iwiibssfw: IBSS mode firmware 350203691Sbrucec# iwimonitorfw: Monitor mode firmware 351203691Sbrucec# Intel Wireless WiFi Link 4965/1000/5000/6000 series firmware: 352203691Sbrucec# iwnfw: Single module to support the 4965/1000/5000/5150/6000 353203691Sbrucec# iwn4965fw: Specific module for the 4965 only 354203691Sbrucec# iwn1000fw: Specific module for the 1000 only 355203691Sbrucec# iwn5000fw: Specific module for the 5000 only 356203691Sbrucec# iwn5150fw: Specific module for the 5150 only 357203691Sbrucec# iwn6000fw: Specific module for the 6000 only 358210113Sbschmidt# iwn6050fw: Specific module for the 6050 only 359203691Sbrucec# wpifw: Intel 3945ABG Wireless LAN Controller firmware 360203691Sbrucec 361203691Sbrucecdevice iwifw 362203691Sbrucecdevice iwibssfw 363203691Sbrucecdevice iwiibssfw 364203691Sbrucecdevice iwimonitorfw 365203691Sbrucecdevice ipwfw 366203691Sbrucecdevice ipwbssfw 367203691Sbrucecdevice ipwibssfw 368203691Sbrucecdevice ipwmonitorfw 369203691Sbrucecdevice iwnfw 370203691Sbrucecdevice iwn4965fw 371203691Sbrucecdevice iwn1000fw 372203691Sbrucecdevice iwn5000fw 373203691Sbrucecdevice iwn5150fw 374203691Sbrucecdevice iwn6000fw 375210113Sbschmidtdevice iwn6050fw 376203691Sbrucecdevice wpifw 377203691Sbrucec 378250079Scarl# Intel Non-Transparent Bridge (NTB) hardware 379250079Scarldevice ntb_hw # Hardware Abstraction Layer for the NTB 380250079Scarldevice if_ntb # Simulated ethernet device using the NTB 381250079Scarl 382125461Speter# 383126541Sobrien#XXX this stores pointers in a 32bit field that is defined by the hardware 384126541Sobrien#device pst 385125461Speter 386126541Sobrien# 387144423Sscottl# Areca 11xx and 12xx series of SATA II RAID controllers. 388144423Sscottl# CAM is required. 389144423Sscottl# 390144423Sscottldevice arcmsr # Areca SATA II RAID 391144423Sscottl 392144423Sscottl# 393129293Speter# 3ware 9000 series PATA/SATA RAID controller driver and options. 394129293Speter# The driver is implemented as a SIM, and so, needs the CAM infrastructure. 395129293Speter# 396142733Sobrienoptions TWA_DEBUG # 0-10; 10 prints the most messages. 397142733Sobrienoptions TWA_FLASH_FIRMWARE # firmware image bundled when defined. 398129293Speterdevice twa # 3ware 9000 series PATA/SATA RAID 399129293Speter 400129293Speter# 401125461Speter# SCSI host adapters: 402126541Sobrien# 403125984Sobrien# ncv: NCR 53C500 based SCSI host adapters. 404125984Sobrien# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters. 405125984Sobrien# stg: TMC 18C30, 18C50 based SCSI host adapters. 406125461Speter 407126638Sobriendevice ncv 408126638Sobriendevice nsp 409126638Sobriendevice stg 410125984Sobrien 411125461Speter# 412125461Speter# Adaptec FSA RAID controllers, including integrated DELL controllers, 413125461Speter# the Dell PERC 2/QC and the HP NetRAID-4M 414125461Speterdevice aac 415125461Speterdevice aacp # SCSI Passthrough interface (optional, CAM required) 416125461Speter 417125461Speter# 418250963Sachim# Adaptec by PMC RAID controllers, Series 6/7/8 and upcoming families 419250963Sachimdevice aacraid # Container interface, CAM required 420250963Sachim 421250963Sachim# 422228940Sdelphij# Highpoint RocketRAID 27xx. 423228940Sdelphijdevice hpt27xx 424228940Sdelphij 425228940Sdelphij# 426174604Sscottl# Highpoint RocketRAID 182x. 427149873Sscottldevice hptmv 428147687Speter 429147687Speter# 430252867Sdelphij# Highpoint DC7280 and R750. 431252867Sdelphijdevice hptnr 432252867Sdelphij 433252867Sdelphij# 434174604Sscottl# Highpoint RocketRAID. Supports RR172x, RR222x, RR2240, RR232x, RR2340, 435174604Sscottl# RR2210, RR174x, RR2522, RR231x, RR230x. 436174604Sscottldevice hptrr 437174604Sscottl 438174604Sscottl# 439169421Sscottl# Highpoint RocketRaid 3xxx series SATA RAID 440169421Sscottldevice hptiop 441169421Sscottl 442169421Sscottl# 443125461Speter# IBM (now Adaptec) ServeRAID controllers 444125461Speterdevice ips 445125461Speter 446125461Speter# 447330680Srpokala# Intel integrated Memory Controller (iMC) SMBus controller 448330680Srpokala# Sandybridge-Xeon, Ivybridge-Xeon, Haswell-Xeon, Broadwell-Xeon 449330680Srpokaladevice imcsmb 450330680Srpokala 451330680Srpokala# 452230843Sjimharris# Intel C600 (Patsburg) integrated SAS controller 453230843Sjimharrisdevice isci 454266331Sianoptions ISCI_LOGGING # enable debugging in isci HAL 455230843Sjimharris 456230843Sjimharris# 457240618Sjimharris# NVM Express (NVMe) support 458240618Sjimharrisdevice nvme # base NVMe driver 459240618Sjimharrisdevice nvd # expose NVMe namespaces as disks, depends on nvme 460240618Sjimharris 461240618Sjimharris# 462285809Sscottl# PMC-Sierra SAS/SATA controller 463285809Sscottldevice pmspcv 464285809Sscottl 465285809Sscottl# 466125461Speter# SafeNet crypto driver: can be moved to the MI NOTES as soon as 467125461Speter# it's tested on a big-endian machine 468125461Speter# 469125461Speterdevice safe # SafeNet 1141 470142733Sobrienoptions SAFE_DEBUG # enable debugging support: hw.safe.debug 471142733Sobrienoptions SAFE_RNDTEST # enable rndtest support 472125461Speter 473245362Sbryanv# 474245362Sbryanv# VirtIO support 475247870Sbryanv# 476247870Sbryanv# The virtio entry provides a generic bus for use by the device drivers. 477247870Sbryanv# It must be combined with an interface that communicates with the host. 478247870Sbryanv# Multiple such interfaces defined by the VirtIO specification. FreeBSD 479247870Sbryanv# only has support for PCI. Therefore, virtio_pci must be statically 480247870Sbryanv# compiled in or loaded as a module for the device drivers to function. 481247870Sbryanv# 482245362Sbryanvdevice virtio # Generic VirtIO bus (required) 483245362Sbryanvdevice virtio_pci # VirtIO PCI Interface 484245362Sbryanvdevice vtnet # VirtIO Ethernet device 485245362Sbryanvdevice virtio_blk # VirtIO Block device 486245362Sbryanvdevice virtio_scsi # VirtIO SCSI device 487245362Sbryanvdevice virtio_balloon # VirtIO Memory Balloon device 488268933Sjhbdevice virtio_random # VirtIO Entropy device 489275273Sbryanvdevice virtio_console # VirtIO Console device 490245362Sbryanv 491283280Swhu# Microsoft Hyper-V enchancement support 492283280Swhuoptions HYPERV # Hyper-V kernel infrastructure 493259541Sglebiusdevice hyperv # HyperV drivers 494259541Sglebius 495259541Sglebius# Xen HVM Guest Optimizations 496259541Sglebiusoptions XENHVM # Xen HVM kernel infrastructure 497259541Sglebiusdevice xenpci # Xen HVM Hypervisor services driver 498259541Sglebius 499125461Speter##################################################################### 500125461Speter 501125461Speter# 502125461Speter# Miscellaneous hardware: 503125461Speter# 504162562Sjhb# ipmi: Intelligent Platform Management Interface 505188254Swkoszek# pbio: Parallel (8255 PPI) basic I/O (mode 0) port (e.g. Advantech PCL-724) 506148264Speter# smbios: DMI/SMBIOS entry point 507148264Speter# vpd: Vital Product Data kernel interface 508174962Srpaulo# asmc: Apple System Management Controller 509188254Swkoszek# si: Specialix International SI/XIO or SX intelligent serial card 510212861Snork# tpm: Trusted Platform Module 511125461Speter 512125461Speter# Notes on the Specialix SI/XIO driver: 513125461Speter# The host card is memory, not IO mapped. 514125461Speter# The Rev 1 host cards use a 64K chunk, on a 32K boundary. 515125461Speter# The Rev 2 host cards use a 32K chunk, on a 32K boundary. 516125461Speter# The cards can use an IRQ of 11, 12 or 15. 517125461Speter 518162562Sjhbdevice ipmi 519147687Speterdevice pbio 520147687Speterhint.pbio.0.at="isa" 521147687Speterhint.pbio.0.port="0x360" 522148217Sjkimdevice smbios 523148264Speterdevice vpd 524174962Srpaulodevice asmc 525188254Swkoszek#device si 526212861Snorkdevice tpm 527254624Sobriendevice padlock_rng # VIA Padlock RNG 528254624Sobriendevice rdrand_rng # Intel Bull Mountain RNG 529256053Sjmgdevice aesni # AES-NI OpenCrypto module 530188254Swkoszek 531125461Speter# 532125461Speter# Laptop/Notebook options: 533125461Speter# 534125461Speter 535126541Sobrien 536126541Sobrien# 537126541Sobrien# I2C Bus 538126541Sobrien# 539126541Sobrien 540147687Speter# 541147687Speter# Hardware watchdog timers: 542147687Speter# 543147687Speter# ichwd: Intel ICH watchdog timer 544199969Savg# amdsbwd: AMD SB7xx watchdog timer 545228724Sdelphij# viawd: VIA south bridge watchdog timer 546232614Sbz# wbwd: Winbond watchdog timer 547147687Speter# 548147687Speterdevice ichwd 549199969Savgdevice amdsbwd 550228431Sfabientdevice viawd 551232614Sbzdevice wbwd 552147687Speter 553171854Sdes# 554171854Sdes# Temperature sensors: 555171854Sdes# 556171854Sdes# coretemp: on-die sensor on Intel Core and newer CPUs 557189872Sdchagin# amdtemp: on-die sensor on AMD K8/K10/K11 CPUs 558171854Sdes# 559171854Sdesdevice coretemp 560189872Sdchagindevice amdtemp 561171854Sdes 562126541Sobrien# 563181430Sstas# CPU control pseudo-device. Provides access to MSRs, CPUID info and 564181430Sstas# microcode update feature. 565181430Sstas# 566181430Sstasdevice cpuctl 567181430Sstas 568181430Sstas# 569129293Speter# System Management Bus (SMB) 570129293Speter# 571129293Speteroptions ENABLE_ALART # Control alarm on Intel intpm driver 572129293Speter 573129293Speter# 574225194Sjhb# Number of initial kernel page table pages used for early bootstrap. 575225194Sjhb# This number should include enough pages to map the kernel and any 576225194Sjhb# modules or other data loaded with the kernel by the loader. Each 577225194Sjhb# page table page maps 2MB. 578225194Sjhb# 579225194Sjhboptions NKPT=31 580225194Sjhb 581125461Speter 582125461Speter##################################################################### 583125461Speter# ABI Emulation 584125461Speter 585126541Sobrien#XXX keep these here for now and reactivate when support for emulating 586126541Sobrien#XXX these 32 bit binaries is added. 587126541Sobrien 588133844Sobrien# Enable 32-bit runtime support for FreeBSD/i386 binaries. 589205014Snwhitehornoptions COMPAT_FREEBSD32 590133844Sobrien 591126541Sobrien# Enable iBCS2 runtime support for SCO and ISC binaries 592126541Sobrien#XXX#options IBCS2 593126541Sobrien 594126541Sobrien# Emulate spx device for client side of SVR3 local X interface 595126541Sobrien#XXX#options SPX_HACK 596126541Sobrien 597125461Speter# Enable Linux ABI emulation 598126541Sobrien#XXX#options COMPAT_LINUX 599125461Speter 600205014Snwhitehorn# Enable 32-bit Linux ABI emulation (requires COMPAT_43 and COMPAT_FREEBSD32) 601133819Stjroptions COMPAT_LINUX32 602133819Stjr 603133853Stjr# Enable the linux-like proc filesystem support (requires COMPAT_LINUX32 604125461Speter# and PSEUDOFS) 605133853Stjroptions LINPROCFS 606125461Speter 607158381Sambrisko#Enable the linux-like sys filesystem support (requires COMPAT_LINUX32 608158381Sambrisko# and PSEUDOFS) 609191954Skuriyamaoptions LINSYSFS 610158381Sambrisko 611126541Sobrien# 612126541Sobrien# SysVR4 ABI emulation 613126541Sobrien# 614126541Sobrien# The svr4 ABI emulator can be statically compiled into the kernel or loaded as 615126541Sobrien# a KLD module. 616126541Sobrien# The STREAMS network emulation code can also be compiled statically or as a 617126541Sobrien# module. If loaded as a module, it must be loaded before the svr4 module 618126541Sobrien# (the /usr/sbin/svr4 script does this for you). If compiling statically, 619126541Sobrien# the `streams' device must be configured into any kernel which also 620126541Sobrien# specifies COMPAT_SVR4. It is possible to have a statically-configured 621126541Sobrien# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4 622126541Sobrien# script understands that it doesn't need to load the `streams' module under 623126541Sobrien# those circumstances. 624126541Sobrien# Caveat: At this time, `options KTRACE' is required for the svr4 emulator 625126541Sobrien# (whether static or dynamic). 626126541Sobrien# 627126541Sobrien#XXX#options COMPAT_SVR4 # build emulator statically 628126930Speter#XXX#options DEBUG_SVR4 # enable verbose debugging 629126541Sobrien#XXX#device streams # STREAMS network driver (required for svr4). 630126541Sobrien 631125461Speter 632125461Speter##################################################################### 633125461Speter# VM OPTIONS 634125461Speter 635125461Speter# KSTACK_PAGES is the number of memory pages to assign to the kernel 636125461Speter# stack of each thread. 637125461Speter 638219525Savgoptions KSTACK_PAGES=5 639125461Speter 640233433Salc# Enable detailed accounting by the PV entry allocator. 641233433Salc 642233433Salcoptions PV_STATS 643233433Salc 644125461Speter##################################################################### 645125461Speter 646125461Speter# More undocumented options for linting. 647125461Speter# Note that documenting these are not considered an affront. 648125461Speter 649125461Speteroptions FB_INSTALL_CDEV # install a CDEV entry in /dev 650125461Speter 651125461Speteroptions KBDIO_DEBUG=2 652125461Speteroptions KBD_MAXRETRY=4 653125461Speteroptions KBD_MAXWAIT=6 654125461Speteroptions KBD_RESETDELAY=201 655125461Speter 656125461Speteroptions PSM_DEBUG=1 657125461Speter 658125461Speteroptions TIMER_FREQ=((14318182+6)/12) 659125461Speter 660125461Speteroptions VM_KMEM_SIZE 661125461Speteroptions VM_KMEM_SIZE_MAX 662125461Speteroptions VM_KMEM_SIZE_SCALE 663132956Smarkm 664159549Sjhb# Enable NDIS binary driver support 665189497Sthompsaoptions NDISAPI 666189497Sthompsadevice ndis 667197518Sbz 668197518Sbz# Linux-specific pseudo devices support 669197518Sbzdevice lindev 670266273Sian 671266273Sian# Module to enable execution of application via emulators like QEMU 672266273Sianoptions IMAGACT_BINMISC 673