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 twa # 3ware 9000 series PATA/SATA RAID 186device smartpqi # Microsemi smartpqi driver 187device tws # LSI 3ware 9750 SATA+SAS 6Gb/s RAID controller 188 189# RAID controllers 190device aac # Adaptec FSA RAID 191device aacp # SCSI passthrough for aac (requires CAM) 192device aacraid # Adaptec by PMC RAID 193device ida # Compaq Smart RAID 194device mfi # LSI MegaRAID SAS 195device mlx # Mylex DAC960 family 196device mrsas # LSI/Avago MegaRAID SAS/SATA, 6Gb/s and 12Gb/s 197device pmspcv # PMC-Sierra SAS/SATA Controller driver 198#XXX pointer/int warnings 199#device pst # Promise Supertrak SX6000 200device twe # 3ware ATA RAID 201 202# NVM Express (NVMe) support 203device nvme # base NVMe driver 204device nvd # expose NVMe namespaces as disks, depends on nvme 205 206# Intel Volume Management Device (VMD) support 207device vmd 208 209# atkbdc0 controls both the keyboard and the PS/2 mouse 210device atkbdc # AT keyboard controller 211device atkbd # AT keyboard 212device psm # PS/2 mouse 213 214device kbdmux # keyboard multiplexer 215 216device vga # VGA video card driver 217options VESA # Add support for VESA BIOS Extensions (VBE) 218 219device splash # Splash screen and screen saver support 220 221# syscons is the default console driver, resembling an SCO console 222device sc 223options SC_PIXEL_MODE # add support for the raster text mode 224 225# vt is the new video console driver 226device vt 227device vt_vga 228device vt_efifb 229device vt_vbefb 230 231device agp # support several AGP chipsets 232 233# PCCARD (PCMCIA) support 234# PCMCIA and cardbus bridge support 235device cbb # cardbus (yenta) bridge 236device cardbus # CardBus (32-bit) bus 237 238# Serial (COM) ports 239device uart # Generic UART driver 240 241# Parallel port 242device ppc 243device ppbus # Parallel port bus (required) 244device lpt # Printer 245device ppi # Parallel port interface device 246#device vpo # Requires scbus and da 247 248device puc # Multi I/O cards and multi-channel UARTs 249 250# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure 251device iflib 252device em # Intel PRO/1000 Gigabit Ethernet Family 253device igc # Intel I225 2.5G Ethernet 254device ix # Intel PRO/10GbE PCIE PF Ethernet 255device ixv # Intel PRO/10GbE PCIE VF Ethernet 256device ixl # Intel 700 Series Physical Function 257device iavf # Intel Adaptive Virtual Function 258device ice # Intel 800 Series Physical Function 259device vmx # VMware VMXNET3 Ethernet 260device axp # AMD EPYC integrated NIC (requires miibus) 261 262# PCI Ethernet NICs. 263device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE 264device le # AMD Am7900 LANCE and Am79C9xx PCnet 265device ti # Alteon Networks Tigon I/II gigabit Ethernet 266 267# Nvidia/Mellanox Connect-X 4 and later, Ethernet only 268# mlx5ib requires ibcore infra and is not included by default 269device mlx5 # Base driver 270device mlxfw # Firmware update 271device mlx5en # Ethernet driver 272 273# PCI Ethernet NICs that use the common MII bus controller code. 274# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs! 275device miibus # MII bus support 276device ae # Attansic/Atheros L2 FastEthernet 277device age # Attansic/Atheros L1 Gigabit Ethernet 278device alc # Atheros AR8131/AR8132 Ethernet 279device ale # Atheros AR8121/AR8113/AR8114 Ethernet 280device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet 281device bfe # Broadcom BCM440x 10/100 Ethernet 282device bge # Broadcom BCM570xx Gigabit Ethernet 283device cas # Sun Cassini/Cassini+ and NS DP83065 Saturn 284device dc # DEC/Intel 21143 and various workalikes 285device et # Agere ET1310 10/100/Gigabit Ethernet 286device fxp # Intel EtherExpress PRO/100B (82557, 82558) 287device gem # Sun GEM/Sun ERI/Apple GMAC 288device jme # JMicron JMC250 Gigabit/JMC260 Fast Ethernet 289device lge # Level 1 LXT1001 gigabit Ethernet 290device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet 291device nfe # nVidia nForce MCP on-board Ethernet 292device nge # NatSemi DP83820 gigabit Ethernet 293device re # RealTek 8139C+/8169/8169S/8110S 294device rl # RealTek 8129/8139 295device sge # Silicon Integrated Systems SiS190/191 296device sis # Silicon Integrated Systems SiS 900/SiS 7016 297device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet 298device ste # Sundance ST201 (D-Link DFE-550TX) 299device stge # Sundance/Tamarack TC9021 gigabit Ethernet 300device vge # VIA VT612x gigabit Ethernet 301device vr # VIA Rhine, Rhine II 302device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'') 303 304# Wireless NIC cards 305device wlan # 802.11 support 306options IEEE80211_DEBUG # enable debug msgs 307options IEEE80211_SUPPORT_MESH # enable 802.11s draft support 308device wlan_wep # 802.11 WEP support 309device wlan_ccmp # 802.11 CCMP support 310device wlan_tkip # 802.11 TKIP support 311device wlan_amrr # AMRR transmit rate control algorithm 312device ath # Atheros NICs 313device ath_pci # Atheros pci/cardbus glue 314device ath_hal # pci/cardbus chip support 315options AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation 316options ATH_ENABLE_11N # Enable 802.11n support for AR5416 and later 317device ath_rate_sample # SampleRate tx rate control for ath 318#device bwi # Broadcom BCM430x/BCM431x wireless NICs. 319#device bwn # Broadcom BCM43xx wireless NICs. 320device ipw # Intel 2100 wireless NICs. 321device iwi # Intel 2200BG/2225BG/2915ABG wireless NICs. 322device iwn # Intel 4965/1000/5000/6000 wireless NICs. 323device malo # Marvell Libertas wireless NICs. 324device mwl # Marvell 88W8363 802.11n wireless NICs. 325device ral # Ralink Technology RT2500 wireless NICs. 326device wpi # Intel 3945ABG wireless NICs. 327 328# Pseudo devices. 329device crypto # core crypto support 330device aesni # AES-NI OpenCrypto module 331device loop # Network loopback 332device padlock_rng # VIA Padlock RNG 333device rdrand_rng # Intel Bull Mountain RNG 334device ether # Ethernet support 335device vlan # 802.1Q VLAN support 336device tuntap # Packet tunnel. 337device md # Memory "disks" 338device gif # IPv6 and IPv4 tunneling 339device firmware # firmware assist module 340device xz # lzma decompression 341 342# The `bpf' device enables the Berkeley Packet Filter. 343# Be aware of the administrative consequences of enabling this! 344# Note that 'bpf' is required for DHCP. 345device bpf # Berkeley packet filter 346 347# USB support 348options USB_DEBUG # enable debug msgs 349device uhci # UHCI PCI->USB interface 350device ohci # OHCI PCI->USB interface 351device ehci # EHCI PCI->USB interface (USB 2.0) 352device xhci # XHCI PCI->USB interface (USB 3.0) 353device usb # USB Bus (required) 354device ukbd # Keyboard 355device umass # Disks/Mass storage - Requires scbus and da 356 357# Sound support 358device sound # Generic sound driver (required) 359device snd_cmi # CMedia CMI8338/CMI8738 360device snd_csa # Crystal Semiconductor CS461x/428x 361device snd_emu10kx # Creative SoundBlaster Live! and Audigy 362device snd_es137x # Ensoniq AudioPCI ES137x 363device snd_hda # Intel High Definition Audio 364device snd_ich # Intel, NVidia and other ICH AC'97 Audio 365device snd_via8233 # VIA VT8233x Audio 366 367# MMC/SD 368device mmc # MMC/SD bus 369device mmcsd # MMC/SD memory card 370device sdhci # Generic PCI SD Host Controller 371device rtsx # Realtek SD card reader 372 373# VirtIO support 374device virtio # Generic VirtIO bus (required) 375device virtio_pci # VirtIO PCI device 376device vtnet # VirtIO Ethernet device 377device virtio_blk # VirtIO Block device 378device virtio_scsi # VirtIO SCSI device 379device virtio_balloon # VirtIO Memory Balloon device 380 381# Linux KVM paravirtualization support 382device kvm_clock # KVM paravirtual clock driver 383 384# HyperV drivers and enhancement support 385device hyperv # HyperV drivers 386 387# Xen HVM Guest Optimizations 388# NOTE: XENHVM depends on xenpci and xentimer. 389# They must be added or removed together. 390options XENHVM # Xen HVM kernel infrastructure 391device xenpci # Xen HVM Hypervisor services driver 392device xentimer # Xen x86 PV timer device 393 394# Netmap provides direct access to TX/RX rings on supported NICs 395device netmap # netmap(4) support 396 397# evdev interface 398options EVDEV_SUPPORT # evdev support in legacy drivers 399device evdev # input event device support 400device uinput # install /dev/uinput cdev 401 402# HID support 403options HID_DEBUG # enable debug msgs 404device hid # Generic HID support 405options IICHID_SAMPLING # Workaround missing GPIO INTR support 406