GENERIC revision 1.50
1# $NetBSD: GENERIC,v 1.50 2004/06/28 21:07:48 bouyer 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/netwinder/conf/std.netwinder"
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 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
32#options 	NTP		# NTP phase/frequency locked loop
33
34# Enable experimental buffer queue strategy for better responsiveness under 
35# high disk I/O load. Use it with caution - it's not proven to be stable yet.
36#options 	NEW_BUFQ_STRATEGY
37
38# CPU options
39
40# For StrongARM systems
41options 	CPU_SA110	# Support the SA110 core
42makeoptions	CPUFLAGS="-march=armv4 -mtune=strongarm"
43
44# FPA options
45
46#options 	ARMFPE		# ARM Ltd FPE
47
48# Default console is wscons, if igsfb(4) and pckbc(4) are configured,
49# or com(4) otherwise.  You can force a serial console with these options
50#options 	CONSDEVNAME="\"com\"",CONCOMADDR=0x3f8,CONSPEED=115200
51
52
53# File systems
54
55file-system	FFS		# UFS
56#file-system	LFS		# log-structured file system
57file-system	MFS		# memory file system
58file-system	NFS		# Network file system
59#file-system 	ADOSFS		# AmigaDOS-compatible file system
60file-system 	EXT2FS		# second extended file system (linux)
61#file-system	CD9660		# ISO 9660 + Rock Ridge file system
62file-system	MSDOSFS		# MS-DOS file system
63file-system	FDESC		# /dev/fd
64file-system	KERNFS		# /kern
65file-system	NULLFS		# loopback file system
66#file-system	PORTAL		# portal filesystem (still experimental)
67file-system	PROCFS		# /proc
68#file-system	UMAPFS		# NULLFS + uid and gid remapping
69#file-system	UNION		# union file system
70
71# File system options
72#options 	QUOTA		# UFS quotas
73#options 	FFS_EI		# FFS Endian Independant support
74options 	NFSSERVER
75options 	SOFTDEP
76
77# Networking options
78
79#options 	GATEWAY		# packet forwarding
80options 	INET		# IP + ICMP + TCP + UDP
81options 	INET6		# IPV6
82#options 	IPSEC		# IP security
83#options 	IPSEC_ESP	# IP security (encryption part; define w/ IPSEC)
84#options 	IPSEC_DEBUG	# debug for IP security
85#options 	MROUTING	# IP multicast routing
86#options 	NS		# XNS
87#options 	NSIP		# XNS tunneling over IP
88#options 	ISO,TPIP	# OSI
89#options 	EON		# OSI tunneling over IP
90#options 	CCITT,LLC,HDLC	# X.25
91#options 	NETATALK	# AppleTalk networking
92#options 	PFIL_HOOKS	# pfil(9) packet filter hooks
93#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
94#options 	PPP_DEFLATE	# Deflate compression support for PPP
95#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
96#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
97
98#options 	ALTQ		# Manipulate network interfaces' output queues
99#options 	ALTQ_BLUE	# Stochastic Fair Blue
100#options 	ALTQ_CBQ	# Class-Based Queueing
101#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
102#options 	ALTQ_FIFOQ	# First-In First-Out Queue
103#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
104#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
105#options 	ALTQ_LOCALQ	# Local queueing discipline
106#options 	ALTQ_PRIQ	# Priority Queueing
107#options 	ALTQ_RED	# Random Early Detection
108#options 	ALTQ_RIO	# RED with IN/OUT
109#options 	ALTQ_WFQ	# Weighted Fair Queueing
110
111options 	NFS_BOOT_BOOTP
112options 	NFS_BOOT_DHCP
113#options 	NFS_BOOT_BOOTPARAM
114
115# Compatibility options
116
117#options 	COMPAT_43	# 4.3BSD compatibility.
118options 	COMPAT_16	# NetBSD 1.6 compatibility.
119options 	COMPAT_15	# NetBSD 1.5 compatibility.
120options 	COMPAT_14	# NetBSD 1.4 compatibility.
121#options 	COMPAT_13	# NetBSD 1.3 compatibility.
122#options 	COMPAT_12	# NetBSD 1.2 compatibility.
123#options 	COMPAT_11	# NetBSD 1.1 compatibility.
124#options 	COMPAT_10	# NetBSD 1.0 compatibility.
125#options 	COMPAT_09	# NetBSD 0.9 compatibility.
126#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
127
128options 	COMPAT_LINUX	# binary compatibility with Linux
129
130# Shared memory options
131
132options 	SYSVMSG		# System V-like message queues
133options 	SYSVSEM		# System V-like semaphores
134#options 	SEMMNI=10	# number of semaphore identifiers
135#options 	SEMMNS=60	# number of semaphores in system
136#options 	SEMUME=10	# max number of undo entries per process
137#options 	SEMMNU=30	# number of undo structures in system
138options 	SYSVSHM		# System V-like memory sharing
139options 	SHMMAXPGS=1024	# 1024 pages is the default
140options 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
141
142# Device options
143
144#options 	MEMORY_DISK_HOOKS	# boottime setup of ramdisk
145#options 	MEMORY_DISK_ROOT_SIZE=3400	# Size in blocks
146#options 	MEMORY_DISK_IS_ROOT	# use memory disk as root
147
148# Miscellaneous kernel options
149options 	KTRACE		# system call tracing, a la ktrace(1)
150options 	SYSTRACE	# system call vetting via systrace(1)
151options 	IRQSTATS	# manage IRQ statistics
152#options 	LKM		# loadable kernel modules
153#options 	KMEMSTATS	# kernel memory statistics
154#options 	SCSIVERBOSE	# Verbose SCSI errors
155options 	PCIVERBOSE	# Verbose PCI descriptions
156options 	MIIVERBOSE	# Verbose MII autoconfuration messages
157#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
158#options 	DDB_KEYCODE=0x40
159options 	USERCONF	# userconf(4) support
160#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
161
162# Development and Debugging options
163
164#options 	ARM700BUGTRACK	# track the ARM700 swi bug
165#options 	PORTMASTER	# Enable PortMaster only options
166options 	DIAGNOSTIC	# internally consistency checks
167#options 	PMAP_DEBUG	# Enable pmap_debug_level code
168#options 	IPKDB		# remote kernel debugging
169options 	DDB		# in-kernel debugger
170options 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
171makeoptions	DEBUG="-g"	# compile full symbol table
172options 	SYMTAB_SPACE=250000
173
174config		netbsd	root on ? type ?
175
176# The main bus device
177mainbus0	at root
178
179# The boot CPU
180cpu0		at mainbus?
181
182# Core logic
183footbridge0	at mainbus?
184
185# footbridge uart
186#fcom0		at footbridge?
187
188# system clock via footbridge
189#clock*		at footbridge?
190
191# time-of-day device via footbridge
192todclock0	at footbridge?
193
194# PCI bus via footbridge
195pci0		at footbridge?			# PCI bus
196
197# ISA bus support
198pcib*		at pci? dev ? function ?	# ISA bridge
199isa*		at pcib?
200
201
202# PCI IDE Controllers and Devices
203# PCI IDE controllers - see pciide(4) for supported hardware.
204# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
205# how to set up DMA modes for this chip. This may work, or may cause
206# a machine hang with some controllers.
207#pciide* 	at pci? dev ? function ? flags 0x0000	# GENERIC pciide driver
208slide*  	at pci? dev ? function ?	# Symphony Labs IDE controllers
209
210# ATA (IDE) bus support
211atabus* at ata?
212
213# IDE drives
214# Flags are used only with controllers that support DMA operations
215# and mode settings (e.g. some pciide controllers)
216# The lowest order four bits (rightmost digit) of the flags define the PIO
217# mode to use, the next set of four bits the DMA mode and the third set the
218# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
219# to use, and the last bit must be 1 for this setting to be used.
220# For DMA and UDMA, 0xf (1111) means 'disable'.
221# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
222# (0xc=1100, 0xa=1010, 0xf=1111)
223# 0x0000 means "use whatever the drive claims to support".
224wd*		at atabus? drive ? flags 0x0000	# the drives themselves
225
226# PCI network interfaces
227ne*		at pci? dev ? function ?	# NE2000 compat ethernet
228tlp*		at pci? dev ? function ?	# DECchip 21x4x (and clones) Ethernet
229options 	TLP_MATCH_21142
230
231# MII/PHY support
232icsphy*		at mii? phy ?			# ISC-189x PHYs
233ukphy*		at mii? phy ?			# generic unknown PHYs
234
235
236# WSCONS Support
237options 	WSEMUL_VT100		# VT100 / VT220 emulation
238# different kernel output - see dev/wscons/wsdisplayvar.h
239options 	WS_KERNEL_FG=WSCOL_GREEN
240#options 	WS_KERNEL_BG=WSCOL_BLACK
241options 	WS_KERNEL_COLATTR=WSATTR_HILIT
242# compatibility to other console drivers
243options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
244options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
245options 	WSDISPLAY_COMPAT_USL		# VT handling
246options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
247
248options 	FONT_GALLANT12x22		# Sun PROM font look-alike
249
250pckbc0		at isa?
251pckbd*		at pckbc?
252wskbd*		at pckbd? console ?
253pms*		at pckbc?
254wsmouse*	at pms? mux 0
255
256igsfb*		at pci? dev ? function ?
257wsdisplay*	at igsfb? console ?
258
259
260# ISA Devices
261com0		at isa? port 0x3f8 irq 4
262lpt0		at isa? port 0x378 irq 7
263
264
265# Audio Devices
266
267# ISA audio devices
268sb0		at isa? port 0x220 irq 3 drq 1 drq2 7	# SoundBlaster
269opl*		at sb?
270mpu*		at sb?
271midi*		at sb?					# SB1 MIDI port
272
273# Audio support
274audio*		at sb?
275
276# Pseudo-Devices
277
278pseudo-device 	crypto		# opencrypto framework
279
280# disk/mass storage pseudo-devices
281#pseudo-device	md		1	# memory disk device (ramdisk)
282pseudo-device	vnd		4	# disk-like interface to files
283#pseudo-device	cgd		4	# cryptographic disk devices
284
285# network pseudo-devices
286pseudo-device	bpfilter	4	# Berkeley packet filter
287pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
288pseudo-device	bridge			# simple inter-network bridging
289#options	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
290pseudo-device	loop			# network loopback
291
292# miscellaneous pseudo-devices
293pseudo-device	pty			# pseudo-terminals
294pseudo-device	rnd			# /dev/random and in-kernel generator
295pseudo-device	clockctl		# user control of clock subsystem
296pseudo-device	ksyms			# /dev/ksyms
297#pseudo-device	pf			# PF packet filter
298#pseudo-device	pflog			# PF log if
299
300# wscons pseudo-devices
301pseudo-device	wsmux			# mouse & keyboard multiplexor
302#pseudo-device	wsfont
303