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