GENERIC revision 1.30
1# $NetBSD: GENERIC,v 1.30 2002/09/18 02:43:56 lukem 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/cats/conf/std.cats"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25# estimated number of users
26
27maxusers	32
28
29# Standard system options
30
31options 	UCONSOLE	# users can use TIOCCONS (for xconsole)
32options 	INSECURE	# disable kernel securelevel
33
34options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
35options 	NTP		# NTP phase/frequency locked loop
36
37# CPU options
38
39# For StrongARM systems
40options 	CPU_SA110	# Support the SA110 core
41makeoptions	COPTS="-O2 -march=armv4 -mtune=strongarm"
42
43# FPA options
44
45#options 	ARMFPE		# ARM Ltd FPE
46
47# File systems
48
49file-system	FFS		# UFS
50file-system	LFS		# log-structured file system
51file-system	MFS		# memory file system
52file-system	NFS		# Network file system
53file-system 	ADOSFS		# AmigaDOS-compatible file system
54file-system 	EXT2FS		# second extended file system (linux)
55file-system	CD9660		# ISO 9660 + Rock Ridge file system
56file-system	MSDOSFS		# MS-DOS file system
57file-system	FDESC		# /dev/fd
58file-system	KERNFS		# /kern
59file-system	NULLFS		# loopback file system
60file-system 	OVERLAY		# overlay filesystem
61file-system	PORTAL		# portal filesystem (still experimental)
62file-system	PROCFS		# /proc
63file-system	UMAPFS		# NULLFS + uid and gid remapping
64file-system	UNION		# union file system
65file-system	CODA		# Coda File System; also needs vcode (below)
66
67# File system options
68options 	QUOTA		# UFS quotas
69#options 	FFS_EI		# FFS Endian Independant support
70options 	NFSSERVER
71options 	SOFTDEP		# FFS soft updates support
72
73# Networking options
74
75#options 	GATEWAY		# packet forwarding
76options 	INET		# IP + ICMP + TCP + UDP
77options 	INET6		# IPV6
78#options 	IPSEC		# IP security
79#options 	IPSEC_ESP	# IP security (encryption part; define w/ IPSEC)
80#options 	IPSEC_DEBUG	# debug for IP security
81#options 	MROUTING	# IP multicast routing
82options 	NS		# XNS
83#options 	NSIP		# XNS tunneling over IP
84options 	ISO,TPIP	# OSI
85#options 	EON		# OSI tunneling over IP
86options 	CCITT,LLC,HDLC	# X.25
87options 	NETATALK	# AppleTalk networking
88options 	PFIL_HOOKS	# pfil(9) packet filter hooks
89options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
90options 	PPP_DEFLATE	# Deflate compression support for PPP
91options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
92options 	IPFILTER_LOG	# ipmon(8) log support
93#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
94
95options 	NFS_BOOT_BOOTP
96options 	NFS_BOOT_DHCP
97#options 	NFS_BOOT_BOOTPARAM
98
99# Compatibility options
100
101#options 	COMPAT_43	# 4.3BSD compatibility.
102options 	COMPAT_14	# NetBSD 1.4 compatibility.
103options 	COMPAT_13	# NetBSD 1.3 compatibility.
104#options 	COMPAT_12	# NetBSD 1.2 compatibility.
105#options 	COMPAT_11	# NetBSD 1.1 compatibility.
106#options 	COMPAT_10	# NetBSD 1.0 compatibility.
107#options 	COMPAT_09	# NetBSD 0.9 compatibility.
108#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
109
110# Shared memory options
111
112options 	SYSVMSG		# System V-like message queues
113options 	SYSVSEM		# System V-like semaphores
114#options 	SEMMNI=10	# number of semaphore identifiers
115#options 	SEMMNS=60	# number of semaphores in system
116#options 	SEMUME=10	# max number of undo entries per process
117#options 	SEMMNU=30	# number of undo structures in system
118options 	SYSVSHM		# System V-like memory sharing
119#options 	SHMMAXPGS=1024	# 1024 pages is the default
120
121# Device options
122
123#options 	MEMORY_DISK_HOOKS	# boottime setup of ramdisk
124#options 	MEMORY_DISK_ROOT_SIZE=3400	# Size in blocks
125#options 	MEMORY_DISK_IS_ROOT	# use memory disk as root
126
127# Miscellaneous kernel options
128options 	KTRACE		# system call tracing, a la ktrace(1)
129options 	IRQSTATS	# manage IRQ statistics
130#options 	LKM		# loadable kernel modules
131#options 	KMEMSTATS	# kernel memory statistics
132options 	SCSIVERBOSE	# Verbose SCSI errors
133options 	PCIVERBOSE	# Verbose PCI descriptions
134options 	MIIVERBOSE	# verbose PHY autoconfig messages
135#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
136options 	USBVERBOSE	# verbose USB device autoconfig messages
137#options 	DDB_KEYCODE=0x40
138options 	PMAP_STATIC_L1S=128
139options 	USERCONF	# userconf(4) support
140#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
141
142# wscons options
143#options 	WSEMUL_SUN		# sun terminal emulation
144options 	WSEMUL_VT100		# VT100 / VT220 emulation
145# different kernel output - see dev/wscons/wsdisplayvar.h
146options 	WS_KERNEL_FG=WSCOL_GREEN
147options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
148options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
149options 	WSDISPLAY_COMPAT_USL		# VT handling
150options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
151# see dev/wscons/wskbdmap_mfii.h for implemented layouts
152#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
153
154# Development and Debugging options
155
156#options 	ARM700BUGTRACK	# track the ARM700 swi bug
157#options 	PORTMASTER	# Enable PortMaster only options
158options 	DIAGNOSTIC	# internally consistency checks
159#options 	PMAP_DEBUG	# Enable pmap_debug_level code
160#options 	IPKDB		# remote kernel debugging
161options 	DDB		# in-kernel debugger
162options 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
163#makeoptions	DEBUG="-g"	# compile full symbol table
164
165config		netbsd	root on ? type ?
166
167# The main bus device
168mainbus0 at root
169
170# The boot cpu
171cpu0 at mainbus?
172
173# Core logic
174footbridge0	at mainbus?
175
176# footbridge uart
177fcom0	at footbridge?
178
179# system clock via footbridge
180#clock*	at footbridge?
181
182# time-of-day device via footbridge or RTC
183todclock0	at todservice?
184
185# PCI bus support
186# PCI bus via footbridge
187pci0	at footbridge?			# PCI bus
188
189pci*	at ppb? bus ?
190
191# PCI bridges
192ppb*	at pci? dev ? function ?	# PCI-PCI bridges
193# XXX 'puc's aren't really bridges, but there's no better place for them here
194#puc*	at pci? dev ? function ?	# PCI "universal" comm. cards
195
196# PCI serial interfaces
197#com*	at puc? port ?			# 16x50s on "universal" comm boards
198#cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
199
200# PCI parallel printer interfaces
201#lpt*	at puc? port ?			# || ports on "universal" comm boards
202
203# PCI SCSI Controllers and Buses
204adv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], ULTRA SCSI
205scsibus* at adv?
206#adw*	at pci? dev ? function ?	# AdvanSys 9xxUW SCSI
207#scsibus* at adw?
208ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI controllers
209scsibus* at ahc?
210#bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
211#scsibus* at bha?
212iha*	at pci? dev ? function ?	# Initio INIC-940/950 SCSI
213scsibus* at iha?
214isp*	at pci? dev ? function ?	# Qlogic ISP 10x0 SCSI controllers
215scsibus* at isp?
216pcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI
217scsibus* at pcscp?
218siop*	at pci? dev ? function ?	# NCR 53c8xx SCSI
219scsibus* at siop?
220
221# SCSI devices
222sd*	at scsibus? target ? lun ?	# SCSI disk drives
223st*	at scsibus? target ? lun ?	# SCSI tape drives
224cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
225#ch*	at scsibus? target ? lun ?	# SCSI auto-changers
226#uk*	at scsibus? target ? lun ?	# SCSI unknown device
227#ss*	at scsibus? target ? lun ?	# SCSI scanner
228
229# PCI IDE Controllers and Devices
230# PCI IDE controllers - see pciide(4) for supported hardware.
231# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
232# how to set up DMA modes for this chip. This may work, or may cause
233# a machine hang with some controllers.
234pciide* at pci? dev ? function ? flags 0x0000
235
236# IDE drives
237# Flags are used only with controllers that support DMA operations
238# and mode settings (e.g. some pciide controllers)
239# The lowest order four bits (rightmost digit) of the flags define the PIO
240# mode to use, the next set of four bits the DMA mode and the third set the
241# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
242# to use, and the last bit must be 1 for this setting to be used.
243# For DMA and UDMA, 0xf (1111) means 'disable'.
244# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
245# (0xc=1100, 0xa=1010, 0xf=1111)
246# 0x0000 means "use whatever the drive claims to support".
247wd*	at pciide? channel ? drive ? flags 0x0000	# the drives themselves
248
249# ATAPI bus support
250atapibus* at pciide? channel ?
251
252# ATAPI devices
253cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
254sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
255uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
256
257# PCI network interfaces
258#en*	at pci? dev ? function ?	# ENI/Adaptec ATM
259ep*	at pci? dev ? function ?	# 3C590 ethernet cards
260ex*	at pci? dev ? function ?	# 3Com 90x[B]
261epic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet
262#esh*	at pci? dev ? function ?	# Essential HIPPI card
263#fpa*	at pci? dev ? function ?	# DEC DEFPA FDDI
264fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
265#le*	at pci? dev ? function ?	# PCnet-PCI Ethernet
266ne*	at pci? dev ? function ?	# NE2000 compat ethernet
267#ntwoc*	at pci? dev ? function ?	# Riscom/N2 PCI Sync Serial
268sip*	at pci? dev ? function ?	# SiS 900 Ethernet
269#tl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
270tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
271vr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
272#lmc*	at pci? dev ? function ?	# Lan Media Corp SSI/HSSI/DS3
273rtk*	at pci? dev ? function ?	# Realtek 8129/8139
274
275# MII/PHY support
276acphy*	at mii? phy ?			# DAltima AC101 and AMD Am79c874 PHYs
277amhphy*	at mii? phy ?			# AMD 79c901 Ethernet PHYs
278bmtphy*	at mii? phy ?			# Broadcom BCM5201 and BCM5202 PHYs
279brgphy*	at mii? phy ?			# Broadcom BCM5400-family PHYs
280dmphy*	at mii? phy ?			# Davicom DM9101 PHYs
281exphy*	at mii? phy ?			# 3Com internal PHYs
282glxtphy* at mii? phy ?			# Level One LXT-1000 PHYs
283gphyter* at mii? phy ?			# NS83861 Gig-E PHY
284icsphy*	at mii? phy ?			# Integrated Circuit Systems ICS189x
285inphy*	at mii? phy ?			# Intel 82555 PHYs
286iophy*	at mii? phy ?			# Intel 82553 PHYs
287lxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
288makphy*	at mii? phy ?			# Marvell Semiconductor 88E1000 PHYs
289nsphy*	at mii? phy ?			# NS83840 PHYs
290nsphyter* at mii? phy ?			# NS83843 PHYs
291pnaphy*	at mii? phy ?			# generic HomePNA PHYs
292qsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
293sqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
294tlphy*	at mii? phy ?			# ThunderLAN PHYs
295tqphy*	at mii? phy ?			# TDK Semiconductor PHYs
296ukphy*	at mii? phy ?			# generic unknown PHYs
297urlphy*	at mii? phy ?			# Realtek RTL8150L internal PHYs
298
299# USB Controller and Devices
300
301# PCI USB controllers
302ohci*	at pci?				# Open Host Controller
303
304# USB bus support
305usb*	at ohci?
306
307# USB Hubs
308uhub*	at usb?
309uhub*	at uhub? port ? configuration ? interface ?
310
311# USB HID device
312uhidev*	at uhub? port ? configuration ? interface ?
313
314# USB Mice
315ums*	at uhidev? reportid ?
316wsmouse*	at ums?
317
318# USB Keyboards
319ukbd*	at uhidev? reportid ?
320wskbd*	at ukbd? console ?
321
322# USB Generic HID devices
323uhid*	at uhidev? reportid ?
324
325# USB Printer
326ulpt*	at uhub? port ? configuration ? interface ?
327
328# USB Modem
329umodem*	at uhub? port ? configuration ?
330ucom*	at umodem?
331
332# USB Mass Storage
333umass*	at uhub? port ? configuration ? interface ?
334atapibus* at umass? channel ?
335scsibus* at umass? channel ?
336
337# USB audio
338uaudio*	at uhub? port ? configuration ?
339audio*	at uaudio?
340
341# USB MIDI
342umidi*	at uhub? port ? configuration ?
343midi*	at umidi?
344
345# USB Ethernet adapters
346aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
347cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
348kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
349
350# Prolofic PL2301/PL2302 host-to-host adapter
351upl*	at uhub? port ?
352
353# Serial adapters
354# FTDI FT8U100AX serial adapter
355uftdi*	at uhub? port ?
356ucom*	at uftdi? portno ?
357
358uplcom*	at uhub? port ?		# I/O DATA USB-RSAQ2 serial adapter
359ucom*	at uplcom? portno ?
360
361umct*	at uhub? port ?		# MCT USB-RS232 serial adapter
362ucom*	at umct? portno ?
363
364# Diamond Multimedia Rio 500
365urio*	at uhub? port ?
366
367# USB Handspring Visor
368uvisor*	at uhub? port ?
369ucom*	at uvisor?
370
371# USB scanners
372uscanner* at uhub? port ?
373
374# USB scanners that use SCSI emulation, e.g., HP5300
375usscanner* at uhub? port ?
376scsibus* at usscanner? channel ?
377
378# Y@P firmware loader
379uyap* at uhub? port ?
380
381# USB Generic driver
382ugen* at uhub? port ?
383
384# Audio Devices
385
386# PCI audio devices
387#eap*	at pci? dev ? function ?	# Ensoniq AudioPCI
388#sv*	at pci? dev ? function ?	# S3 SonicVibes
389
390# Audio support
391#audio*	at eap?
392#audio*	at sv?
393
394vga*		at pci?
395wsdisplay*	at vga? console ?
396
397# ISA bus bridging
398
399pcib*	at pci? dev ? function ?	# PCI-ISA bridge
400isa*	at pcib?			# ISA bus
401
402# ISA Plug-and-Play bus support
403isapnp0	at isa?
404
405# wscons
406pckbc0	at isa?			# pc keyboard controller
407pckbd*	at pckbc?		# PC keyboard
408pms*		at pckbc?		# PS/2 mouse for wsmouse
409wskbd*		at pckbd? console ?
410wsmouse*	at pms?
411
412pcppi0	at isa?
413sysbeep0	at pcppi?
414
415# ISA Plug-and-Play serial interfaces
416com*	at isapnp?			# Modems and serial boards
417
418# ISA Plug-and-Play network interfaces
419ep*	at isapnp?			# 3Com 3c509 Ethernet
420
421# ISA serial interfaces
422com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
423com1	at isa? port 0x2f8 irq 3
424#com2	at isa? port 0x3e8 irq 9
425#com3	at isa? port 0x2e8 irq 10
426
427# ISA parallel printer interfaces
428lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports
429lpt1	at isa? port 0x278 irq 5
430#lpt2	at isa? port 0x3bc
431
432# ISA floppy
433#fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
434#fdc1	at isa? port 0x370 irq ? drq ?
435#fd*	at fdc? drive ?			# the drives themselves
436
437# ISA network interface
438#ne0	at isa? port 0x280 irq 9
439#ne1	at isa? port 0x300 irq 10
440#ep*	at isa? port ? irq ?
441
442# The spkr driver provides a simple tone interface to the built in speaker.
443spkr0	at pcppi?			# PC speaker
444
445dsrtc0	at isa? port 0x72		# Dallas RTC
446
447# ISA Plug-and-Play audio devices
448ess*	at isapnp?			# ESS Tech ES1887, ES1888, ES888 audio
449sb*	at isapnp?			# SoundBlaster-compatible audio
450wss*	at isapnp?			# Windows Sound System
451
452# OPL[23] FM syntheziers
453opl*	at ess?
454opl*	at sb?
455
456# Audio support
457audio*	at ess?
458audio*	at sb?
459audio*	at wss?
460
461# MPU 401 UARTs
462#mpu*	at sb?
463
464# MIDI support
465midi*	at pcppi?		# MIDI interface to the PC speaker
466midi*	at sb?			# SB MPU401 port
467midi*	at opl?			# OPL FM synth
468#midi*	at mpu?			# MPU 401
469
470# Joysticks
471
472# ISA Plug-and-Play joysticks
473joy*	at isapnp?			# Game ports (usually on audio cards)
474
475# ISA joysticks. Probe is a little strange; add only if you have one.
476#joy0	at isa? port 0x201
477
478# Pseudo-Devices
479
480# disk/mass storage pseudo-devices
481pseudo-device	ccd		2	# concatenated/striped disk devices
482pseudo-device	md		1	# memory disk device (ramdisk)
483pseudo-device	vnd		4	# disk-like interface to files
484
485# network pseudo-devices
486pseudo-device	bpfilter	4	# Berkeley packet filter
487pseudo-device	ipfilter		# IP filter (firewall) and NAT
488pseudo-device	loop			# network loopback
489pseudo-device	ppp		2	# Point-to-Point Protocol
490pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
491pseudo-device	sl		2	# Serial Line IP
492pseudo-device	strip		2	# Starmode Radio IP (Metricom)
493pseudo-device	tun		2	# network tunneling over tty
494pseudo-device	gre		2	# generic L3 over IP tunnel
495pseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
496#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
497#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
498pseudo-device	vlan			# IEEE 802.1q encapsulation
499pseudo-device	bridge			# simple inter-network bridging
500
501# miscellaneous pseudo-devices
502pseudo-device	pty			# pseudo-terminals
503pseudo-device	tb		1	# tablet line discipline
504pseudo-device	sequencer	1	# MIDI sequencer
505pseudo-device	rnd			# /dev/random and in-kernel generator
506#options 	RND_COM			# use "com" randomness as well (BROKEN)
507pseudo-device	clockctl		# user control of clock subsystem
508
509# a pseudo device needed for Coda	# also needs CODA (above)
510pseudo-device	vcoda		4	# coda minicache <-> venus comm.
511
512# mouse & keyboard multiplexor pseudo-devices
513pseudo-device	wsmux
514