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/11/sys/amd64/conf/NOTES 337263 2018-08-03 15:43:37Z markj $ 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 20284227Sbr# DTrace core 21284227Sbr# NOTE: introduces CDDL-licensed components into the kernel 22284227Sbr#device dtrace 23284227Sbr 24284227Sbr# DTrace modules 25284227Sbr#device dtrace_profile 26284227Sbr#device dtrace_sdt 27284227Sbr#device dtrace_fbt 28284227Sbr#device dtrace_systrace 29284227Sbr#device dtrace_prototype 30284227Sbr#device dtnfscl 31284227Sbr#device dtmalloc 32284227Sbr 33284227Sbr# Alternatively include all the DTrace modules 34284227Sbr#device dtraceall 35284227Sbr 36125461Speter 37126541Sobrien##################################################################### 38126541Sobrien# SMP OPTIONS: 39126541Sobrien# 40126541Sobrien# Notes: 41126541Sobrien# 42147378Sups# IPI_PREEMPTION instructs the kernel to preempt threads running on other 43147378Sups# CPUS if needed. Relies on the PREEMPTION option 44125461Speter 45126541Sobrien# Optional: 46147378Supsoptions IPI_PREEMPTION 47126638Sobriendevice atpic # Optional legacy pic support 48126637Sobriendevice mptable # Optional MPSPEC mptable support 49126541Sobrien 50142732Sobrien# 51142732Sobrien# Watchdog routines. 52142732Sobrien# 53142732Sobrienoptions MP_WATCHDOG 54142732Sobrien 55209248Smav# Debugging options. 56209248Smav# 57209248Smavoptions COUNT_XINVLTLB_HITS # Counters for TLB events 58209248Smavoptions COUNT_IPIS # Per-CPU IPI interrupt counters 59145727Sdwhite 60209248Smav 61126541Sobrien 62126541Sobrien##################################################################### 63126541Sobrien# CPU OPTIONS 64126541Sobrien 65125461Speter# 66126541Sobrien# You must specify at least one CPU (the one you intend to run on); 67126541Sobrien# deleting the specification for CPUs you don't need to use may make 68126541Sobrien# parts of the system run faster. 69126541Sobrien# 70126541Sobriencpu HAMMER # aka K8, aka Opteron & Athlon64 71126541Sobrien 72126541Sobrien# 73126541Sobrien# Options for CPU features. 74126541Sobrien# 75126541Sobrien 76126541Sobrien# 77125461Speter# PERFMON causes the driver for Pentium/Pentium Pro performance counters 78125461Speter# to be compiled. See perfmon(4) for more information. 79125461Speter# 80126541Sobrien#XXX#options PERFMON 81125461Speter 82125461Speter 83125461Speter##################################################################### 84125461Speter# NETWORKING OPTIONS 85125461Speter 86125461Speter# 87125461Speter# DEVICE_POLLING adds support for mixed interrupt-polling handling 88125461Speter# of network device drivers, which has significant benefits in terms 89125461Speter# of robustness to overloads and responsivity, as well as permitting 90125461Speter# accurate scheduling of the CPU time between kernel network processing 91126541Sobrien# and other activities. The drawback is a moderate (up to 1/HZ seconds) 92125461Speter# potential increase in response times. 93125461Speter# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING 94125461Speter# to achieve smoother behaviour. 95151051Sglebius# Additionally, you can enable/disable polling at runtime with help of 96151051Sglebius# the ifconfig(8) utility, and select the CPU fraction reserved to 97151051Sglebius# userland with the sysctl variable kern.polling.user_frac 98151051Sglebius# (default 50, range 0..100). 99125461Speter# 100126541Sobrien# Not all device drivers support this mode of operation at the time of 101126541Sobrien# this writing. See polling(4) for more details. 102125461Speter 103125461Speteroptions DEVICE_POLLING 104125461Speter 105177586Sjkim# BPF_JITTER adds support for BPF just-in-time compiler. 106177586Sjkim 107191954Skuriyamaoptions BPF_JITTER 108177586Sjkim 109234183Sjhb# OpenFabrics Enterprise Distribution (Infiniband). 110234183Sjhboptions OFED 111234183Sjhboptions OFED_DEBUG_INIT 112234183Sjhb 113234183Sjhb# Sockets Direct Protocol 114234183Sjhboptions SDP 115234183Sjhboptions SDP_DEBUG 116234183Sjhb 117239771Sjhb# IP over Infiniband 118234183Sjhboptions IPOIB 119234183Sjhboptions IPOIB_DEBUG 120234183Sjhboptions IPOIB_CM 121234183Sjhb 122125461Speter 123125461Speter##################################################################### 124125461Speter# CLOCK OPTIONS 125125461Speter 126173160Speter# Provide read/write access to the memory in the clock chip. 127173160Speterdevice nvram # Access to rtc cmos via /dev/nvram 128173160Speter 129125461Speter 130125461Speter##################################################################### 131125461Speter# MISCELLANEOUS DEVICES AND OPTIONS 132125461Speter 133152306Srudevice speaker #Play IBM BASIC-style noises out your speaker 134152306Sruhint.speaker.0.at="isa" 135152306Sruhint.speaker.0.port="0x61" 136126541Sobriendevice gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT! 137125461Speter 138125461Speter 139125461Speter##################################################################### 140125461Speter# HARDWARE BUS CONFIGURATION 141125461Speter 142125461Speter# 143125461Speter# ISA bus 144125461Speter# 145125461Speterdevice isa 146125461Speter 147125461Speter# 148125461Speter# Options for `isa': 149125461Speter# 150125461Speter# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A 151125461Speter# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 152125461Speter# This option breaks suspend/resume on some portables. 153125461Speter# 154125461Speter# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A 155125461Speter# interrupt controller. This saves about 0.7-1.25 usec for each interrupt. 156125461Speter# Automatic EOI is documented not to work for for the slave with the 157125461Speter# original i8259A, but it works for some clones and some integrated 158125461Speter# versions. 159125461Speter# 160125461Speter# MAXMEM specifies the amount of RAM on the machine; if this is not 161125461Speter# specified, FreeBSD will first read the amount of memory from the CMOS 162125461Speter# RAM, so the amount of memory will initially be limited to 64MB or 16MB 163125461Speter# depending on the BIOS. If the BIOS reports 64MB, a memory probe will 164125461Speter# then attempt to detect the installed amount of RAM. If this probe 165125461Speter# fails to detect >64MB RAM you will have to use the MAXMEM option. 166125461Speter# The amount is in kilobytes, so for a machine with 128MB of RAM, it would 167125461Speter# be 131072 (128 * 1024). 168125461Speter# 169125461Speter# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to 170125461Speter# reset the CPU for reboot. This is needed on some systems with broken 171125461Speter# keyboard controllers. 172125461Speter 173126541Sobrienoptions AUTO_EOI_1 174126541Sobrien#options AUTO_EOI_2 175126541Sobrien 176125461Speteroptions MAXMEM=(128*1024) 177125461Speter#options BROKEN_KEYBOARD_RESET 178125461Speter 179125461Speter# 180125461Speter# AGP GART support 181125461Speterdevice agp 182125461Speter 183188247Swkoszek# 184188247Swkoszek# AGP debugging. 185188247Swkoszek# 186191954Skuriyamaoptions AGP_DEBUG 187188247Swkoszek 188125461Speter 189125461Speter##################################################################### 190125461Speter# HARDWARE DEVICE CONFIGURATION 191125461Speter 192197380Sdelphij# To include support for VGA VESA video modes 193197025Sdelphijoptions VESA 194197025Sdelphij 195197025Sdelphij# Turn on extra debugging checks and output for VESA support. 196197025Sdelphijoptions VESA_DEBUG 197197025Sdelphij 198197397Sdelphijdevice dpms # DPMS suspend & resume via VESA BIOS 199197397Sdelphij 200197397Sdelphij# x86 real mode BIOS emulator, required by atkbdc/dpms/vesa 201263301Simpoptions X86BIOS 202197397Sdelphij 203125461Speter# 204125461Speter# Optional devices: 205125461Speter# 206125461Speter 207163535Sdes# PS/2 mouse 208163535Sdesdevice psm 209163535Sdeshint.psm.0.at="atkbdc" 210163535Sdeshint.psm.0.irq="12" 211163535Sdes 212163535Sdes# Options for psm: 213163535Sdesoptions PSM_HOOKRESUME #hook the system resume event, useful 214163535Sdes #for some laptops 215163535Sdesoptions PSM_RESETAFTERSUSPEND #reset the device at the resume event 216163535Sdes 217163535Sdes# The keyboard controller; it controls the keyboard and the PS/2 mouse. 218163535Sdesdevice atkbdc 219163535Sdeshint.atkbdc.0.at="isa" 220163535Sdeshint.atkbdc.0.port="0x060" 221163535Sdes 222163535Sdes# The AT keyboard 223163535Sdesdevice atkbd 224163535Sdeshint.atkbd.0.at="atkbdc" 225163535Sdeshint.atkbd.0.irq="1" 226163535Sdes 227163535Sdes# Options for atkbd: 228163535Sdesoptions ATKBD_DFLT_KEYMAP # specify the built-in keymap 229276208Sphkmakeoptions ATKBD_DFLT_KEYMAP=fr.dvorak 230163535Sdes 231163535Sdes# `flags' for atkbd: 232163535Sdes# 0x01 Force detection of keyboard, else we always assume a keyboard 233163535Sdes# 0x02 Don't reset keyboard, useful for some newer ThinkPads 234163535Sdes# 0x03 Force detection and avoid reset, might help with certain 235163535Sdes# dockingstations 236163535Sdes# 0x04 Old-style (XT) keyboard support, useful for older ThinkPads 237163535Sdes 238163535Sdes# Video card driver for VGA adapters. 239163535Sdesdevice vga 240163535Sdeshint.vga.0.at="isa" 241163535Sdes 242163535Sdes# Options for vga: 243163535Sdes# Try the following option if the mouse pointer is not drawn correctly 244163535Sdes# or font does not seem to be loaded properly. May cause flicker on 245163535Sdes# some systems. 246163535Sdesoptions VGA_ALT_SEQACCESS 247163535Sdes 248163535Sdes# If you can dispense with some vga driver features, you may want to 249163535Sdes# use the following options to save some memory. 250163535Sdes#options VGA_NO_FONT_LOADING # don't save/load font 251163535Sdes#options VGA_NO_MODE_CHANGE # don't change video modes 252163535Sdes 253163535Sdes# Older video cards may require this option for proper operation. 254163535Sdesoptions VGA_SLOW_IOACCESS # do byte-wide i/o's to TS and GDC regs 255163535Sdes 256163535Sdes# The following option probably won't work with the LCD displays. 257163535Sdesoptions VGA_WIDTH90 # support 90 column modes 258163535Sdes 259163535Sdes# Debugging. 260163535Sdesoptions VGA_DEBUG 261163535Sdes 262268069Semaste# vt(4) drivers. 263268069Semastedevice vt_vga # VGA 264268069Semastedevice vt_efifb # EFI framebuffer 265268069Semaste 266197379Sdelphij# Linear framebuffer driver for S3 VESA 1.2 cards. Works on top of VESA. 267197379Sdelphijdevice s3pci 268197379Sdelphij 269126541Sobrien# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create 270126541Sobrien# the /dev/3dfx0 device to work with glide implementations. This should get 271126541Sobrien# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as 272126541Sobrien# the tdfx DRI module from XFree86 and is completely unrelated. 273125461Speter# 274126541Sobrien# To enable Linuxulator support, one must also include COMPAT_LINUX in the 275156354Syar# config as well. The other option is to load both as modules. 276126541Sobrien 277126541Sobriendevice tdfx # Enable 3Dfx Voodoo support 278156354Syar#XXX#device tdfx_linux # Enable Linuxulator support 279126541Sobrien 280126541Sobrien# 281125461Speter# ACPI support using the Intel ACPI Component Architecture reference 282125461Speter# implementation. 283125461Speter# 284125461Speter# ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer 285125461Speter# kernel environment variables to select initial debugging levels for the 286125461Speter# Intel ACPICA code. (Note that the Intel code must also have USE_DEBUGGER 287125461Speter# defined when it is built). 288126541Sobrien 289125461Speterdevice acpi 290125461Speteroptions ACPI_DEBUG 291125461Speter 292171146Snjl# The cpufreq(4) driver provides support for non-ACPI CPU frequency control 293171146Snjldevice cpufreq 294171146Snjl 295145132Sanholt# Direct Rendering modules for 3D acceleration. 296145132Sanholtdevice drm # DRM core module required by DRM drivers 297153033Sanholtdevice i915drm # Intel i830 through i915 298145132Sanholtdevice mach64drm # ATI Rage Pro, Rage Mobility P/M, Rage XL 299145132Sanholtdevice mgadrm # AGP Matrox G200, G400, G450, G550 300145132Sanholtdevice r128drm # ATI Rage 128 301148211Sanholtdevice radeondrm # ATI Radeon 302152909Sanholtdevice savagedrm # S3 Savage3D, Savage4 303145132Sanholtdevice sisdrm # SiS 300/305, 540, 630 304145132Sanholtdevice tdfxdrm # 3dfx Voodoo 3/4/5 and Banshee 305203288Srnolanddevice viadrm # VIA 306145132Sanholtoptions DRM_DEBUG # Include debug printfs (slow) 307125461Speter 308125461Speter# 309125461Speter# Network interfaces: 310125461Speter# 311125461Speter 312255736Sdavidch# bxe: Broadcom NetXtreme II (BCM5771X/BCM578XX) PCIe 10Gb Ethernet 313255736Sdavidch# adapters. 314125984Sobrien# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503 315163494Simp# HP PC Lan+, various PC Card devices 316129293Speter# (requires miibus) 317159549Sjhb# ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter 318203691Sbrucec# Requires the ipw firmware module 319159549Sjhb# iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters 320203691Sbrucec# Requires the iwi firmware module 321269992Sgavin# iwn: Intel Wireless WiFi Link 1000/105/135/2000/4965/5000/6000/6050 abgn 322269992Sgavin# 802.11 network adapters 323203691Sbrucec# Requires the iwn firmware module 324272022Sbz# ixl: Intel XL710 40Gbe PCIE Ethernet 325272022Sbz# ixlv: Intel XL710 40Gbe VF PCIE Ethernet 326331769Shselasky# mthca: Mellanox HCA InfiniBand 327234183Sjhb# mlx4ib: Mellanox ConnectX HCA InfiniBand 328329159Shselasky# mlx4en: Mellanox ConnectX HCA Ethernet 329159967Sobrien# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) 330228085Sphilip# sfxge: Solarflare SFC9000 family 10Gb Ethernet adapters 331255323Sbryanv# vmx: VMware VMXNET3 Ethernet (BSD open source) 332173491Sbenjsc# wpi: Intel 3945ABG Wireless LAN controller 333203691Sbrucec# Requires the wpi firmware module 334125461Speter 335255736Sdavidchdevice bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE 336233872Sjhbdevice ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards 337148263Speteroptions ED_3C503 338148263Speteroptions ED_HPP 339148263Speteroptions ED_SIC 340233872Sjhbdevice ipw # Intel 2100 wireless NICs. 341233872Sjhbdevice iwi # Intel 2200BG/2225BG/2915ABG wireless NICs. 342233872Sjhbdevice iwn # Intel 4965/1000/5000/6000 wireless NICs. 343272022Sbzdevice ixl # Intel XL710 40Gbe PCIE Ethernet 344318357Serjoptions IXL_IW # Enable iWARP Client Interface in ixl(4) 345272022Sbzdevice ixlv # Intel XL710 40Gbe VF PCIE Ethernet 346331769Shselaskydevice mthca # Mellanox HCA InfiniBand 347329159Shselaskydevice mlx4 # Shared code module between IB and Ethernet 348234183Sjhbdevice mlx4ib # Mellanox ConnectX HCA InfiniBand 349329159Shselaskydevice mlx4en # Mellanox ConnectX HCA Ethernet 350233872Sjhbdevice nfe # nVidia nForce MCP on-board Ethernet 351240098Sjhbdevice sfxge # Solarflare SFC9000 10Gb Ethernet 352255323Sbryanvdevice vmx # VMware VMXNET3 Ethernet 353233872Sjhbdevice wpi # Intel 3945ABG wireless NICs. 354125461Speter 355203691Sbrucec# IEEE 802.11 adapter firmware modules 356203691Sbrucec 357203691Sbrucec# Intel PRO/Wireless 2100 firmware: 358203691Sbrucec# ipwfw: BSS/IBSS/monitor mode firmware 359203691Sbrucec# ipwbssfw: BSS mode firmware 360203691Sbrucec# ipwibssfw: IBSS mode firmware 361203691Sbrucec# ipwmonitorfw: Monitor mode firmware 362203691Sbrucec# Intel PRO/Wireless 2200BG/2225BG/2915ABG firmware: 363203691Sbrucec# iwifw: BSS/IBSS/monitor mode firmware 364203691Sbrucec# iwibssfw: BSS mode firmware 365203691Sbrucec# iwiibssfw: IBSS mode firmware 366203691Sbrucec# iwimonitorfw: Monitor mode firmware 367203691Sbrucec# Intel Wireless WiFi Link 4965/1000/5000/6000 series firmware: 368269992Sgavin# iwnfw: Single module to support all devices 369269992Sgavin# iwn1000fw: Specific module for the 1000 only 370269992Sgavin# iwn105fw: Specific module for the 105 only 371269992Sgavin# iwn135fw: Specific module for the 135 only 372269992Sgavin# iwn2000fw: Specific module for the 2000 only 373269992Sgavin# iwn2030fw: Specific module for the 2030 only 374203691Sbrucec# iwn4965fw: Specific module for the 4965 only 375203691Sbrucec# iwn5000fw: Specific module for the 5000 only 376203691Sbrucec# iwn5150fw: Specific module for the 5150 only 377203691Sbrucec# iwn6000fw: Specific module for the 6000 only 378269992Sgavin# iwn6000g2afw: Specific module for the 6000g2a only 379269992Sgavin# iwn6000g2bfw: Specific module for the 6000g2b only 380210113Sbschmidt# iwn6050fw: Specific module for the 6050 only 381203691Sbrucec# wpifw: Intel 3945ABG Wireless LAN Controller firmware 382203691Sbrucec 383203691Sbrucecdevice iwifw 384203691Sbrucecdevice iwibssfw 385203691Sbrucecdevice iwiibssfw 386203691Sbrucecdevice iwimonitorfw 387203691Sbrucecdevice ipwfw 388203691Sbrucecdevice ipwbssfw 389203691Sbrucecdevice ipwibssfw 390203691Sbrucecdevice ipwmonitorfw 391203691Sbrucecdevice iwnfw 392269992Sgavindevice iwn1000fw 393269992Sgavindevice iwn105fw 394269992Sgavindevice iwn135fw 395269992Sgavindevice iwn2000fw 396269992Sgavindevice iwn2030fw 397203691Sbrucecdevice iwn4965fw 398203691Sbrucecdevice iwn5000fw 399203691Sbrucecdevice iwn5150fw 400203691Sbrucecdevice iwn6000fw 401269992Sgavindevice iwn6000g2afw 402269992Sgavindevice iwn6000g2bfw 403210113Sbschmidtdevice iwn6050fw 404203691Sbrucecdevice wpifw 405203691Sbrucec 406323453Smav# 407323453Smav# Non-Transparent Bridge (NTB) drivers 408323453Smav# 409323453Smavdevice if_ntb # Virtual NTB network interface 410323453Smavdevice ntb_transport # NTB packet transport driver 411323453Smavdevice ntb # NTB hardware interface 412323453Smavdevice ntb_hw_intel # Intel NTB hardware driver 413323453Smavdevice ntb_hw_plx # PLX NTB hardware driver 414250079Scarl 415125461Speter# 416126541Sobrien#XXX this stores pointers in a 32bit field that is defined by the hardware 417126541Sobrien#device pst 418125461Speter 419126541Sobrien# 420144423Sscottl# Areca 11xx and 12xx series of SATA II RAID controllers. 421144423Sscottl# CAM is required. 422144423Sscottl# 423144423Sscottldevice arcmsr # Areca SATA II RAID 424144423Sscottl 425144423Sscottl# 426333417Ssbruno# Microsemi smartpqi controllers. 427333417Ssbruno# These controllers have a SCSI-like interface, and require the 428333417Ssbruno# CAM infrastructure. 429333417Ssbruno# 430333417Ssbrunodevice smartpqi 431333417Ssbruno 432333417Ssbruno# 433129293Speter# 3ware 9000 series PATA/SATA RAID controller driver and options. 434129293Speter# The driver is implemented as a SIM, and so, needs the CAM infrastructure. 435129293Speter# 436142733Sobrienoptions TWA_DEBUG # 0-10; 10 prints the most messages. 437142733Sobrienoptions TWA_FLASH_FIRMWARE # firmware image bundled when defined. 438129293Speterdevice twa # 3ware 9000 series PATA/SATA RAID 439129293Speter 440129293Speter# 441125461Speter# SCSI host adapters: 442126541Sobrien# 443125984Sobrien# ncv: NCR 53C500 based SCSI host adapters. 444125984Sobrien# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters. 445125984Sobrien# stg: TMC 18C30, 18C50 based SCSI host adapters. 446125461Speter 447126638Sobriendevice ncv 448126638Sobriendevice nsp 449126638Sobriendevice stg 450125984Sobrien 451125461Speter# 452125461Speter# Adaptec FSA RAID controllers, including integrated DELL controllers, 453125461Speter# the Dell PERC 2/QC and the HP NetRAID-4M 454125461Speterdevice aac 455125461Speterdevice aacp # SCSI Passthrough interface (optional, CAM required) 456125461Speter 457125461Speter# 458250963Sachim# Adaptec by PMC RAID controllers, Series 6/7/8 and upcoming families 459250963Sachimdevice aacraid # Container interface, CAM required 460250963Sachim 461250963Sachim# 462228940Sdelphij# Highpoint RocketRAID 27xx. 463228940Sdelphijdevice hpt27xx 464228940Sdelphij 465228940Sdelphij# 466174604Sscottl# Highpoint RocketRAID 182x. 467149873Sscottldevice hptmv 468147687Speter 469147687Speter# 470252867Sdelphij# Highpoint DC7280 and R750. 471252867Sdelphijdevice hptnr 472252867Sdelphij 473252867Sdelphij# 474174604Sscottl# Highpoint RocketRAID. Supports RR172x, RR222x, RR2240, RR232x, RR2340, 475174604Sscottl# RR2210, RR174x, RR2522, RR231x, RR230x. 476174604Sscottldevice hptrr 477174604Sscottl 478174604Sscottl# 479169421Sscottl# Highpoint RocketRaid 3xxx series SATA RAID 480169421Sscottldevice hptiop 481169421Sscottl 482169421Sscottl# 483125461Speter# IBM (now Adaptec) ServeRAID controllers 484125461Speterdevice ips 485125461Speter 486125461Speter# 487330679Srpokala# Intel integrated Memory Controller (iMC) SMBus controller 488330679Srpokala# Sandybridge-Xeon, Ivybridge-Xeon, Haswell-Xeon, Broadwell-Xeon 489330679Srpokaladevice imcsmb 490330679Srpokala 491330679Srpokala# 492230843Sjimharris# Intel C600 (Patsburg) integrated SAS controller 493230843Sjimharrisdevice isci 494263301Simpoptions ISCI_LOGGING # enable debugging in isci HAL 495230843Sjimharris 496230843Sjimharris# 497240618Sjimharris# NVM Express (NVMe) support 498240618Sjimharrisdevice nvme # base NVMe driver 499240618Sjimharrisdevice nvd # expose NVMe namespaces as disks, depends on nvme 500240618Sjimharris 501240618Sjimharris# 502285662Sbenno# PMC-Sierra SAS/SATA controller 503285662Sbennodevice pmspcv 504285662Sbenno 505285662Sbenno# 506125461Speter# SafeNet crypto driver: can be moved to the MI NOTES as soon as 507125461Speter# it's tested on a big-endian machine 508125461Speter# 509125461Speterdevice safe # SafeNet 1141 510142733Sobrienoptions SAFE_DEBUG # enable debugging support: hw.safe.debug 511142733Sobrienoptions SAFE_RNDTEST # enable rndtest support 512125461Speter 513245362Sbryanv# 514245362Sbryanv# VirtIO support 515247870Sbryanv# 516247870Sbryanv# The virtio entry provides a generic bus for use by the device drivers. 517247870Sbryanv# It must be combined with an interface that communicates with the host. 518260376Sschweikh# Multiple such interfaces are defined by the VirtIO specification. FreeBSD 519247870Sbryanv# only has support for PCI. Therefore, virtio_pci must be statically 520247870Sbryanv# compiled in or loaded as a module for the device drivers to function. 521247870Sbryanv# 522245362Sbryanvdevice virtio # Generic VirtIO bus (required) 523245362Sbryanvdevice virtio_pci # VirtIO PCI Interface 524245362Sbryanvdevice vtnet # VirtIO Ethernet device 525245362Sbryanvdevice virtio_blk # VirtIO Block device 526245362Sbryanvdevice virtio_scsi # VirtIO SCSI device 527245362Sbryanvdevice virtio_balloon # VirtIO Memory Balloon device 528260847Sbryanvdevice virtio_random # VirtIO Entropy device 529274065Sbryanvdevice virtio_console # VirtIO Console device 530245362Sbryanv 531299010Spfg# Microsoft Hyper-V enhancement support 532257277Sglebiusdevice hyperv # HyperV drivers 533257277Sglebius 534257277Sglebius# Xen HVM Guest Optimizations 535260376Sschweikhoptions XENHVM # Xen HVM kernel infrastructure 536257277Sglebiusdevice xenpci # Xen HVM Hypervisor services driver 537257277Sglebius 538125461Speter##################################################################### 539125461Speter 540125461Speter# 541125461Speter# Miscellaneous hardware: 542125461Speter# 543162562Sjhb# ipmi: Intelligent Platform Management Interface 544188254Swkoszek# pbio: Parallel (8255 PPI) basic I/O (mode 0) port (e.g. Advantech PCL-724) 545148264Speter# smbios: DMI/SMBIOS entry point 546148264Speter# vpd: Vital Product Data kernel interface 547174962Srpaulo# asmc: Apple System Management Controller 548188254Swkoszek# si: Specialix International SI/XIO or SX intelligent serial card 549212861Snork# tpm: Trusted Platform Module 550125461Speter 551125461Speter# Notes on the Specialix SI/XIO driver: 552125461Speter# The host card is memory, not IO mapped. 553125461Speter# The Rev 1 host cards use a 64K chunk, on a 32K boundary. 554125461Speter# The Rev 2 host cards use a 32K chunk, on a 32K boundary. 555125461Speter# The cards can use an IRQ of 11, 12 or 15. 556125461Speter 557162562Sjhbdevice ipmi 558147687Speterdevice pbio 559147687Speterhint.pbio.0.at="isa" 560147687Speterhint.pbio.0.port="0x360" 561148217Sjkimdevice smbios 562148264Speterdevice vpd 563174962Srpaulodevice asmc 564270224Sjhbdevice si 565212861Snorkdevice tpm 566254624Sobriendevice padlock_rng # VIA Padlock RNG 567254624Sobriendevice rdrand_rng # Intel Bull Mountain RNG 568256053Sjmgdevice aesni # AES-NI OpenCrypto module 569287117Scemdevice ioat # Intel I/OAT DMA engine 570188254Swkoszek 571125461Speter# 572125461Speter# Laptop/Notebook options: 573125461Speter# 574125461Speter 575126541Sobrien 576126541Sobrien# 577126541Sobrien# I2C Bus 578126541Sobrien# 579126541Sobrien 580147687Speter# 581147687Speter# Hardware watchdog timers: 582147687Speter# 583147687Speter# ichwd: Intel ICH watchdog timer 584199969Savg# amdsbwd: AMD SB7xx watchdog timer 585228724Sdelphij# viawd: VIA south bridge watchdog timer 586232614Sbz# wbwd: Winbond watchdog timer 587147687Speter# 588147687Speterdevice ichwd 589199969Savgdevice amdsbwd 590228431Sfabientdevice viawd 591232614Sbzdevice wbwd 592147687Speter 593171854Sdes# 594171854Sdes# Temperature sensors: 595171854Sdes# 596171854Sdes# coretemp: on-die sensor on Intel Core and newer CPUs 597189872Sdchagin# amdtemp: on-die sensor on AMD K8/K10/K11 CPUs 598171854Sdes# 599171854Sdesdevice coretemp 600189872Sdchagindevice amdtemp 601171854Sdes 602126541Sobrien# 603181430Sstas# CPU control pseudo-device. Provides access to MSRs, CPUID info and 604181430Sstas# microcode update feature. 605181430Sstas# 606181430Sstasdevice cpuctl 607181430Sstas 608181430Sstas# 609129293Speter# System Management Bus (SMB) 610129293Speter# 611129293Speteroptions ENABLE_ALART # Control alarm on Intel intpm driver 612129293Speter 613129293Speter# 614329767Struckman# AMD System Management Network (SMN) 615329767Struckman# 616329767Struckmandevice amdsmn 617329767Struckman 618329767Struckman# 619225194Sjhb# Number of initial kernel page table pages used for early bootstrap. 620225194Sjhb# This number should include enough pages to map the kernel and any 621225194Sjhb# modules or other data loaded with the kernel by the loader. Each 622225194Sjhb# page table page maps 2MB. 623225194Sjhb# 624225194Sjhboptions NKPT=31 625225194Sjhb 626306737Skib# EFI Runtime Services support (not functional yet). 627306737Skiboptions EFIRT 628306737Skib 629125461Speter 630125461Speter##################################################################### 631125461Speter# ABI Emulation 632125461Speter 633126541Sobrien#XXX keep these here for now and reactivate when support for emulating 634126541Sobrien#XXX these 32 bit binaries is added. 635126541Sobrien 636133844Sobrien# Enable 32-bit runtime support for FreeBSD/i386 binaries. 637205014Snwhitehornoptions COMPAT_FREEBSD32 638133844Sobrien 639126541Sobrien# Enable iBCS2 runtime support for SCO and ISC binaries 640126541Sobrien#XXX#options IBCS2 641126541Sobrien 642126541Sobrien# Emulate spx device for client side of SVR3 local X interface 643126541Sobrien#XXX#options SPX_HACK 644126541Sobrien 645307144Sed# Enable 32-bit runtime support for CloudABI binaries. 646307144Sedoptions COMPAT_CLOUDABI32 647307144Sed 648285746Sed# Enable 64-bit runtime support for CloudABI binaries. 649285746Sedoptions COMPAT_CLOUDABI64 650285746Sed 651125461Speter# Enable Linux ABI emulation 652126541Sobrien#XXX#options COMPAT_LINUX 653125461Speter 654337263Smarkj# Enable 32-bit Linux ABI emulation (requires COMPAT_FREEBSD32). 655133819Stjroptions COMPAT_LINUX32 656133819Stjr 657133853Stjr# Enable the linux-like proc filesystem support (requires COMPAT_LINUX32 658125461Speter# and PSEUDOFS) 659133853Stjroptions LINPROCFS 660125461Speter 661158381Sambrisko#Enable the linux-like sys filesystem support (requires COMPAT_LINUX32 662158381Sambrisko# and PSEUDOFS) 663191954Skuriyamaoptions LINSYSFS 664158381Sambrisko 665126541Sobrien# 666126541Sobrien# SysVR4 ABI emulation 667126541Sobrien# 668126541Sobrien# The svr4 ABI emulator can be statically compiled into the kernel or loaded as 669126541Sobrien# a KLD module. 670126541Sobrien# The STREAMS network emulation code can also be compiled statically or as a 671126541Sobrien# module. If loaded as a module, it must be loaded before the svr4 module 672126541Sobrien# (the /usr/sbin/svr4 script does this for you). If compiling statically, 673126541Sobrien# the `streams' device must be configured into any kernel which also 674126541Sobrien# specifies COMPAT_SVR4. It is possible to have a statically-configured 675126541Sobrien# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4 676126541Sobrien# script understands that it doesn't need to load the `streams' module under 677126541Sobrien# those circumstances. 678126541Sobrien# Caveat: At this time, `options KTRACE' is required for the svr4 emulator 679126541Sobrien# (whether static or dynamic). 680126541Sobrien# 681126541Sobrien#XXX#options COMPAT_SVR4 # build emulator statically 682126930Speter#XXX#options DEBUG_SVR4 # enable verbose debugging 683126541Sobrien#XXX#device streams # STREAMS network driver (required for svr4). 684126541Sobrien 685125461Speter 686125461Speter##################################################################### 687125461Speter# VM OPTIONS 688125461Speter 689125461Speter# KSTACK_PAGES is the number of memory pages to assign to the kernel 690125461Speter# stack of each thread. 691125461Speter 692219525Savgoptions KSTACK_PAGES=5 693125461Speter 694233433Salc# Enable detailed accounting by the PV entry allocator. 695233433Salc 696233433Salcoptions PV_STATS 697233433Salc 698125461Speter##################################################################### 699125461Speter 700125461Speter# More undocumented options for linting. 701125461Speter# Note that documenting these are not considered an affront. 702125461Speter 703125461Speteroptions FB_INSTALL_CDEV # install a CDEV entry in /dev 704125461Speter 705125461Speteroptions KBDIO_DEBUG=2 706125461Speteroptions KBD_MAXRETRY=4 707125461Speteroptions KBD_MAXWAIT=6 708125461Speteroptions KBD_RESETDELAY=201 709125461Speter 710125461Speteroptions PSM_DEBUG=1 711125461Speter 712125461Speteroptions TIMER_FREQ=((14318182+6)/12) 713125461Speter 714125461Speteroptions VM_KMEM_SIZE 715125461Speteroptions VM_KMEM_SIZE_MAX 716125461Speteroptions VM_KMEM_SIZE_SCALE 717132956Smarkm 718159549Sjhb# Enable NDIS binary driver support 719189497Sthompsaoptions NDISAPI 720189497Sthompsadevice ndis 721