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