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