GENERIC revision 1.18
11.18Ssimonb# $NetBSD: GENERIC,v 1.18 2022/11/12 11:14:44 simonb Exp $ 21.1Smatt# 31.1Smatt# GENERIC machine description file 41.1Smatt# 51.1Smatt# This machine description file is used to generate the default NetBSD 61.1Smatt# kernel. The generic kernel does not include all options, subsystems 71.1Smatt# and device drivers, but should be useful for most applications. 81.1Smatt# 91.1Smatt# The machine description file can be customised for your specific 101.1Smatt# machine to reduce the kernel size and improve its performance. 111.1Smatt# 121.1Smatt# For further information on compiling NetBSD kernels, see the config(8) 131.1Smatt# man page. 141.1Smatt# 151.1Smatt# For further information on hardware support for this architecture, see 161.1Smatt# the intro(4) man page. For further information about kernel options 171.1Smatt# for this architecture, see the options(4) man page. For an explanation 181.1Smatt# of each device driver in this file see the section 4 man page for the 191.1Smatt# device. 201.1Smatt 211.1Smattinclude "arch/riscv/conf/std.riscv64" 221.1Smatt 231.1Smattoptions INCLUDE_CONFIG_FILE # embed config file in kernel binary 241.1Smatt 251.18Ssimonb#ident "GENERIC-$Revision: 1.18 $" 261.1Smatt 271.1Smattmaxusers 64 # estimated number of users 281.1Smatt 291.14Sskrlloptions FDT 301.14Sskrll 311.14Sskrll#options EARLYCONS=com, CONSADDR=0x10000000 321.14Sskrll#options EARLYCONS=com, CONSADDR=0x12440000 331.14Sskrlloptions VERBOSE_INIT_RISCV 341.14Sskrll 351.1Smatt# Standard system options 361.11Sskrll#options FPE # Floating-point extension support 371.1Smattoptions NTP # NTP phase/frequency locked loop 381.1Smatt 391.1Smattoptions KTRACE # system call tracing via ktrace(1) 401.1Smatt 411.1Smatt# Note: SysV IPC parameters could be changed dynamically, see sysctl(8). 421.1Smattoptions SYSVMSG # System V-like message queues 431.1Smattoptions SYSVSEM # System V-like semaphores 441.1Smattoptions SYSVSHM # System V-like memory sharing 451.1Smatt 461.1Smattoptions MODULAR # new style module(7) framework 471.1Smattoptions MODULAR_DEFAULT_AUTOLOAD 481.1Smattoptions USERCONF # userconf(4) support 491.1Smatt#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 501.1Smattoptions SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 511.1Smatt 521.1Smatt# Alternate buffer queue strategies for better responsiveness under high 531.1Smatt# disk I/O load. 541.1Smatt#options BUFQ_READPRIO 551.1Smattoptions BUFQ_PRIOCSCAN 561.1Smatt 571.1Smatt# Diagnostic/debugging support options 581.1Smattoptions DIAGNOSTIC # inexpensive kernel consistency checks 591.1Smatt # XXX to be commented out on release branch 601.14Sskrll#options DEBUG # expensive debugging checks/support 611.14Sskrll#options LOCKDEBUG # expensive locking checks/support 621.14Sskrll#options KERNHIST 631.14Sskrll#options KERNHIST_PRINT 641.14Sskrll#options UVMHIST 651.14Sskrll#options UVMHIST_PRINT 661.14Sskrll#options PMAPHIST 671.14Sskrll#options PMAPHIST_PRINT 681.14Sskrll#options SYSCTL_DEBUG 691.14Sskrll#options SYSCTL_DEBUG_SETUP 701.14Sskrll#options SYSCTL_DEBUG_CREATE 711.14Sskrll 721.1Smatt 731.1Smatt# 741.1Smatt# Because gcc omits the frame pointer for any -O level, the line below 751.1Smatt# is needed to make backtraces in DDB work. 761.1Smatt# 771.15Sskrllmakeoptions COPTS="-O2 -fno-omit-frame-pointer" 781.1Smattmakeoptions COPY_SYMTAB=1 791.1Smattoptions DDB # in-kernel debugger 801.17Ssimonb#options DDB_COMMANDONENTER="bt" # execute command when ddb is entered 811.14Sskrlloptions DDB_ONPANIC=1 # see also sysctl(7): `ddb.onpanic' 821.1Smattoptions DDB_HISTORY_SIZE=512 # enable history editing in DDB 831.1Smatt#options KGDB # remote debugger 841.1Smatt#options KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600 851.1Smatt#options SYSCALL_STATS # per syscall counts 861.1Smatt#options SYSCALL_TIMES # per syscall times 871.1Smatt#options SYSCALL_TIMES_HASCOUNTER # use 'broken' rdtsc (soekris) 881.1Smatt 891.1Smatt# Compatibility options 901.7Smrginclude "conf/compat_netbsd70.config" 911.1Smatt 921.10Smaxv#options COMPAT_NETBSD32 931.1Smatt#options EXEC_ELF32 941.1Smatt 951.1Smatt# Wedge support 961.1Smattoptions DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances 971.1Smattoptions DKWEDGE_METHOD_GPT # Supports GPT partitions as wedges 981.1Smattoptions DKWEDGE_METHOD_BSDLABEL # Support disklabel entries as wedges 991.1Smattoptions DKWEDGE_METHOD_MBR # Support MBR partitions as wedges 1001.17Ssimonboptions DKWEDGE_METHOD_APPLE # Support Apple partitions as wedges 1011.17Ssimonb#options DKWEDGE_METHOD_RDB # Support RDB partitions as wedges 1021.1Smatt 1031.7Smrginclude "conf/filesystems.config" 1041.1Smatt 1051.1Smatt# File system options 1061.13Ssimonboptions FFS_EI # FFS Endian Independent support 1071.13Ssimonb#options FFS_NO_SNAPSHOT # No FFS snapshot support 1081.1Smattoptions QUOTA # legacy UFS quotas 1091.1Smattoptions QUOTA2 # new, in-filesystem UFS quotas 1101.13Ssimonb#options UFS_DIRHASH # UFS Large Directory Hashing 1111.1Smattoptions WAPBL # File system journaling support 1121.1Smatt#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and 1131.1Smatt # immutable) behave as system flags. 1141.13Ssimonb#options DISKLABEL_EI # disklabel Endian Independent support 1151.13Ssimonboptions NFSSERVER # Network File System server 1161.18Ssimonboptions NFS_BOOT_DHCP # Support DHCP NFS root 1171.1Smatt 1181.1Smatt# Networking options 1191.1Smatt#options GATEWAY # packet forwarding 1201.1Smattoptions INET # IP + ICMP + TCP + UDP 1211.1Smattoptions INET6 # IPV6 1221.1Smattoptions IPSEC # IP security 1231.1Smatt#options IPSEC_DEBUG # debug for IP security 1241.3Schristos#options MPLS # MultiProtocol Label Switching (needs mpls) 1251.1Smatt#options MROUTING # IP multicast routing 1261.1Smatt#options PIM # Protocol Independent Multicast 1271.1Smatt#options NETATALK # AppleTalk networking protocols 1281.1Smatt#options PPP_BSDCOMP # BSD-Compress compression support for PPP 1291.1Smatt#options PPP_DEFLATE # Deflate compression support for PPP 1301.1Smatt#options PPP_FILTER # Active filter support for PPP (requires bpf) 1311.1Smatt#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 1321.1Smatt 1331.1Smatt#options ALTQ # Manipulate network interfaces' output queues 1341.1Smatt#options ALTQ_BLUE # Stochastic Fair Blue 1351.1Smatt#options ALTQ_CBQ # Class-Based Queueing 1361.1Smatt#options ALTQ_CDNR # Diffserv Traffic Conditioner 1371.1Smatt#options ALTQ_FIFOQ # First-In First-Out Queue 1381.1Smatt#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 1391.1Smatt#options ALTQ_HFSC # Hierarchical Fair Service Curve 1401.1Smatt#options ALTQ_LOCALQ # Local queueing discipline 1411.1Smatt#options ALTQ_PRIQ # Priority Queueing 1421.1Smatt#options ALTQ_RED # Random Early Detection 1431.1Smatt#options ALTQ_RIO # RED with IN/OUT 1441.1Smatt#options ALTQ_WFQ # Weighted Fair Queueing 1451.1Smatt 1461.1Smatt# These options enable verbose messages for several subsystems. 1471.1Smatt# Warning, these may compile large string tables into the kernel! 1481.1Smatt 1491.1Smatt# Kernel root file system and dump configuration. 1501.1Smattconfig netbsd root on ? type ? 1511.1Smatt 1521.1Smatt# 1531.1Smatt# Device configuration 1541.1Smatt# 1551.14Sskrllmainbus0 at root 1561.14Sskrllsimplebus* at fdt? pass 0 1571.1Smatt 1581.14Sskrll# UART 1591.14Sskrllcom* at fdt? # UART 1601.1Smatt 1611.1Smatt# Pseudo-Devices 1621.1Smatt 1631.1Smattpseudo-device crypto # /dev/crypto device 1641.1Smattpseudo-device swcrypto # software crypto implementation 1651.1Smatt 1661.1Smatt# disk/mass storage pseudo-devices 1671.1Smatt#pseudo-device md # memory disk device (ramdisk) 1681.1Smatt#options MEMORY_DISK_HOOKS # enable root ramdisk 1691.1Smatt#options MEMORY_DISK_DYNAMIC # loaded via kernel module(7) 1701.1Smatt 1711.1Smattpseudo-device vnd # disk-like interface to files 1721.1Smattoptions VND_COMPRESSION # compressed vnd(4) 1731.1Smatt 1741.1Smattpseudo-device loop # network loopback 1751.1Smattpseudo-device pty # pseudo-terminals 1761.1Smattpseudo-device clockctl # user control of clock subsystem 1771.1Smattpseudo-device ksyms # /dev/ksyms 1781.1Smattpseudo-device lockstat # lock profiling 1791.16Sriastradpseudo-device swwdog # software watchdog timer -- swwdog(4) 1801.1Smatt 1811.1Smatt# userland interface to drivers, including autoconf and properties retrieval 1821.1Smattpseudo-device drvctl 1831.1Smatt 1841.1Smattoptions PAX_MPROTECT=0 # PaX mprotect(2) restrictions 1851.1Smattoptions PAX_ASLR=0 # PaX Address Space Layout Randomization 186