4e85b64890
Use it wherever COMPAT_FREEBSD11 is currently specified. Reviewed by: jhb (previous version) Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D33005
217 lines
7.0 KiB
Plaintext
217 lines
7.0 KiB
Plaintext
#
|
|
# GENERIC -- Generic kernel configuration file for FreeBSD/RISC-V
|
|
#
|
|
# For more information on this file, please read the config(5) manual page,
|
|
# and/or the handbook section on Kernel Configuration Files:
|
|
#
|
|
# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config
|
|
#
|
|
# The handbook is also available locally in /usr/share/doc/handbook
|
|
# if you've installed the doc distribution, otherwise always see the
|
|
# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the
|
|
# latest information.
|
|
#
|
|
# An exhaustive list of options and more detailed explanations of the
|
|
# device lines is also present in the ../../conf/NOTES and NOTES files.
|
|
# If you are in doubt as to the purpose or necessity of a line, check first
|
|
# in NOTES.
|
|
#
|
|
# $FreeBSD$
|
|
|
|
cpu RISCV
|
|
ident GENERIC
|
|
|
|
makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
|
|
makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support
|
|
|
|
options SCHED_ULE # ULE scheduler
|
|
options PREEMPTION # Enable kernel thread preemption
|
|
options VIMAGE # Subsystem virtualization, e.g. VNET
|
|
options INET # InterNETworking
|
|
options INET6 # IPv6 communications protocols
|
|
options TCP_HHOOK # hhook(9) framework for TCP
|
|
options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5
|
|
options ROUTE_MPATH # Multipath routing support
|
|
options TCP_OFFLOAD # TCP offload
|
|
options SCTP_SUPPORT # Allow kldload of SCTP
|
|
options FFS # Berkeley Fast Filesystem
|
|
options SOFTUPDATES # Enable FFS soft updates support
|
|
options UFS_ACL # Support for access control lists
|
|
options UFS_DIRHASH # Improve performance on big directories
|
|
options UFS_GJOURNAL # Enable gjournal-based UFS journaling
|
|
options QUOTA # Enable disk quotas for UFS
|
|
options NFSCL # Network Filesystem Client
|
|
options NFSD # Network Filesystem Server
|
|
options NFSLOCKD # Network Lock Manager
|
|
options NFS_ROOT # NFS usable as /, requires NFSCL
|
|
options MSDOSFS # MSDOS Filesystem
|
|
options CD9660 # ISO 9660 Filesystem
|
|
options PROCFS # Process filesystem (requires PSEUDOFS)
|
|
options PSEUDOFS # Pseudo-filesystem framework
|
|
options TMPFS # Efficient memory filesystem
|
|
options GEOM_PART_GPT # GUID Partition Tables.
|
|
options GEOM_RAID # Soft RAID functionality.
|
|
options GEOM_LABEL # Provides labelization
|
|
options COMPAT_FREEBSD12 # Compatible with FreeBSD12
|
|
options COMPAT_FREEBSD13 # Compatible with FreeBSD13
|
|
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
|
|
options KTRACE # ktrace(1) support
|
|
options STACK # stack(9) support
|
|
options SYSVSHM # SYSV-style shared memory
|
|
options SYSVMSG # SYSV-style message queues
|
|
options SYSVSEM # SYSV-style semaphores
|
|
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
|
|
options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
|
|
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
|
|
# options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
|
|
options AUDIT # Security event auditing
|
|
options CAPABILITY_MODE # Capsicum capability mode
|
|
options CAPABILITIES # Capsicum capabilities
|
|
options MAC # TrustedBSD MAC Framework
|
|
options KDTRACE_FRAME # Ensure frames are compiled in
|
|
options KDTRACE_HOOKS # Kernel DTrace hooks
|
|
options DDB_CTF # Kernel ELF linker loads CTF data
|
|
options FPE # Floating-point extension support
|
|
options RACCT # Resource accounting framework
|
|
options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default
|
|
options RCTL # Resource limits
|
|
options SMP
|
|
options INTRNG
|
|
|
|
# RISC-V SBI console
|
|
device rcons
|
|
|
|
# EXT_RESOURCES pseudo devices
|
|
options EXT_RESOURCES
|
|
device clk
|
|
device hwreset
|
|
device syscon
|
|
device syscon_power
|
|
device riscv_syscon
|
|
|
|
# Bus drivers
|
|
device pci
|
|
|
|
# Block devices
|
|
device scbus
|
|
device da
|
|
|
|
# VirtIO support
|
|
device virtio # Generic VirtIO bus (required)
|
|
device virtio_pci # VirtIO PCI device
|
|
device vtnet # VirtIO Ethernet device
|
|
device virtio_blk # VirtIO Block device
|
|
device virtio_mmio # VirtIO MMIO bus
|
|
|
|
# NVM Express (NVMe) support
|
|
device nvme # base NVMe driver
|
|
options NVME_USE_NVD=0 # prefer the cam(4) based nda(4) driver
|
|
device nvd # expose NVMe namespaces as disks, depends on nvme
|
|
|
|
# USB support
|
|
options USB_DEBUG # enable debug msgs
|
|
device ohci # OHCI USB interface
|
|
device uhci # UHCI USB interface
|
|
device ehci # EHCI USB interface (USB 2.0)
|
|
device xhci # XHCI USB interface (USB 3.0)
|
|
device usb # USB Bus (required)
|
|
device ukbd # Keyboard
|
|
device umass # Disks/Mass storage - Requires scbus and da
|
|
|
|
# HID support
|
|
options HID_DEBUG # enable debug msgs
|
|
device hid # Generic HID support
|
|
|
|
# DTrace support
|
|
# device dtrace
|
|
# device dtrace_profile
|
|
# device dtrace_sdt
|
|
# device dtrace_fbt
|
|
# device dtrace_systrace
|
|
# device dtrace_prototype
|
|
# device dtraceall
|
|
|
|
# Serial (COM) ports
|
|
device uart # Generic UART driver
|
|
device uart_lowrisc # lowRISC UART driver
|
|
device uart_ns8250 # ns8250-type UART driver
|
|
|
|
# Console
|
|
device vt
|
|
device kbdmux
|
|
|
|
# RTC
|
|
device goldfish_rtc # QEMU RTC
|
|
|
|
# Ethernet drivers
|
|
device cgem # Cadence GEM Gigabit Ethernet device
|
|
device miibus # MII bus support
|
|
device xae # Xilinx AXI Ethernet MAC
|
|
|
|
# DMA support
|
|
device xdma # DMA interface
|
|
device axidma # Xilinx AXI DMA Controller
|
|
|
|
# GPIO
|
|
device gpio
|
|
|
|
# SPI
|
|
device spibus
|
|
device spigen
|
|
|
|
# Uncomment for memory disk
|
|
# options MD_ROOT
|
|
# options MD_ROOT_SIZE=32768 # 32MB ram disk
|
|
# makeoptions MFS_IMAGE=/path/to/img
|
|
# options ROOTDEVNAME=\"ufs:/dev/md0\"
|
|
|
|
# Uncomment for virtio block device
|
|
# options ROOTDEVNAME=\"ufs:/dev/vtbd0\"
|
|
|
|
# Debugging support. Always need this:
|
|
options KDB # Enable kernel debugger support.
|
|
options KDB_TRACE # Print a stack trace for a panic.
|
|
# For full debugger support use (turn off in stable branch):
|
|
options DDB # Support DDB.
|
|
# options GDB # Support remote GDB.
|
|
options DEADLKRES # Enable the deadlock resolver
|
|
options INVARIANTS # Enable calls of extra sanity checking
|
|
options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS
|
|
options WITNESS # Enable checks to detect deadlocks and cycles
|
|
options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed
|
|
options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones
|
|
# options EARLY_PRINTF
|
|
options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default
|
|
|
|
# Kernel dump features.
|
|
options ZSTDIO # zstd-compressed kernel and user dumps
|
|
|
|
# Pseudo devices.
|
|
device crypto # core crypto support
|
|
device loop # Network loopback
|
|
device ether # Ethernet support
|
|
device vlan # 802.1Q VLAN support
|
|
device tuntap # Packet tunnel.
|
|
device md # Memory "disks"
|
|
device gif # IPv6 and IPv4 tunneling
|
|
device firmware # firmware assist module
|
|
|
|
# The `bpf' device enables the Berkeley Packet Filter.
|
|
# Be aware of the administrative consequences of enabling this!
|
|
# Note that 'bpf' is required for DHCP.
|
|
device bpf # Berkeley packet filter
|
|
|
|
# Flattened Device Tree
|
|
options FDT
|
|
makeoptions MODULES_EXTRA+="dtb/sifive"
|
|
|
|
# I2C support
|
|
device iicbus # Bus support, required for iicoc below.
|
|
device iicoc # OpenCores I2C controller support
|
|
|
|
# SiFive device drivers
|
|
device fu740_pci_dw
|
|
device sifive_gpio
|
|
device sifive_spi
|
|
include "../sifive/std.sifive"
|