1# $NetBSD: GENERIC,v 1.174 2024/01/29 18:27:11 christos Exp $ 2# 3# GENERIC machine description file 4# 5# This machine description file is used to generate the default NetBSD 6# kernel. The generic kernel does not include all options, subsystems 7# and device drivers, but should be useful for most applications. 8# 9# The machine description file can be customised for your specific 10# machine to reduce the kernel size and improve its performance. 11# 12# For further information on compiling NetBSD kernels, see the config(8) 13# man page. 14# 15# For further information on hardware support for this architecture, see 16# the intro(4) man page. For further information about kernel options 17# for this architecture, see the options(4) man page. For an explanation 18# of each device driver in this file see the section 4 man page for the 19# device. 20 21include "arch/cobalt/conf/std.cobalt" 22 23options INCLUDE_CONFIG_FILE # embed config file in kernel binary 24 25#ident "GENERIC-$Revision: 1.174 $" 26 27maxusers 32 28 29# Standard system options 30options KTRACE # system call tracing support 31options SYSVMSG # System V message queues 32options SYSVSEM # System V semaphores 33options SYSVSHM # System V shared memory 34options NTP # network time protocol 35options USERCONF # userconf(4) support 36#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 37options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 38 39# Alternate buffer queue strategies for better responsiveness under high 40# disk I/O load. 41#options BUFQ_READPRIO 42options BUFQ_PRIOCSCAN 43 44# Debugging options 45options DIAGNOSTIC # extra kernel sanity checking 46#options DEBUG # extra kernel debugging support 47options DDB # kernel dynamic debugger 48#options DDB_HISTORY_SIZE=100 # enable history editing in DDB 49makeoptions DEBUG="-g" # compile full symbol table 50makeoptions CPUFLAGS="-march=vr5000" 51 52# Compatibility options 53include "conf/compat_netbsd16.config" 54#options EXEC_ECOFF # exec ECOFF binaries 55#options COMPAT_ULTRIX # binary compatibility with Ultrix 56 57# File systems 58file-system FFS # Berkeley Fast Filesystem 59file-system EXT2FS # second extended file system (linux) 60file-system NFS # Sun NFS-compatible filesystem client 61file-system KERNFS # kernel data-structure filesystem 62file-system NULLFS # NULL layered filesystem 63#file-system OVERLAY # overlay file system 64file-system MFS # memory-based filesystem 65file-system FDESC # user file descriptor filesystem 66#file-system UMAPFS # uid/gid remapping filesystem 67file-system LFS # Log-based filesystem (still experimental) 68file-system PROCFS # /proc 69file-system CD9660 # ISO 9660 + Rock Ridge file system 70file-system UNION # union file system 71file-system MSDOSFS # MS-DOS FAT filesystem(s). 72#file-system CODA # Coda File System; also needs vcoda (below) 73file-system PTYFS # /dev/pts/N support 74file-system TMPFS # Efficient memory file-system 75#file-system UDF # experimental - OSTA UDF CD/DVD file-system 76 77# File system options 78#options FFS_EI # FFS Endian Independent support 79#options FFS_NO_SNAPSHOT # No FFS snapshot support 80options QUOTA # legacy UFS quotas 81options QUOTA2 # new, in-filesystem UFS quotas 82options UFS_DIRHASH # UFS Large Directory Hashing 83options UFS_EXTATTR # Extended attribute support for UFS1 84options WAPBL # File system journaling support 85options LFS_DIRHASH # LFS version of UFS_DIRHASH - experimental 86options NFSSERVER # Network File System server 87 88# Networking options 89#options GATEWAY # IP packet forwarding 90options INET # Internet protocols 91options INET6 # IPV6 92#options IPSEC # IP security 93#options IPSEC_DEBUG # debug for IP security 94#options MROUTING # packet forwarding of multicast packets 95#options PIM # Protocol Independent Multicast 96#options NETATALK # AppleTalk (over Ethernet) protocol 97#options PPP_BSDCOMP # BSD-Compress compression support for PPP 98#options PPP_DEFLATE # Deflate compression support for PPP 99#options PPP_FILTER # Active filter support for PPP (requires bpf) 100#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 101 102#options ALTQ # Manipulate network interfaces' output queues 103#options ALTQ_BLUE # Stochastic Fair Blue 104#options ALTQ_CBQ # Class-Based Queueing 105#options ALTQ_CDNR # Diffserv Traffic Conditioner 106#options ALTQ_FIFOQ # First-In First-Out Queue 107#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 108#options ALTQ_HFSC # Hierarchical Fair Service Curve 109#options ALTQ_LOCALQ # Local queueing discipline 110#options ALTQ_PRIQ # Priority Queueing 111#options ALTQ_RED # Random Early Detection 112#options ALTQ_RIO # RED with IN/OUT 113#options ALTQ_WFQ # Weighted Fair Queueing 114 115# JIT compiler for bpfilter 116#options SLJIT 117#options BPFJIT 118 119# These options enable verbose messages for several subsystems. 120# Warning, these may compile large string tables into the kernel! 121options PCIVERBOSE # verbose PCI device autoconfig messages 122#options PCI_CONFIG_DUMP # verbosely dump PCI config space 123options SCSIVERBOSE # human readable SCSI error messages 124options MIIVERBOSE # verbose PHY autoconfig messages 125 126options NFS_BOOT_DHCP 127 128config netbsd root on ? type ? 129 130mainbus0 at root 131 132cpu0 at mainbus? 133 134mcclock0 at mainbus? addr 0x10000070 135 136com0 at mainbus? addr 0x1c800000 level 3 137options COM_16650 138 139zsc0 at mainbus? addr 0x1c800000 irq 4 140zstty0 at zsc0 channel 0 141zstty1 at zsc0 channel 1 142 143lcdpanel0 at mainbus? addr 0x1f000000 144 145gt0 at mainbus? addr 0x14000000 146 147pci* at gt0 148pchb* at pci? dev ? function ? 149pcib* at pci? dev ? function ? 150 151options PCI_NETBSD_CONFIGURE 152 153# Cryptographic Devices 154 155# PCI cryptographic devices 156hifn* at pci? dev ? function ? # Hifn 7755/7811/795x 157ubsec* at pci? dev ? function ? # Broadcom 5501/5601/580x/582x 158 159# PCI serial/parallel interfaces 160puc* at pci? dev ? function ? # PCI "universal" comm. cards 161com* at puc? port ? 162#lpt* at puc? port ? 163#cy* at pci? dev ? function ? # Cyclades Cyclom-Y serial cards 164 165# PCI SCSI controllers 166#adv* at pci? dev ? function ? # AdvanSys 1200[A,B], 9xx[U,UA] 167#adw* at pci? dev ? function ? # AdvanSys 9xxUW SCSI 168ahc* at pci? dev ? function ? # Adaptec [23]94x, aic78x0 SCSI 169#bha* at pci? dev ? function ? # BusLogic 9xx SCSI 170#dpt* at pci? dev ? function ? # DPT SmartCache/SmartRAID 171#isp* at pci? dev ? function ? # Qlogic ISP [12]0x0 SCSI/FC 172siop* at pci? dev ? function ? # NCR 53c8xx SCSI 173esiop* at pci? dev ? function ? # NCR 53c82s75xx SCSI and newer 174#pcscp* at pci? dev ? function ? # AMD 53c974 PCscsi-PCI SCSI 175 176# SCSI bus support 177#scsibus* at adv? 178#scsibus* at adw? 179scsibus* at ahc? 180#scsibus* at bha? 181#scsibus* at dpt? 182#scsibus* at isp? 183scsibus* at siop? 184scsibus* at esiop? 185#scsibus* at pcscp? 186 187# SCSI devices 188sd* at scsibus? target ? lun ? # SCSI disk drives 189st* at scsibus? target ? lun ? # SCSI tape drives 190cd* at scsibus? target ? lun ? # SCSI CD-ROM drives 191#ch* at scsibus? target ? lun ? # SCSI autochangers 192#ss* at scsibus? target ? lun ? # SCSI scanners 193#uk* at scsibus? target ? lun ? # SCSI unknown 194 195# RAID controllers and devices 196#cac* at pci? dev ? function ? # Compaq array controller 197#ca* at cac? unit ? # Compaq array disk device 198 199# IDE and related devices 200# PCI IDE controllers - see pciide(4) for supported hardware. 201# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know 202# how to set up DMA modes for this chip. This may work, or may cause 203# a machine hang with some controllers. 204pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver 205acardide* at pci? dev ? function ? # Acard IDE controllers 206#aceride* at pci? dev ? function ? # Acer Lab IDE controllers 207#artsata* at pci? dev ? function ? # Intel i31244 SATA controller 208cmdide* at pci? dev ? function ? # CMD tech IDE controllers 209#cypide* at pci? dev ? function ? # Cypress IDE controllers 210hptide* at pci? dev ? function ? # Triones/HighPoint IDE controllers 211#optiide* at pci? dev ? function ? # Opti IDE controllers 212pdcide* at pci? dev ? function ? # Promise IDE controllers 213pdcsata* at pci? dev ? function ? # Promise SATA150 controllers 214satalink* at pci? dev ? function ? # SiI SATALink controllers 215#siside* at pci? dev ? function ? # SiS IDE controllers 216#slide* at pci? dev ? function ? # Symphony Labs IDE controllers 217viaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers 218 219# ATA bus 220atabus* at ata? 221 222# IDE drives 223# Flags are used only with controllers that support DMA operations 224# and mode settings (e.g. some pciide controllers) 225# The lowest order four bits (rightmost digit) of the flags define the PIO 226# mode to use, the next set of four bits the DMA mode and the third set the 227# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode 228# to use, and the last bit must be 1 for this setting to be used. 229# For DMA and UDMA, 0xf (1111) means 'disable'. 230# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'. 231# (0xc=1100, 0xa=1010, 0xf=1111) 232# 0x0000 means "use whatever the drive claims to support". 233wd* at atabus? drive ? flags 0x0000 234 235# PCI network interfaces 236#ep* at pci? dev ? function ? # 3Com 3c59x 237#ex* at pci? dev ? function ? # 3Com 90x[BC] 238#epic* at pci? dev ? function ? # SMC EPIC/100 Ethernet 239#fxp* at pci? dev ? function ? # Intel EtherExpress PRO10+/100B 240#pcn* at pci? dev ? function ? # PCnet-PCI Ethernet 241#ne* at pci? dev ? function ? # NE2000-compatible Ethernet 242#ntwoc* at pci? dev ? function ? # Riscom/N2 PCI Sync Serial 243ral* at pci? dev ? function ? # ralink wifi 244#sip* at pci? dev ? function ? # SiS 900 Ethernet 245#tl* at pci? dev ? function ? # ThunderLAN-based Ethernet 246tlp* at pci? dev ? function ? # DECchip 21x4x and clones 247#vr* at pci? dev ? function ? # VIA Rhine Fast Ethernet 248#rtk* at pci? dev ? function ? # Realtek 8129/8139 249 250# MII/PHY support 251#exphy* at mii? phy ? # 3Com internal PHYs 252#icsphy* at mii? phy ? # ICS189x PHYs 253#inphy* at mii? phy ? # Intel 82555 PHYs 254#iophy* at mii? phy ? # Intel 82553 PHYs 255lxtphy* at mii? phy ? # Level One LXT-970 PHYs 256#nsphy* at mii? phy ? # NS83840 PHYs 257#nsphyter* at mii? phy ? # NS83843 PHYs 258#qsphy* at mii? phy ? # Quality Semiconductor QS6612 259#sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs 260#tlphy* at mii? phy ? # ThunderLAN PHYs 261#tqphy* at mii? phy ? # TDK Semiconductor PHYs 262#ukphy* at mii? phy ? # generic unknown PHYs 263 264# PCI IEEE1394 controllers 265#fwohci* at pci? dev ? function ? # IEEE1394 Open Host Controller 266 267#ieee1394if* at fwohci? 268#fwip* at ieee1394if? # IP over IEEE1394 269#sbp* at ieee1394if? euihi ? euilo ? 270#scsibus* at sbp? 271 272# PCI audio devices 273#clcs* at pci? dev ? function ? # Cirrus Logic CS4280 274#eap* at pci? dev ? function ? # Ensoniq AudioPCI 275#emuxki* at pci? dev ? function ? # SoundBlaster Live! 276#eso* at pci? dev ? function ? # ESS Solo-1 PCI AudioDrive 277#fms* at pci? dev ? function ? # Forte Media FM801 278#sv* at pci? dev ? function ? # S3 SonicVibes 279 280# Audio support 281#audio* at audiobus? 282 283#spkr* at audio? # PC speaker (synthesized) 284 285# Pseudo-devices 286 287pseudo-device crypto # /dev/crypto device 288pseudo-device swcrypto # software crypto implementation 289 290# Disk/mass storage pseudo-devices 291#pseudo-device ccd # concatenated disk devices 292#pseudo-device cgd # cryptographic disk devices 293pseudo-device raid # RAIDframe disk driver 294options RAID_AUTOCONFIG # auto-configuration of RAID 295# Options to enable various other RAIDframe RAID types. 296# options RF_INCLUDE_EVENODD=1 297# options RF_INCLUDE_RAID5_RS=1 298# options RF_INCLUDE_PARITYLOGGING=1 299# options RF_INCLUDE_CHAINDECLUSTER=1 300# options RF_INCLUDE_INTERDECLUSTER=1 301# options RF_INCLUDE_PARITY_DECLUSTERING=1 302# options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 303pseudo-device fss # file system snapshot device 304#pseudo-device md # memory disk device (ramdisk) 305pseudo-device vnd # disk-like interface to files 306#options VND_COMPRESSION # compressed vnd(4) 307 308# Network pseudo-devices 309pseudo-device bpfilter # Berkeley packet filter 310pseudo-device carp # Common Address Redundancy Protocol 311pseudo-device npf # NPF packet filter 312pseudo-device loop # network loopback 313#pseudo-device ppp # Point-to-Point Protocol 314pseudo-device pppoe # PPP over Ethernet (RFC 2516) 315#pseudo-device sl # Serial Line IP 316#pseudo-device tun # network tunneling over tty 317#pseudo-device tap # virtual Ethernet 318#pseudo-device gre # generic L3 over IP tunnel 319#pseudo-device gif # RFC1933 tunnel 320#pseudo-device faith # IPv[46] tcp relay translation 321#pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 322pseudo-device vlan # IEEE 802.1q encapsulation 323pseudo-device bridge # simple inter-network bridging 324#pseudo-device vether # Virtual Ethernet for bridge 325pseudo-device agr # IEEE 802.3ad link aggregation 326 327# 328# accept filters 329pseudo-device accf_data # "dataready" accept filter 330pseudo-device accf_http # "httpready" accept filter 331 332# Miscellaneous pseudo-devices 333pseudo-device pty # pseudo-terminals 334#pseudo-device sequencer # MIDI sequencer 335#options RND_COM # use "com" randomness (BROKEN) 336pseudo-device clockctl # user control of clock subsystem 337pseudo-device nullcons # no-op console 338pseudo-device swwdog # software watchdog timer -- swwdog(4) 339 340# A pseudo device needed for Coda # also needs CODA (above) 341#pseudo-device vcoda # coda minicache <-> venus comm. 342 343pseudo-device ksyms # /dev/ksyms 344 345include "dev/veriexec.config" 346 347# Pull in optional local configuration - always at end 348cinclude "arch/cobalt/conf/GENERIC.local" 349