1# 2# GENERIC -- Generic kernel configuration file for FreeBSD/arm64 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://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html 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 ARM64 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 PREEMPTION # Enable kernel thread preemption 29options VIMAGE # Subsystem virtualization, e.g. VNET 30options INET # InterNETworking 31options INET6 # IPv6 communications protocols 32options IPSEC # IP (v4/v6) security 33options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 34options TCP_HHOOK # hhook(9) framework for TCP 35options TCP_OFFLOAD # TCP offload 36options TCP_RFC7413 # TCP Fast Open 37options SCTP # Stream Control Transmission Protocol 38options FFS # Berkeley Fast Filesystem 39options SOFTUPDATES # Enable FFS soft updates support 40options UFS_ACL # Support for access control lists 41options UFS_DIRHASH # Improve performance on big directories 42options UFS_GJOURNAL # Enable gjournal-based UFS journaling 43options QUOTA # Enable disk quotas for UFS 44options MD_ROOT # MD is a potential root device 45options NFSCL # Network Filesystem Client 46options NFSD # Network Filesystem Server 47options NFSLOCKD # Network Lock Manager 48options NFS_ROOT # NFS usable as /, requires NFSCL 49options MSDOSFS # MSDOS Filesystem 50options CD9660 # ISO 9660 Filesystem 51options PROCFS # Process filesystem (requires PSEUDOFS) 52options PSEUDOFS # Pseudo-filesystem framework 53options GEOM_RAID # Soft RAID functionality. 54options GEOM_LABEL # Provides labelization 55options COMPAT_FREEBSD32 # Compatible with FreeBSD/arm 56options COMPAT_FREEBSD11 # Compatible with FreeBSD11 57options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI 58options KTRACE # ktrace(1) support 59options STACK # stack(9) support 60options SYSVSHM # SYSV-style shared memory 61options SYSVMSG # SYSV-style message queues 62options SYSVSEM # SYSV-style semaphores 63options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions 64options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. 65options KBD_INSTALL_CDEV # install a CDEV entry in /dev 66options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) 67options AUDIT # Security event auditing 68options CAPABILITY_MODE # Capsicum capability mode 69options CAPABILITIES # Capsicum capabilities 70options MAC # TrustedBSD MAC Framework 71options KDTRACE_FRAME # Ensure frames are compiled in 72options KDTRACE_HOOKS # Kernel DTrace hooks 73options VFP # Floating-point support 74options RACCT # Resource accounting framework 75options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default 76options RCTL # Resource limits 77options SMP 78options INTRNG 79 80# Debugging support. Always need this: 81options KDB # Enable kernel debugger support. 82options KDB_TRACE # Print a stack trace for a panic. 83# For full debugger support use (turn off in stable branch): 84options DDB # Support DDB. 85#options GDB # Support remote GDB. 86options DEADLKRES # Enable the deadlock resolver 87options INVARIANTS # Enable calls of extra sanity checking 88options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS 89options WITNESS # Enable checks to detect deadlocks and cycles 90options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed 91options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones 92options ALT_BREAK_TO_DEBUGGER # Enter debugger on keyboard escape sequence 93options USB_DEBUG # enable debug msgs 94options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default 95# Warning: KUBSAN can result in a kernel too large for loader to load 96#options KUBSAN # Kernel Undefined Behavior Sanitizer 97#options KCOV # Kernel Coverage Sanitizer 98 99# Kernel dump features. 100options EKCD # Support for encrypted kernel dumps 101options GZIO # gzip-compressed kernel and user dumps 102options ZSTDIO # zstd-compressed kernel and user dumps 103options NETDUMP # netdump(4) client support 104 105# SoC support 106options SOC_ALLWINNER_A64 107options SOC_ALLWINNER_H5 108options SOC_CAVM_THUNDERX 109options SOC_HISI_HI6220 110options SOC_BRCM_BCM2837 111options SOC_MARVELL_8K 112options SOC_ROCKCHIP_RK3328 113options SOC_ROCKCHIP_RK3399 114options SOC_XILINX_ZYNQ 115 116# Timer drivers 117device a10_timer 118 119# Annapurna Alpine drivers 120device al_ccu # Alpine Cache Coherency Unit 121device al_nb_service # Alpine North Bridge Service 122device al_iofic # I/O Fabric Interrupt Controller 123device al_serdes # Serializer/Deserializer 124device al_udma # Universal DMA 125 126# Qualcomm Snapdragon drivers 127device qcom_gcc # Global Clock Controller 128 129# VirtIO support 130device virtio 131device virtio_pci 132device virtio_mmio 133device virtio_blk 134device vtnet 135 136# CPU frequency control 137device cpufreq 138 139# Bus drivers 140device pci 141device al_pci # Annapurna Alpine PCI-E 142options PCI_HP # PCI-Express native HotPlug 143options PCI_IOV # PCI SR-IOV support 144 145# Ethernet NICs 146device mdio 147device mii 148device miibus # MII bus support 149device awg # Allwinner EMAC Gigabit Ethernet 150device axgbe # AMD Opteron A1100 integrated NIC 151device em # Intel PRO/1000 Gigabit Ethernet Family 152device ix # Intel 10Gb Ethernet Family 153device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet 154device neta # Marvell Armada 370/38x/XP/3700 NIC 155device smc # SMSC LAN91C111 156device vnic # Cavium ThunderX NIC 157device al_eth # Annapurna Alpine Ethernet NIC 158device dwc_rk # Rockchip Designware 159 160# Block devices 161device ahci 162device scbus 163device da 164 165# ATA/SCSI peripherals 166device pass # Passthrough device (direct ATA/SCSI access) 167 168# MMC/SD/SDIO Card slot support 169device sdhci 170device sdhci_xenon # Marvell Xenon SD/MMC controller 171device aw_mmc # Allwinner SD/MMC controller 172device mmc # mmc/sd bus 173device mmcsd # mmc/sd flash cards 174device dwmmc 175 176# Serial (COM) ports 177device uart # Generic UART driver 178device uart_msm # Qualcomm MSM UART driver 179device uart_mu # RPI3 aux port 180device uart_mvebu # Armada 3700 UART driver 181device uart_ns8250 # ns8250-type UART driver 182device uart_snps 183device pl011 184 185# USB support 186device aw_ehci # Allwinner EHCI USB interface (USB 2.0) 187device aw_usbphy # Allwinner USB PHY 188device dwcotg # DWC OTG controller 189device ohci # OHCI USB interface 190device ehci # EHCI USB interface (USB 2.0) 191device ehci_mv # Marvell EHCI USB interface 192device xhci # XHCI PCI->USB interface (USB 3.0) 193device xhci_mv # Marvell XHCI USB interface 194device usb # USB Bus (required) 195device ukbd # Keyboard 196device umass # Disks/Mass storage - Requires scbus and da 197 198# USB ethernet support 199device muge 200device smcphy 201device smsc 202 203# GPIO / PINCTRL 204device aw_gpio # Allwinner GPIO controller 205device gpio 206device gpioled 207device fdt_pinctrl 208device mv_gpio # Marvell GPIO controller 209device mvebu_pinctrl # Marvell Pinmux Controller 210 211# I2C 212device aw_rsb # Allwinner Reduced Serial Bus 213device bcm2835_bsc # Broadcom BCM283x I2C bus 214device iicbus 215device iic 216device twsi # Allwinner I2C controller 217device rk_i2c # RockChip I2C controller 218device syr827 # Silergy SYR827 PMIC 219 220# Clock and reset controllers 221device aw_ccu # Allwinner clock controller 222 223# Interrupt controllers 224device aw_nmi # Allwinner NMI support 225device mv_cp110_icu # Marvell CP110 ICU 226device mv_ap806_gicp # Marvell AP806 GICP 227 228# Real-time clock support 229device aw_rtc # Allwinner Real-time Clock 230device mv_rtc # Marvell Real-time Clock 231 232# Watchdog controllers 233device aw_wdog # Allwinner Watchdog 234 235# Power management controllers 236device axp81x # X-Powers AXP81x PMIC 237device rk805 # RockChip RK805 PMIC 238 239# EFUSE 240device aw_sid # Allwinner Secure ID EFUSE 241 242# Thermal sensors 243device aw_thermal # Allwinner Thermal Sensor Controller 244device mv_thermal # Marvell Thermal Sensor Controller 245 246# SPI 247device spibus 248device bcm2835_spi # Broadcom BCM283x SPI bus 249 250# PWM 251device pwm 252device aw_pwm 253 254# Console 255device vt 256device kbdmux 257 258device vt_efifb 259 260# EVDEV support 261device evdev # input event device support 262options EVDEV_SUPPORT # evdev support in legacy drivers 263device uinput # install /dev/uinput cdev 264 265# Pseudo devices. 266device crypto # core crypto support 267device loop # Network loopback 268device random # Entropy device 269device ether # Ethernet support 270device vlan # 802.1Q VLAN support 271device tun # Packet tunnel. 272device md # Memory "disks" 273device gif # IPv6 and IPv4 tunneling 274device firmware # firmware assist module 275options EFIRT # EFI Runtime Services 276 277# EXT_RESOURCES pseudo devices 278options EXT_RESOURCES 279device clk 280device phy 281device hwreset 282device nvmem 283device regulator 284device syscon 285device aw_syscon 286 287# The `bpf' device enables the Berkeley Packet Filter. 288# Be aware of the administrative consequences of enabling this! 289# Note that 'bpf' is required for DHCP. 290device bpf # Berkeley packet filter 291 292# Chip-specific errata 293options THUNDERX_PASS_1_1_ERRATA 294 295options FDT 296device acpi 297 298# DTBs 299makeoptions MODULES_EXTRA="dtb/allwinner dtb/rockchip" 300