1e5acd89cSAndrew Turner# 2e5acd89cSAndrew Turner# GENERIC -- Generic kernel configuration file for FreeBSD/arm64 3e5acd89cSAndrew Turner# 4e5acd89cSAndrew Turner# For more information on this file, please read the config(5) manual page, 5e5acd89cSAndrew Turner# and/or the handbook section on Kernel Configuration Files: 6e5acd89cSAndrew Turner# 7*a2aef24aSEitan Adler# https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html 8e5acd89cSAndrew Turner# 9e5acd89cSAndrew Turner# The handbook is also available locally in /usr/share/doc/handbook 10e5acd89cSAndrew Turner# if you've installed the doc distribution, otherwise always see the 11*a2aef24aSEitan Adler# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the 12e5acd89cSAndrew Turner# latest information. 13e5acd89cSAndrew Turner# 14e5acd89cSAndrew Turner# An exhaustive list of options and more detailed explanations of the 15e5acd89cSAndrew Turner# device lines is also present in the ../../conf/NOTES and NOTES files. 16e5acd89cSAndrew Turner# If you are in doubt as to the purpose or necessity of a line, check first 17e5acd89cSAndrew Turner# in NOTES. 18e5acd89cSAndrew Turner# 19e5acd89cSAndrew Turner# $FreeBSD$ 20e5acd89cSAndrew Turner 21e5acd89cSAndrew Turnercpu ARM64 22e5acd89cSAndrew Turnerident GENERIC 23e5acd89cSAndrew Turner 24e5acd89cSAndrew Turnermakeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols 25598cd164SEd Mastemakeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support 26e5acd89cSAndrew Turner 27e5acd89cSAndrew Turneroptions SCHED_ULE # ULE scheduler 28e5acd89cSAndrew Turneroptions PREEMPTION # Enable kernel thread preemption 298e94025bSBjoern A. Zeeboptions VIMAGE # Subsystem virtualization, e.g. VNET 30e5acd89cSAndrew Turneroptions INET # InterNETworking 31e5acd89cSAndrew Turneroptions INET6 # IPv6 communications protocols 323839369cSGeorge V. Neville-Neiloptions IPSEC # IP (v4/v6) security 339d0ec2a9SJosh Paetzeloptions IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 34bd79708dSJonathan T. Looneyoptions TCP_HHOOK # hhook(9) framework for TCP 35e5acd89cSAndrew Turneroptions TCP_OFFLOAD # TCP offload 36e5acd89cSAndrew Turneroptions SCTP # Stream Control Transmission Protocol 37e5acd89cSAndrew Turneroptions FFS # Berkeley Fast Filesystem 38e5acd89cSAndrew Turneroptions SOFTUPDATES # Enable FFS soft updates support 39e5acd89cSAndrew Turneroptions UFS_ACL # Support for access control lists 40e5acd89cSAndrew Turneroptions UFS_DIRHASH # Improve performance on big directories 41e5acd89cSAndrew Turneroptions UFS_GJOURNAL # Enable gjournal-based UFS journaling 42e5acd89cSAndrew Turneroptions QUOTA # Enable disk quotas for UFS 43e5acd89cSAndrew Turneroptions MD_ROOT # MD is a potential root device 4422a00274SEd Masteoptions NFSCL # Network Filesystem Client 4522a00274SEd Masteoptions NFSD # Network Filesystem Server 46e5acd89cSAndrew Turneroptions NFSLOCKD # Network Lock Manager 47e5acd89cSAndrew Turneroptions NFS_ROOT # NFS usable as /, requires NFSCL 48e5acd89cSAndrew Turneroptions MSDOSFS # MSDOS Filesystem 49e5acd89cSAndrew Turneroptions CD9660 # ISO 9660 Filesystem 50e5acd89cSAndrew Turneroptions PROCFS # Process filesystem (requires PSEUDOFS) 51e5acd89cSAndrew Turneroptions PSEUDOFS # Pseudo-filesystem framework 52e5acd89cSAndrew Turneroptions GEOM_PART_GPT # GUID Partition Tables. 53e5acd89cSAndrew Turneroptions GEOM_RAID # Soft RAID functionality. 54e5acd89cSAndrew Turneroptions GEOM_LABEL # Provides labelization 5555b78354SKonstantin Belousovoptions COMPAT_FREEBSD11 # Compatible with FreeBSD11 56e5acd89cSAndrew Turneroptions SCSI_DELAY=5000 # Delay (in ms) before probing SCSI 57e5acd89cSAndrew Turneroptions KTRACE # ktrace(1) support 58e5acd89cSAndrew Turneroptions STACK # stack(9) support 59e5acd89cSAndrew Turneroptions SYSVSHM # SYSV-style shared memory 60e5acd89cSAndrew Turneroptions SYSVMSG # SYSV-style message queues 61e5acd89cSAndrew Turneroptions SYSVSEM # SYSV-style semaphores 62e5acd89cSAndrew Turneroptions _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions 63e5acd89cSAndrew Turneroptions PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. 64e5acd89cSAndrew Turneroptions KBD_INSTALL_CDEV # install a CDEV entry in /dev 65e5acd89cSAndrew Turneroptions HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) 66e5acd89cSAndrew Turneroptions AUDIT # Security event auditing 67e5acd89cSAndrew Turneroptions CAPABILITY_MODE # Capsicum capability mode 68e5acd89cSAndrew Turneroptions CAPABILITIES # Capsicum capabilities 69e5acd89cSAndrew Turneroptions MAC # TrustedBSD MAC Framework 70e5acd89cSAndrew Turneroptions KDTRACE_FRAME # Ensure frames are compiled in 71e5acd89cSAndrew Turneroptions KDTRACE_HOOKS # Kernel DTrace hooks 72e5acd89cSAndrew Turneroptions VFP # Floating-point support 73ba8f0eb8SEdward Tomasz Napieralaoptions RACCT # Resource accounting framework 74ba8f0eb8SEdward Tomasz Napieralaoptions RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default 75ba8f0eb8SEdward Tomasz Napieralaoptions RCTL # Resource limits 76b2b55077SAndrew Turneroptions SMP 7704ff877eSAndrew Turneroptions INTRNG 78e5acd89cSAndrew Turner 79a380ef6aSAndrew Turner# Debugging support. Always need this: 80a380ef6aSAndrew Turneroptions KDB # Enable kernel debugger support. 81a380ef6aSAndrew Turneroptions KDB_TRACE # Print a stack trace for a panic. 82a380ef6aSAndrew Turner# For full debugger support use (turn off in stable branch): 83a380ef6aSAndrew Turneroptions DDB # Support DDB. 84a380ef6aSAndrew Turner#options GDB # Support remote GDB. 85a380ef6aSAndrew Turneroptions DEADLKRES # Enable the deadlock resolver 86a380ef6aSAndrew Turneroptions INVARIANTS # Enable calls of extra sanity checking 87a380ef6aSAndrew Turneroptions INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS 88a380ef6aSAndrew Turneroptions WITNESS # Enable checks to detect deadlocks and cycles 89a380ef6aSAndrew Turneroptions WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed 90a380ef6aSAndrew Turneroptions MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones 91a380ef6aSAndrew Turner 9275e0dfe3SAndrew Turner# SoC support 931567e084SJared McNeilloptions SOC_ALLWINNER_A64 9448ee5318SEmmanuel Vadotoptions SOC_ALLWINNER_H5 9575e0dfe3SAndrew Turneroptions SOC_CAVM_THUNDERX 96bbbde6d8SAndrew Turneroptions SOC_HISI_HI6220 979153cbffSOleksandr Tymoshenkooptions SOC_BRCM_BCM2837 9875e0dfe3SAndrew Turner 999d6cd3d8SWojciech Macek# Annapurna Alpine drivers 1009d6cd3d8SWojciech Macekdevice al_ccu # Alpine Cache Coherency Unit 1019d6cd3d8SWojciech Macekdevice al_nb_service # Alpine North Bridge Service 1027902c8dcSWojciech Macekdevice al_iofic # I/O Fabric Interrupt Controller 1037902c8dcSWojciech Macekdevice al_serdes # Serializer/Deserializer 1047902c8dcSWojciech Macekdevice al_udma # Universal DMA 1059d6cd3d8SWojciech Macek 106ed33af42SAndrew Turner# VirtIO support 107e5acd89cSAndrew Turnerdevice virtio 108de5cef65SJayachandran C.device virtio_pci 109e5acd89cSAndrew Turnerdevice virtio_mmio 110e5acd89cSAndrew Turnerdevice virtio_blk 111e5acd89cSAndrew Turnerdevice vtnet 112e5acd89cSAndrew Turner 1130fbb0171SJared McNeill# CPU frequency control 1140fbb0171SJared McNeilldevice cpufreq 1150fbb0171SJared McNeill 116d943d79aSZbigniew Bodek# Bus drivers 117d943d79aSZbigniew Bodekdevice pci 118988d9b35SWojciech Macekdevice al_pci # Annapurna Alpine PCI-E 11982cb5c3bSJohn Baldwinoptions PCI_HP # PCI-Express native HotPlug 12022a00274SEd Masteoptions PCI_IOV # PCI SR-IOV support 121d943d79aSZbigniew Bodek 1226ff9127bSZbigniew Bodek# Ethernet NICs 1237ca8a2b3SMarcin Wojtasdevice mdio 1246ff9127bSZbigniew Bodekdevice mii 1256ff9127bSZbigniew Bodekdevice miibus # MII bus support 1261567e084SJared McNeilldevice awg # Allwinner EMAC Gigabit Ethernet 1279c6d6488SAndrew Turnerdevice axgbe # AMD Opteron A1100 integrated NIC 128a38fc8caSAndrew Turnerdevice em # Intel PRO/1000 Gigabit Ethernet Family 1290422bce8SWojciech Macekdevice ix # Intel 10Gb Ethernet Family 130a38fc8caSAndrew Turnerdevice msk # Marvell/SysKonnect Yukon II Gigabit Ethernet 131885a7418SMarcin Wojtasdevice neta # Marvell Armada 370/38x/XP/3700 NIC 132b1895f72SAndrew Turnerdevice smc # SMSC LAN91C111 133a38fc8caSAndrew Turnerdevice vnic # Cavium ThunderX NIC 1347902c8dcSWojciech Macekdevice al_eth # Annapurna Alpine Ethernet NIC 1356ff9127bSZbigniew Bodek 1366ff9127bSZbigniew Bodek# Block devices 1376ff9127bSZbigniew Bodekdevice ahci 1386ff9127bSZbigniew Bodekdevice scbus 1396ff9127bSZbigniew Bodekdevice da 1406ff9127bSZbigniew Bodek 1412ed39a22SEd Maste# ATA/SCSI peripherals 1422ed39a22SEd Mastedevice pass # Passthrough device (direct ATA/SCSI access) 1432ed39a22SEd Maste 144c0e5e172SAndrew Turner# MMC/SD/SDIO Card slot support 145232de4a9SOleksandr Tymoshenkodevice sdhci 1461567e084SJared McNeilldevice aw_mmc # Allwinner SD/MMC controller 147c0e5e172SAndrew Turnerdevice mmc # mmc/sd bus 148c0e5e172SAndrew Turnerdevice mmcsd # mmc/sd flash cards 149c0e5e172SAndrew Turnerdevice dwmmc 150c0e5e172SAndrew Turner 151e5acd89cSAndrew Turner# Serial (COM) ports 152e5acd89cSAndrew Turnerdevice uart # Generic UART driver 153e49e3ec3SMarcin Wojtasdevice uart_mvebu # Armada 3700 UART driver 15430d92874SWojciech Macekdevice uart_ns8250 # ns8250-type UART driver 1551567e084SJared McNeilldevice uart_snps 156e5acd89cSAndrew Turnerdevice pl011 157e5acd89cSAndrew Turner 158504a0067SAndrew Turner# USB support 159504a0067SAndrew Turneroptions USB_DEBUG # enable debug msgs 1601567e084SJared McNeilldevice aw_ehci # Allwinner EHCI USB interface (USB 2.0) 1611567e084SJared McNeilldevice aw_usbphy # Allwinner USB PHY 162504a0067SAndrew Turnerdevice dwcotg # DWC OTG controller 1631567e084SJared McNeilldevice ohci # OHCI USB interface 1641567e084SJared McNeilldevice ehci # EHCI USB interface (USB 2.0) 165840d633fSMarcin Wojtasdevice ehci_mv # Marvell EHCI USB interface 1669b76bf99SEd Mastedevice xhci # XHCI PCI->USB interface (USB 3.0) 167705f4b2cSMarcin Wojtasdevice xhci_mv # Marvell XHCI USB interface 168504a0067SAndrew Turnerdevice usb # USB Bus (required) 1699b76bf99SEd Mastedevice ukbd # Keyboard 1709b76bf99SEd Mastedevice umass # Disks/Mass storage - Requires scbus and da 171504a0067SAndrew Turner 172232de4a9SOleksandr Tymoshenko# USB ethernet support 173232de4a9SOleksandr Tymoshenkodevice smcphy 174232de4a9SOleksandr Tymoshenkodevice smsc 175232de4a9SOleksandr Tymoshenko 1761567e084SJared McNeill# GPIO 1771567e084SJared McNeilldevice aw_gpio # Allwinner GPIO controller 1781567e084SJared McNeilldevice gpio 179232de4a9SOleksandr Tymoshenkodevice gpioled 1801567e084SJared McNeilldevice fdt_pinctrl 1811567e084SJared McNeill 1821567e084SJared McNeill# I2C 1831567e084SJared McNeilldevice aw_rsb # Allwinner Reduced Serial Bus 184232de4a9SOleksandr Tymoshenkodevice bcm2835_bsc # Broadcom BCM283x I2C bus 1851567e084SJared McNeilldevice iicbus 186480c955cSWarner Loshdevice iic 1870166fb5dSEmmanuel Vadotdevice twsi # Allwinner I2C controller 1881567e084SJared McNeill 1891567e084SJared McNeill# Clock and reset controllers 1901567e084SJared McNeilldevice aw_ccu # Allwinner clock controller 1911567e084SJared McNeill 1921567e084SJared McNeill# Interrupt controllers 1931567e084SJared McNeilldevice aw_nmi # Allwinner NMI support 1941567e084SJared McNeill 1951567e084SJared McNeill# Real-time clock support 1961567e084SJared McNeilldevice aw_rtc # Allwinner Real-time Clock 197eedd5eafSMarcin Wojtasdevice mv_rtc # Marvell Real-time Clock 1981567e084SJared McNeill 1991567e084SJared McNeill# Watchdog controllers 2001567e084SJared McNeilldevice aw_wdog # Allwinner Watchdog 2011567e084SJared McNeill 2021567e084SJared McNeill# Power management controllers 2031567e084SJared McNeilldevice axp81x # X-Powers AXP81x PMIC 2041567e084SJared McNeill 205d69d5ab0SJared McNeill# EFUSE 206d69d5ab0SJared McNeilldevice aw_sid # Allwinner Secure ID EFUSE 207d69d5ab0SJared McNeill 208d69d5ab0SJared McNeill# Thermal sensors 209d69d5ab0SJared McNeilldevice aw_thermal # Allwinner Thermal Sensor Controller 210d69d5ab0SJared McNeill 211232de4a9SOleksandr Tymoshenko# SPI 212232de4a9SOleksandr Tymoshenkodevice spibus 213232de4a9SOleksandr Tymoshenkodevice bcm2835_spi # Broadcom BCM283x SPI bus 214232de4a9SOleksandr Tymoshenko 215232de4a9SOleksandr Tymoshenko# Console 216232de4a9SOleksandr Tymoshenkodevice vt 217232de4a9SOleksandr Tymoshenkodevice kbdmux 218232de4a9SOleksandr Tymoshenko 219e5acd89cSAndrew Turner# Pseudo devices. 220e5acd89cSAndrew Turnerdevice loop # Network loopback 221e5acd89cSAndrew Turnerdevice random # Entropy device 222e5acd89cSAndrew Turnerdevice ether # Ethernet support 223e5acd89cSAndrew Turnerdevice vlan # 802.1Q VLAN support 224e5acd89cSAndrew Turnerdevice tun # Packet tunnel. 225e5acd89cSAndrew Turnerdevice md # Memory "disks" 226e5acd89cSAndrew Turnerdevice gif # IPv6 and IPv4 tunneling 227e5acd89cSAndrew Turnerdevice firmware # firmware assist module 2287d9cff3dSAndrew Turnerdevice psci # Support for ARM PSCI 229e5acd89cSAndrew Turner 2301567e084SJared McNeill# EXT_RESOURCES pseudo devices 2311567e084SJared McNeilloptions EXT_RESOURCES 2321567e084SJared McNeilldevice clk 2331567e084SJared McNeilldevice phy 2341567e084SJared McNeilldevice hwreset 2351567e084SJared McNeilldevice regulator 2361567e084SJared McNeill 237e5acd89cSAndrew Turner# The `bpf' device enables the Berkeley Packet Filter. 238e5acd89cSAndrew Turner# Be aware of the administrative consequences of enabling this! 239e5acd89cSAndrew Turner# Note that 'bpf' is required for DHCP. 240e5acd89cSAndrew Turnerdevice bpf # Berkeley packet filter 241e5acd89cSAndrew Turner 242a2b3dfadSZbigniew Bodek# Chip-specific errata 243a2b3dfadSZbigniew Bodekoptions THUNDERX_PASS_1_1_ERRATA 244a2b3dfadSZbigniew Bodek 245e5acd89cSAndrew Turneroptions FDT 246adca4ffcSAndrew Turnerdevice acpi 2473839369cSGeorge V. Neville-Neil 248f4c1eac7SChristian Brueffer# The crypto framework is required by IPSEC 2493839369cSGeorge V. Neville-Neildevice crypto # Required by IPSEC 250