1# 2# GENERIC -- Generic kernel configuration file for FreeBSD/amd64 3# 4# For more information on this file, please read the config(5) manual page, 5# and/or the handbook section on Kernel Configuration Files: 6# 7# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config 8# 9# The handbook is also available locally in /usr/share/doc/handbook 10# if you've installed the doc distribution, otherwise always see the 11# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the 12# latest information. 13# 14# An exhaustive list of options and more detailed explanations of the 15# device lines is also present in the ../../conf/NOTES and NOTES files. 16# If you are in doubt as to the purpose or necessity of a line, check first 17# in NOTES. 18# 19# $FreeBSD$ 20 21cpu HAMMER 22ident GENERIC 23 24makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols 25makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support 26 27options SCHED_ULE # ULE scheduler 28options NUMA # Non-Uniform Memory Architecture support 29options PREEMPTION # Enable kernel thread preemption 30options VIMAGE # Subsystem virtualization, e.g. VNET 31options INET # InterNETworking 32options INET6 # IPv6 communications protocols 33options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 34options ROUTE_MPATH # Multipath routing support 35options FIB_ALGO # Modular fib lookups 36options TCP_OFFLOAD # TCP offload 37options TCP_BLACKBOX # Enhanced TCP event logging 38options TCP_HHOOK # hhook(9) framework for TCP 39options TCP_RFC7413 # TCP Fast Open 40options SCTP_SUPPORT # Allow kldload of SCTP 41options KERN_TLS # TLS transmit & receive offload 42options FFS # Berkeley Fast Filesystem 43options SOFTUPDATES # Enable FFS soft updates support 44options UFS_ACL # Support for access control lists 45options UFS_DIRHASH # Improve performance on big directories 46options UFS_GJOURNAL # Enable gjournal-based UFS journaling 47options QUOTA # Enable disk quotas for UFS 48options MD_ROOT # MD is a potential root device 49options NFSCL # Network Filesystem Client 50options NFSD # Network Filesystem Server 51options NFSLOCKD # Network Lock Manager 52options NFS_ROOT # NFS usable as /, requires NFSCL 53options MSDOSFS # MSDOS Filesystem 54options CD9660 # ISO 9660 Filesystem 55options PROCFS # Process filesystem (requires PSEUDOFS) 56options PSEUDOFS # Pseudo-filesystem framework 57options TMPFS # Efficient memory filesystem 58options GEOM_RAID # Soft RAID functionality. 59options GEOM_LABEL # Provides labelization 60options EFIRT # EFI Runtime Services support 61options COMPAT_FREEBSD32 # Compatible with i386 binaries 62options COMPAT_FREEBSD4 # Compatible with FreeBSD4 63options COMPAT_FREEBSD5 # Compatible with FreeBSD5 64options COMPAT_FREEBSD6 # Compatible with FreeBSD6 65options COMPAT_FREEBSD7 # Compatible with FreeBSD7 66options COMPAT_FREEBSD9 # Compatible with FreeBSD9 67options COMPAT_FREEBSD10 # Compatible with FreeBSD10 68options COMPAT_FREEBSD11 # Compatible with FreeBSD11 69options COMPAT_FREEBSD12 # Compatible with FreeBSD12 70options COMPAT_FREEBSD13 # Compatible with FreeBSD13 71options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI 72options KTRACE # ktrace(1) support 73options STACK # stack(9) support 74options SYSVSHM # SYSV-style shared memory 75options SYSVMSG # SYSV-style message queues 76options SYSVSEM # SYSV-style semaphores 77options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions 78options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. 79options KBD_INSTALL_CDEV # install a CDEV entry in /dev 80options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) 81options AUDIT # Security event auditing 82options CAPABILITY_MODE # Capsicum capability mode 83options CAPABILITIES # Capsicum capabilities 84options MAC # TrustedBSD MAC Framework 85options KDTRACE_FRAME # Ensure frames are compiled in 86options KDTRACE_HOOKS # Kernel DTrace hooks 87options DDB_CTF # Kernel ELF linker loads CTF data 88options INCLUDE_CONFIG_FILE # Include this file in kernel 89options RACCT # Resource accounting framework 90options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default 91options RCTL # Resource limits 92 93# Debugging support. Always need this: 94options KDB # Enable kernel debugger support. 95options KDB_TRACE # Print a stack trace for a panic. 96# For full debugger support use (turn off in stable branch): 97options BUF_TRACKING # Track buffer history 98options DDB # Support DDB. 99options FULL_BUF_TRACKING # Track more buffer history 100options GDB # Support remote GDB. 101options DEADLKRES # Enable the deadlock resolver 102options INVARIANTS # Enable calls of extra sanity checking 103options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS 104options QUEUE_MACRO_DEBUG_TRASH # Trash queue(2) internal pointers on invalidation 105options WITNESS # Enable checks to detect deadlocks and cycles 106options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed 107options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones 108options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default 109 110# Kernel Sanitizers 111#options COVERAGE # Generic kernel coverage. Used by KCOV 112#options KCOV # Kernel Coverage Sanitizer 113# Warning: KUBSAN can result in a kernel too large for loader to load 114#options KUBSAN # Kernel Undefined Behavior Sanitizer 115#options KCSAN # Kernel Concurrency Sanitizer 116 117# Kernel dump features. 118options EKCD # Support for encrypted kernel dumps 119options GZIO # gzip-compressed kernel and user dumps 120options ZSTDIO # zstd-compressed kernel and user dumps 121options DEBUGNET # debugnet networking 122options NETDUMP # netdump(4) client support 123options NETGDB # netgdb(4) client support 124 125# Make an SMP-capable kernel by default 126options SMP # Symmetric MultiProcessor Kernel 127options EARLY_AP_STARTUP 128 129# CPU frequency control 130device cpufreq 131 132# Bus support. 133device acpi 134device smbios 135options IOMMU 136device pci 137options PCI_HP # PCI-Express native HotPlug 138options PCI_IOV # PCI SR-IOV support 139 140options COMPAT_LINUXKPI 141 142# Enable support for the kernel PLL to use an external PPS signal, 143# under supervision of [x]ntpd(8) 144# More info in ntpd documentation: http://www.eecis.udel.edu/~ntp 145 146options PPS_SYNC 147 148# Floppy drives 149device fdc 150 151# ATA controllers 152device ahci # AHCI-compatible SATA controllers 153device ata # Legacy ATA/SATA controllers 154device mvs # Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA 155device siis # SiliconImage SiI3124/SiI3132/SiI3531 SATA 156 157# SCSI Controllers 158device ahc # AHA2940 and onboard AIC7xxx devices 159device ahd # AHA39320/29320 and onboard AIC79xx devices 160device hptiop # Highpoint RocketRaid 3xxx series 161device isp # Qlogic family 162#device ispfw # Firmware for QLogic HBAs- normally a module 163device mpt # LSI-Logic MPT-Fusion 164device mps # LSI-Logic MPT-Fusion 2 165device mpr # LSI-Logic MPT-Fusion 3 166device sym # NCR/Symbios Logic 167device isci # Intel C600 SAS controller 168device ocs_fc # Emulex FC adapters 169device pvscsi # VMware PVSCSI 170 171# ATA/SCSI peripherals 172device scbus # SCSI bus (required for ATA/SCSI) 173device ch # SCSI media changers 174device da # Direct Access (disks) 175device sa # Sequential Access (tape etc) 176device cd # CD 177device pass # Passthrough device (direct ATA/SCSI access) 178device ses # Enclosure Services (SES and SAF-TE) 179#device ctl # CAM Target Layer 180 181# RAID controllers interfaced to the SCSI subsystem 182device arcmsr # Areca SATA II RAID 183device ciss # Compaq Smart RAID 5* 184device ips # IBM (Adaptec) ServeRAID 185device smartpqi # Microsemi smartpqi driver 186device tws # LSI 3ware 9750 SATA+SAS 6Gb/s RAID controller 187 188# RAID controllers 189device aac # Adaptec FSA RAID 190device aacp # SCSI passthrough for aac (requires CAM) 191device aacraid # Adaptec by PMC RAID 192device ida # Compaq Smart RAID 193device mfi # LSI MegaRAID SAS 194device mlx # Mylex DAC960 family 195device mrsas # LSI/Avago MegaRAID SAS/SATA, 6Gb/s and 12Gb/s 196device pmspcv # PMC-Sierra SAS/SATA Controller driver 197#XXX pointer/int warnings 198#device pst # Promise Supertrak SX6000 199device twe # 3ware ATA RAID 200 201# NVM Express (NVMe) support 202device nvme # base NVMe driver 203device nvd # expose NVMe namespaces as disks, depends on nvme 204 205# Intel Volume Management Device (VMD) support 206device vmd 207 208# atkbdc0 controls both the keyboard and the PS/2 mouse 209device atkbdc # AT keyboard controller 210device atkbd # AT keyboard 211device psm # PS/2 mouse 212 213device kbdmux # keyboard multiplexer 214 215device vga # VGA video card driver 216options VESA # Add support for VESA BIOS Extensions (VBE) 217 218device splash # Splash screen and screen saver support 219 220# syscons is the default console driver, resembling an SCO console 221device sc 222options SC_PIXEL_MODE # add support for the raster text mode 223 224# vt is the new video console driver 225device vt 226device vt_vga 227device vt_efifb 228device vt_vbefb 229 230device agp # support several AGP chipsets 231 232# PCCARD (PCMCIA) support 233# PCMCIA and cardbus bridge support 234device cbb # cardbus (yenta) bridge 235device cardbus # CardBus (32-bit) bus 236 237# Serial (COM) ports 238device uart # Generic UART driver 239 240# Parallel port 241device ppc 242device ppbus # Parallel port bus (required) 243device lpt # Printer 244device ppi # Parallel port interface device 245#device vpo # Requires scbus and da 246 247device puc # Multi I/O cards and multi-channel UARTs 248 249# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure 250device iflib 251device em # Intel PRO/1000 Gigabit Ethernet Family 252device igc # Intel I225 2.5G Ethernet 253device ix # Intel PRO/10GbE PCIE PF Ethernet 254device ixv # Intel PRO/10GbE PCIE VF Ethernet 255device ixl # Intel 700 Series Physical Function 256device iavf # Intel Adaptive Virtual Function 257device ice # Intel 800 Series Physical Function 258device vmx # VMware VMXNET3 Ethernet 259device axp # AMD EPYC integrated NIC (requires miibus) 260 261# PCI Ethernet NICs. 262device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE 263device le # AMD Am7900 LANCE and Am79C9xx PCnet 264device ti # Alteon Networks Tigon I/II gigabit Ethernet 265 266# Nvidia/Mellanox Connect-X 4 and later, Ethernet only 267# mlx5ib requires ibcore infra and is not included by default 268device mlx5 # Base driver 269device mlxfw # Firmware update 270device mlx5en # Ethernet driver 271 272# PCI Ethernet NICs that use the common MII bus controller code. 273# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs! 274device miibus # MII bus support 275device ae # Attansic/Atheros L2 FastEthernet 276device age # Attansic/Atheros L1 Gigabit Ethernet 277device alc # Atheros AR8131/AR8132 Ethernet 278device ale # Atheros AR8121/AR8113/AR8114 Ethernet 279device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet 280device bfe # Broadcom BCM440x 10/100 Ethernet 281device bge # Broadcom BCM570xx Gigabit Ethernet 282device cas # Sun Cassini/Cassini+ and NS DP83065 Saturn 283device dc # DEC/Intel 21143 and various workalikes 284device et # Agere ET1310 10/100/Gigabit Ethernet 285device fxp # Intel EtherExpress PRO/100B (82557, 82558) 286device gem # Sun GEM/Sun ERI/Apple GMAC 287device jme # JMicron JMC250 Gigabit/JMC260 Fast Ethernet 288device lge # Level 1 LXT1001 gigabit Ethernet 289device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet 290device nfe # nVidia nForce MCP on-board Ethernet 291device nge # NatSemi DP83820 gigabit Ethernet 292device re # RealTek 8139C+/8169/8169S/8110S 293device rl # RealTek 8129/8139 294device sge # Silicon Integrated Systems SiS190/191 295device sis # Silicon Integrated Systems SiS 900/SiS 7016 296device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet 297device ste # Sundance ST201 (D-Link DFE-550TX) 298device stge # Sundance/Tamarack TC9021 gigabit Ethernet 299device vge # VIA VT612x gigabit Ethernet 300device vr # VIA Rhine, Rhine II 301device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'') 302 303# Wireless NIC cards 304device wlan # 802.11 support 305options IEEE80211_DEBUG # enable debug msgs 306options IEEE80211_SUPPORT_MESH # enable 802.11s draft support 307device wlan_wep # 802.11 WEP support 308device wlan_ccmp # 802.11 CCMP support 309device wlan_tkip # 802.11 TKIP support 310device wlan_amrr # AMRR transmit rate control algorithm 311device ath # Atheros NICs 312device ath_pci # Atheros pci/cardbus glue 313device ath_hal # pci/cardbus chip support 314options AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation 315options ATH_ENABLE_11N # Enable 802.11n support for AR5416 and later 316device ath_rate_sample # SampleRate tx rate control for ath 317#device bwi # Broadcom BCM430x/BCM431x wireless NICs. 318#device bwn # Broadcom BCM43xx wireless NICs. 319device ipw # Intel 2100 wireless NICs. 320device iwi # Intel 2200BG/2225BG/2915ABG wireless NICs. 321device iwn # Intel 4965/1000/5000/6000 wireless NICs. 322device malo # Marvell Libertas wireless NICs. 323device mwl # Marvell 88W8363 802.11n wireless NICs. 324device ral # Ralink Technology RT2500 wireless NICs. 325device wpi # Intel 3945ABG wireless NICs. 326 327# Pseudo devices. 328device crypto # core crypto support 329device aesni # AES-NI OpenCrypto module 330device loop # Network loopback 331device padlock_rng # VIA Padlock RNG 332device rdrand_rng # Intel Bull Mountain RNG 333device ether # Ethernet support 334device vlan # 802.1Q VLAN support 335device tuntap # Packet tunnel. 336device md # Memory "disks" 337device gif # IPv6 and IPv4 tunneling 338device firmware # firmware assist module 339device xz # lzma decompression 340 341# The `bpf' device enables the Berkeley Packet Filter. 342# Be aware of the administrative consequences of enabling this! 343# Note that 'bpf' is required for DHCP. 344device bpf # Berkeley packet filter 345 346# USB support 347options USB_DEBUG # enable debug msgs 348device uhci # UHCI PCI->USB interface 349device ohci # OHCI PCI->USB interface 350device ehci # EHCI PCI->USB interface (USB 2.0) 351device xhci # XHCI PCI->USB interface (USB 3.0) 352device usb # USB Bus (required) 353device ukbd # Keyboard 354device umass # Disks/Mass storage - Requires scbus and da 355 356# Sound support 357device sound # Generic sound driver (required) 358device snd_cmi # CMedia CMI8338/CMI8738 359device snd_csa # Crystal Semiconductor CS461x/428x 360device snd_emu10kx # Creative SoundBlaster Live! and Audigy 361device snd_es137x # Ensoniq AudioPCI ES137x 362device snd_hda # Intel High Definition Audio 363device snd_ich # Intel, NVidia and other ICH AC'97 Audio 364device snd_via8233 # VIA VT8233x Audio 365 366# MMC/SD 367device mmc # MMC/SD bus 368device mmcsd # MMC/SD memory card 369device sdhci # Generic PCI SD Host Controller 370device rtsx # Realtek SD card reader 371 372# VirtIO support 373device virtio # Generic VirtIO bus (required) 374device virtio_pci # VirtIO PCI device 375device vtnet # VirtIO Ethernet device 376device virtio_blk # VirtIO Block device 377device virtio_scsi # VirtIO SCSI device 378device virtio_balloon # VirtIO Memory Balloon device 379 380# Linux KVM paravirtualization support 381device kvm_clock # KVM paravirtual clock driver 382 383# HyperV drivers and enhancement support 384device hyperv # HyperV drivers 385 386# Xen HVM Guest Optimizations 387# NOTE: XENHVM depends on xenpci and xentimer. 388# They must be added or removed together. 389options XENHVM # Xen HVM kernel infrastructure 390device xenpci # Xen HVM Hypervisor services driver 391device xentimer # Xen x86 PV timer device 392 393# Netmap provides direct access to TX/RX rings on supported NICs 394device netmap # netmap(4) support 395 396# evdev interface 397options EVDEV_SUPPORT # evdev support in legacy drivers 398device evdev # input event device support 399device uinput # install /dev/uinput cdev 400 401# HID support 402options HID_DEBUG # enable debug msgs 403device hid # Generic HID support 404options IICHID_SAMPLING # Workaround missing GPIO INTR support 405