1 1.1 skrll # 2 1.22 nia # $NetBSD: GENERIC.common,v 1.22 2025/04/01 20:16:57 nia Exp $ 3 1.1 skrll # 4 1.1 skrll # GENERIC common RISC-V kernel config items shared between 32 and 64 5 1.1 skrll # kernels 6 1.1 skrll # 7 1.1 skrll 8 1.1 skrll maxusers 64 # estimated number of users 9 1.1 skrll 10 1.1 skrll options FDT 11 1.7 skrll options MULTIPROCESSOR 12 1.1 skrll 13 1.1 skrll # Standard system options 14 1.1 skrll options FPE # Floating-point extension support 15 1.1 skrll options NTP # NTP phase/frequency locked loop 16 1.1 skrll 17 1.1 skrll options KTRACE # system call tracing via ktrace(1) 18 1.1 skrll 19 1.5 skrll # Heartbeat checks 20 1.14 skrll options HEARTBEAT 21 1.14 skrll options HEARTBEAT_MAX_PERIOD_DEFAULT=15 22 1.5 skrll 23 1.1 skrll # Note: SysV IPC parameters could be changed dynamically, see sysctl(8). 24 1.1 skrll options SYSVMSG # System V-like message queues 25 1.1 skrll options SYSVSEM # System V-like semaphores 26 1.1 skrll options SYSVSHM # System V-like memory sharing 27 1.1 skrll 28 1.1 skrll options MODULAR # new style module(7) framework 29 1.1 skrll options MODULAR_DEFAULT_AUTOLOAD 30 1.1 skrll options USERCONF # userconf(4) support 31 1.1 skrll #options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 32 1.1 skrll options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 33 1.1 skrll 34 1.1 skrll # Alternate buffer queue strategies for better responsiveness under high 35 1.1 skrll # disk I/O load. 36 1.1 skrll #options BUFQ_READPRIO 37 1.1 skrll options BUFQ_PRIOCSCAN 38 1.1 skrll 39 1.1 skrll # These options enable verbose messages for several subsystems. 40 1.1 skrll # Warning, these may compile large string tables into the kernel! 41 1.1 skrll #options USBVERBOSE # verbose USB device autoconfig messages 42 1.1 skrll 43 1.1 skrll # 44 1.1 skrll # Because gcc omits the frame pointer for any -O level, the line below 45 1.1 skrll # is needed to make backtraces in DDB work. 46 1.1 skrll # 47 1.1 skrll makeoptions COPTS="-O2 -fno-omit-frame-pointer" 48 1.1 skrll makeoptions COPY_SYMTAB=1 49 1.1 skrll options DDB # in-kernel debugger 50 1.1 skrll #options DDB_COMMANDONENTER="bt" # execute command when ddb is entered 51 1.1 skrll options DDB_ONPANIC=1 # see also sysctl(7): `ddb.onpanic' 52 1.1 skrll options DDB_HISTORY_SIZE=512 # enable history editing in DDB 53 1.1 skrll #options KGDB # remote debugger 54 1.1 skrll #options KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600 55 1.1 skrll #options SYSCALL_STATS # per syscall counts 56 1.1 skrll #options SYSCALL_TIMES # per syscall times 57 1.1 skrll #options SYSCALL_TIMES_HASCOUNTER # use 'broken' rdtsc (soekris) 58 1.1 skrll 59 1.1 skrll # Compatibility options 60 1.6 rjs include "conf/compat_netbsd100.config" 61 1.1 skrll 62 1.1 skrll # Wedge support 63 1.1 skrll options DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances 64 1.1 skrll options DKWEDGE_METHOD_GPT # Supports GPT partitions as wedges 65 1.1 skrll options DKWEDGE_METHOD_BSDLABEL # Support disklabel entries as wedges 66 1.1 skrll options DKWEDGE_METHOD_MBR # Support MBR partitions as wedges 67 1.1 skrll options DKWEDGE_METHOD_APPLE # Support Apple partitions as wedges 68 1.1 skrll #options DKWEDGE_METHOD_RDB # Support RDB partitions as wedges 69 1.12 charlott #options DKWEDGE_METHOD_TOS # Support Atari "TOS" partitions as wedges 70 1.1 skrll 71 1.1 skrll include "conf/filesystems.config" 72 1.1 skrll 73 1.1 skrll # File system options 74 1.1 skrll options FFS_EI # FFS Endian Independent support 75 1.1 skrll #options FFS_NO_SNAPSHOT # No FFS snapshot support 76 1.1 skrll options QUOTA # legacy UFS quotas 77 1.1 skrll options QUOTA2 # new, in-filesystem UFS quotas 78 1.1 skrll #options UFS_DIRHASH # UFS Large Directory Hashing 79 1.1 skrll options WAPBL # File system journaling support 80 1.1 skrll #options DISKLABEL_EI # disklabel Endian Independent support 81 1.1 skrll options NFSSERVER # Network File System server 82 1.1 skrll options NFS_BOOT_DHCP # Support DHCP NFS root 83 1.1 skrll 84 1.1 skrll # Networking options 85 1.1 skrll #options GATEWAY # packet forwarding 86 1.1 skrll options INET # IP + ICMP + TCP + UDP 87 1.1 skrll options INET6 # IPV6 88 1.1 skrll options IPSEC # IP security 89 1.1 skrll #options IPSEC_DEBUG # debug for IP security 90 1.1 skrll #options MPLS # MultiProtocol Label Switching (needs mpls) 91 1.1 skrll #options MROUTING # IP multicast routing 92 1.1 skrll #options PIM # Protocol Independent Multicast 93 1.1 skrll #options NETATALK # AppleTalk networking protocols 94 1.1 skrll #options PPP_BSDCOMP # BSD-Compress compression support for PPP 95 1.1 skrll #options PPP_DEFLATE # Deflate compression support for PPP 96 1.1 skrll #options PPP_FILTER # Active filter support for PPP (requires bpf) 97 1.1 skrll #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 98 1.1 skrll 99 1.1 skrll #options ALTQ # Manipulate network interfaces' output queues 100 1.1 skrll #options ALTQ_BLUE # Stochastic Fair Blue 101 1.1 skrll #options ALTQ_CBQ # Class-Based Queueing 102 1.1 skrll #options ALTQ_CDNR # Diffserv Traffic Conditioner 103 1.1 skrll #options ALTQ_FIFOQ # First-In First-Out Queue 104 1.1 skrll #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 105 1.1 skrll #options ALTQ_HFSC # Hierarchical Fair Service Curve 106 1.1 skrll #options ALTQ_LOCALQ # Local queueing discipline 107 1.1 skrll #options ALTQ_PRIQ # Priority Queueing 108 1.1 skrll #options ALTQ_RED # Random Early Detection 109 1.1 skrll #options ALTQ_RIO # RED with IN/OUT 110 1.1 skrll #options ALTQ_WFQ # Weighted Fair Queueing 111 1.1 skrll 112 1.1 skrll # These options enable verbose messages for several subsystems. 113 1.1 skrll # Warning, these may compile large string tables into the kernel! 114 1.1 skrll 115 1.1 skrll # Kernel root file system and dump configuration. 116 1.1 skrll config netbsd root on ? type ? 117 1.1 skrll 118 1.1 skrll # 119 1.1 skrll # Device configuration 120 1.1 skrll # 121 1.1 skrll 122 1.1 skrll mainbus0 at root 123 1.1 skrll simplebus* at fdt? pass 0 124 1.1 skrll 125 1.1 skrll # CPUs 126 1.1 skrll cpus* at fdt? pass 0 127 1.1 skrll cpu* at fdt? pass 0 128 1.1 skrll 129 1.1 skrll intc* at cpu? pass 1 130 1.1 skrll 131 1.8 skrll # Fixed Clocks 132 1.8 skrll fclock* at fdt? pass 1 133 1.8 skrll 134 1.9 skrll # System Controller 135 1.9 skrll syscon* at fdt? pass 1 # Generic System Controller 136 1.9 skrll 137 1.4 andvar # Core-level Interrupt Control block 138 1.1 skrll #clint0 at fdt? pass 2 139 1.1 skrll 140 1.3 andvar # Platform-Level Interrupt Controller 141 1.1 skrll plic* at fdt? pass 2 142 1.1 skrll 143 1.1 skrll # UART 144 1.1 skrll com* at fdt? # UART 145 1.1 skrll 146 1.1 skrll # Firmware devices 147 1.13 skrll qemufwcfg* at fdt? # QEMU Firmware Configuration device 148 1.1 skrll 149 1.2 skrll # RTC devices 150 1.2 skrll gfrtc* at fdt? # Google Goldfish RTC 151 1.2 skrll 152 1.16 skrll # PCIE 153 1.16 skrll pcihost* at fdt? # Generic PCI host controller 154 1.16 skrll pci* at pcibus? 155 1.16 skrll ppb* at pci? dev ? function ? 156 1.16 skrll pci* at ppb? 157 1.16 skrll 158 1.1 skrll # USB 159 1.1 skrll xhci* at fdt? # XHCI 160 1.16 skrll xhci* at pci? # XHCI 161 1.1 skrll usb* at usbus? 162 1.1 skrll include "dev/usb/usbdevices.config" 163 1.1 skrll midi* at midibus? 164 1.1 skrll pseudo-device sequencer # MIDI sequencer 165 1.1 skrll 166 1.16 skrll # NVMe 167 1.16 skrll nvme* at pci? dev ? function ? 168 1.16 skrll ld* at nvme? nsid ? 169 1.1 skrll 170 1.22 nia # Audio 171 1.22 nia audio* at audiobus? 172 1.22 nia auich* at pci? dev ? function ? # Intel AC'97 Audio (QEMU) 173 1.22 nia eap* at pci? dev ? function ? # Ensoniq AudioPCI (QEMU) 174 1.22 nia 175 1.17 skrll # I2C controllers 176 1.17 skrll dwiic* at fdt? # Designware I2C 177 1.17 skrll iic* at i2cbus? 178 1.17 skrll 179 1.18 skrll # I2C devices 180 1.19 skrll #axppmic* at iic? # X-Powers AXP Power Management IC 181 1.19 skrll #axpreg* at axppmic? 182 1.18 skrll 183 1.1 skrll # Virtio devices 184 1.1 skrll virtio* at fdt? # Virtio MMIO device 185 1.21 riastrad 186 1.21 riastrad include "dev/virtio/virtio.config" 187 1.21 riastrad no vio9p* at virtio? # XXX ? 188 1.21 riastrad no viomb* at virtio? # XXX ? 189 1.21 riastrad no vioscsi* at virtio? # XXX ? 190 1.1 skrll 191 1.1 skrll # Pseudo-Devices 192 1.1 skrll # network pseudo-devices 193 1.1 skrll pseudo-device bpfilter # Berkeley packet filter 194 1.1 skrll pseudo-device bridge # simple inter-network bridging 195 1.1 skrll pseudo-device carp # Common Address Redundancy Protocol 196 1.1 skrll pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC 1933) 197 1.1 skrll pseudo-device gre # generic L3 over IP tunnel 198 1.1 skrll pseudo-device ipsecif # interface for routing-based ipsec 199 1.1 skrll pseudo-device loop # network loopback 200 1.1 skrll pseudo-device npf # NPF packet filter 201 1.1 skrll pseudo-device ppp # Point-to-Point Protocol 202 1.1 skrll pseudo-device pppoe # PPP over Ethernet (RFC 2516) 203 1.1 skrll pseudo-device swcrypto # software crypto implementation 204 1.1 skrll pseudo-device tun # network tunneling over tty 205 1.1 skrll pseudo-device tap # virtual Ethernet 206 1.1 skrll pseudo-device vether # Virtual Ethernet for bridge 207 1.1 skrll pseudo-device vlan # IEEE 802.1q encapsulation 208 1.1 skrll 209 1.1 skrll # miscellaneous pseudo-devices 210 1.1 skrll pseudo-device clockctl # user control of clock subsystem 211 1.1 skrll pseudo-device crypto # /dev/crypto device 212 1.1 skrll pseudo-device lockstat # lock profiling 213 1.1 skrll pseudo-device ksyms # /dev/ksyms 214 1.20 skrll pseudo-device openfirm # /dev/openfirm 215 1.22 nia pseudo-device pad # pseudo audio device 216 1.1 skrll pseudo-device pty # pseudo-terminals 217 1.1 skrll #options RND_COM 218 1.1 skrll pseudo-device swwdog # software watchdog timer -- swwdog(4) 219 1.1 skrll 220 1.1 skrll 221 1.1 skrll # disk/mass storage pseudo-devices 222 1.1 skrll #pseudo-device md # memory disk device (ramdisk) 223 1.1 skrll #options MEMORY_DISK_HOOKS # enable root ramdisk 224 1.1 skrll #options MEMORY_DISK_DYNAMIC # loaded via kernel module(7) 225 1.1 skrll 226 1.1 skrll pseudo-device vnd # disk-like interface to files 227 1.1 skrll options VND_COMPRESSION # compressed vnd(4) 228 1.1 skrll 229 1.1 skrll # userland interface to drivers, including autoconf and properties retrieval 230 1.1 skrll pseudo-device drvctl 231 1.1 skrll 232 1.1 skrll options PAX_MPROTECT=0 # PaX mprotect(2) restrictions 233 1.1 skrll options PAX_ASLR=0 # PaX Address Space Layout Randomization 234 1.1 skrll 235 1.1 skrll # Pull in optional local configuration - always at end 236 1.1 skrll cinclude "arch/riscv/conf/GENERIC.local" 237