128029b68SRuslan Bukin# 228029b68SRuslan Bukin# GENERIC -- Generic kernel configuration file for FreeBSD/RISC-V 328029b68SRuslan Bukin# 428029b68SRuslan Bukin# For more information on this file, please read the config(5) manual page, 528029b68SRuslan Bukin# and/or the handbook section on Kernel Configuration Files: 628029b68SRuslan Bukin# 7c1a14887SCeri Davies# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config 828029b68SRuslan Bukin# 928029b68SRuslan Bukin# The handbook is also available locally in /usr/share/doc/handbook 1028029b68SRuslan Bukin# if you've installed the doc distribution, otherwise always see the 11a2aef24aSEitan Adler# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the 1228029b68SRuslan Bukin# latest information. 1328029b68SRuslan Bukin# 1428029b68SRuslan Bukin# An exhaustive list of options and more detailed explanations of the 1528029b68SRuslan Bukin# device lines is also present in the ../../conf/NOTES and NOTES files. 1628029b68SRuslan Bukin# If you are in doubt as to the purpose or necessity of a line, check first 1728029b68SRuslan Bukin# in NOTES. 1828029b68SRuslan Bukin# 1928029b68SRuslan Bukin# $FreeBSD$ 2028029b68SRuslan Bukin 2128029b68SRuslan Bukincpu RISCV 2228029b68SRuslan Bukinident GENERIC 2328029b68SRuslan Bukin 2428029b68SRuslan Bukinmakeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols 25c04c594dSMitchell Hornemakeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support 2628029b68SRuslan Bukin 2728029b68SRuslan Bukinoptions SCHED_ULE # ULE scheduler 2828029b68SRuslan Bukinoptions PREEMPTION # Enable kernel thread preemption 29bd528a39SRuslan Bukinoptions VIMAGE # Subsystem virtualization, e.g. VNET 3028029b68SRuslan Bukinoptions INET # InterNETworking 3128029b68SRuslan Bukinoptions INET6 # IPv6 communications protocols 32bd79708dSJonathan T. Looneyoptions TCP_HHOOK # hhook(9) framework for TCP 333b65550eSJosh Paetzeloptions IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 34d5fe384bSAlexander V. Chernikovoptions ROUTE_MPATH # Multipath routing support 3528029b68SRuslan Bukinoptions TCP_OFFLOAD # TCP offload 36e64080e7SMark Johnstonoptions SCTP_SUPPORT # Allow kldload of SCTP 3728029b68SRuslan Bukinoptions FFS # Berkeley Fast Filesystem 3828029b68SRuslan Bukinoptions SOFTUPDATES # Enable FFS soft updates support 3928029b68SRuslan Bukinoptions UFS_ACL # Support for access control lists 4028029b68SRuslan Bukinoptions UFS_DIRHASH # Improve performance on big directories 4128029b68SRuslan Bukinoptions UFS_GJOURNAL # Enable gjournal-based UFS journaling 4228029b68SRuslan Bukinoptions QUOTA # Enable disk quotas for UFS 4328029b68SRuslan Bukinoptions NFSCL # Network Filesystem Client 4428029b68SRuslan Bukinoptions NFSD # Network Filesystem Server 4528029b68SRuslan Bukinoptions NFSLOCKD # Network Lock Manager 4628029b68SRuslan Bukinoptions NFS_ROOT # NFS usable as /, requires NFSCL 4728029b68SRuslan Bukinoptions MSDOSFS # MSDOS Filesystem 4828029b68SRuslan Bukinoptions CD9660 # ISO 9660 Filesystem 4928029b68SRuslan Bukinoptions PROCFS # Process filesystem (requires PSEUDOFS) 5028029b68SRuslan Bukinoptions PSEUDOFS # Pseudo-filesystem framework 51b798ef64SAlex Richardsonoptions TMPFS # Efficient memory filesystem 5228029b68SRuslan Bukinoptions GEOM_PART_GPT # GUID Partition Tables. 53c04c594dSMitchell Horneoptions GEOM_RAID # Soft RAID functionality. 5428029b68SRuslan Bukinoptions GEOM_LABEL # Provides labelization 5528029b68SRuslan Bukinoptions SCSI_DELAY=5000 # Delay (in ms) before probing SCSI 5628029b68SRuslan Bukinoptions KTRACE # ktrace(1) support 57c04c594dSMitchell Horneoptions STACK # stack(9) support 5828029b68SRuslan Bukinoptions SYSVSHM # SYSV-style shared memory 5928029b68SRuslan Bukinoptions SYSVMSG # SYSV-style message queues 6028029b68SRuslan Bukinoptions SYSVSEM # SYSV-style semaphores 6128029b68SRuslan Bukinoptions _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions 6228029b68SRuslan Bukinoptions PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. 6328029b68SRuslan Bukinoptions KBD_INSTALL_CDEV # install a CDEV entry in /dev 6428029b68SRuslan Bukin# options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) 6528029b68SRuslan Bukinoptions AUDIT # Security event auditing 6628029b68SRuslan Bukinoptions CAPABILITY_MODE # Capsicum capability mode 6728029b68SRuslan Bukinoptions CAPABILITIES # Capsicum capabilities 6828029b68SRuslan Bukinoptions MAC # TrustedBSD MAC Framework 6922d5f354SRuslan Bukinoptions KDTRACE_FRAME # Ensure frames are compiled in 7022d5f354SRuslan Bukinoptions KDTRACE_HOOKS # Kernel DTrace hooks 71c085d2eaSAndrew Turneroptions DDB_CTF # Kernel ELF linker loads CTF data 727804dd52SRuslan Bukinoptions FPE # Floating-point extension support 7328029b68SRuslan Bukinoptions RACCT # Resource accounting framework 7428029b68SRuslan Bukinoptions RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default 7528029b68SRuslan Bukinoptions RCTL # Resource limits 7617696c12SRuslan Bukinoptions SMP 772d53a67cSRuslan Bukinoptions INTRNG 7817696c12SRuslan Bukin 79af19cc59SRuslan Bukin# RISC-V SBI console 80af19cc59SRuslan Bukindevice rcons 81af19cc59SRuslan Bukin 8282524003SJessica Clarke# EXT_RESOURCES pseudo devices 8382524003SJessica Clarkeoptions EXT_RESOURCES 8482524003SJessica Clarkedevice clk 8582524003SJessica Clarkedevice syscon 8682524003SJessica Clarkedevice syscon_power 8782524003SJessica Clarkedevice riscv_syscon 8882524003SJessica Clarke 897106b618SRuslan Bukin# Bus drivers 907106b618SRuslan Bukindevice pci 917106b618SRuslan Bukin 926fdc5735SRuslan Bukin# VirtIO support 936fdc5735SRuslan Bukindevice virtio # Generic VirtIO bus (required) 946fdc5735SRuslan Bukindevice virtio_pci # VirtIO PCI device 956fdc5735SRuslan Bukindevice vtnet # VirtIO Ethernet device 966fdc5735SRuslan Bukindevice virtio_blk # VirtIO Block device 976fdc5735SRuslan Bukindevice virtio_mmio # VirtIO MMIO bus 986fdc5735SRuslan Bukin 99378a4956SRuslan Bukin# DTrace support 100378a4956SRuslan Bukin# device dtrace 101378a4956SRuslan Bukin# device dtrace_profile 102378a4956SRuslan Bukin# device dtrace_sdt 103378a4956SRuslan Bukin# device dtrace_fbt 104378a4956SRuslan Bukin# device dtrace_systrace 105378a4956SRuslan Bukin# device dtrace_prototype 106378a4956SRuslan Bukin# device dtraceall 107378a4956SRuslan Bukin 108a0823230SRuslan Bukin# Serial (COM) ports 109a0823230SRuslan Bukindevice uart # Generic UART driver 110053ec050SRuslan Bukindevice uart_lowrisc # lowRISC UART driver 111a0823230SRuslan Bukindevice uart_ns8250 # ns8250-type UART driver 112a0823230SRuslan Bukin 113d63a631eSJessica Clarke# RTC 114d63a631eSJessica Clarkedevice goldfish_rtc # QEMU RTC 115fcc3a0f6SRuslan Bukin 116fcc3a0f6SRuslan Bukin# Ethernet drivers 117facdd1cdSThomas Skibodevice cgem # Cadence GEM Gigabit Ethernet device 118fcc3a0f6SRuslan Bukindevice miibus # MII bus support 119fcc3a0f6SRuslan Bukindevice xae # Xilinx AXI Ethernet MAC 120fcc3a0f6SRuslan Bukin 121fcc3a0f6SRuslan Bukin# DMA support 122fcc3a0f6SRuslan Bukindevice xdma # DMA interface 123fcc3a0f6SRuslan Bukindevice axidma # Xilinx AXI DMA Controller 124fcc3a0f6SRuslan Bukin 125*8c439847SJessica Clarke# SPI 126*8c439847SJessica Clarkedevice spibus 127*8c439847SJessica Clarkedevice spigen 128*8c439847SJessica Clarke 12917696c12SRuslan Bukin# Uncomment for memory disk 13017696c12SRuslan Bukin# options MD_ROOT 1315f8228b2SRuslan Bukin# options MD_ROOT_SIZE=32768 # 32MB ram disk 13217696c12SRuslan Bukin# makeoptions MFS_IMAGE=/path/to/img 13317696c12SRuslan Bukin# options ROOTDEVNAME=\"ufs:/dev/md0\" 13428029b68SRuslan Bukin 1356fdc5735SRuslan Bukin# Uncomment for virtio block device 1366fdc5735SRuslan Bukin# options ROOTDEVNAME=\"ufs:/dev/vtbd0\" 1376fdc5735SRuslan Bukin 13828029b68SRuslan Bukin# Debugging support. Always need this: 139d52d6d7cSRuslan Bukinoptions KDB # Enable kernel debugger support. 140d52d6d7cSRuslan Bukinoptions KDB_TRACE # Print a stack trace for a panic. 14128029b68SRuslan Bukin# For full debugger support use (turn off in stable branch): 142d52d6d7cSRuslan Bukinoptions DDB # Support DDB. 14328029b68SRuslan Bukin# options GDB # Support remote GDB. 14428029b68SRuslan Bukinoptions DEADLKRES # Enable the deadlock resolver 14528029b68SRuslan Bukinoptions INVARIANTS # Enable calls of extra sanity checking 14628029b68SRuslan Bukinoptions INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS 147fb50c414SMark Johnstonoptions WITNESS # Enable checks to detect deadlocks and cycles 14839585a4cSJohn Baldwinoptions WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed 14928029b68SRuslan Bukinoptions MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones 15028029b68SRuslan Bukin# options EARLY_PRINTF 151be352d20SKyle Evansoptions VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default 15228029b68SRuslan Bukin 15396744f02SSean Bruno# Kernel dump features. 15496744f02SSean Brunooptions ZSTDIO # zstd-compressed kernel and user dumps 15596744f02SSean Bruno 15628029b68SRuslan Bukin# Pseudo devices. 1578cd385fdSJohn Baldwindevice crypto # core crypto support 15828029b68SRuslan Bukindevice loop # Network loopback 15928029b68SRuslan Bukindevice ether # Ethernet support 16028029b68SRuslan Bukindevice vlan # 802.1Q VLAN support 161251a32b5SKyle Evansdevice tuntap # Packet tunnel. 16228029b68SRuslan Bukindevice md # Memory "disks" 16328029b68SRuslan Bukindevice gif # IPv6 and IPv4 tunneling 16428029b68SRuslan Bukindevice firmware # firmware assist module 16528029b68SRuslan Bukin 16622d5f354SRuslan Bukin# The `bpf' device enables the Berkeley Packet Filter. 16722d5f354SRuslan Bukin# Be aware of the administrative consequences of enabling this! 16822d5f354SRuslan Bukin# Note that 'bpf' is required for DHCP. 16922d5f354SRuslan Bukindevice bpf # Berkeley packet filter 17022d5f354SRuslan Bukin 1713994f5bcSMitchell Horne# Flattened Device Tree 17228029b68SRuslan Bukinoptions FDT 1733994f5bcSMitchell Hornemakeoptions MODULES_EXTRA+="dtb/sifive" 1743994f5bcSMitchell Horne 1753994f5bcSMitchell Horne# SiFive device drivers 1763994f5bcSMitchell Hornedevice fu540spi 1773994f5bcSMitchell Horneinclude "../sifive/std.sifive" 178