GENERIC revision 1.122
1# $NetBSD: GENERIC,v 1.122 2009/12/05 20:11:16 pooka 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/ofppc/conf/std.ofppc"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident 		"GENERIC-$Revision: 1.122 $"
26
27maxusers	32
28
29options 	PIC_OPENPIC
30options 	PIC_DISTOPENPIC
31options 	PIC_I8259
32#options 	PIC_PREPIVR
33
34# various hacks due to bugs in Openfirmware implementation
35options 	FIRMWORKSBUGS
36
37# Standard system options
38options 	INSECURE	# disable kernel security checks
39#options 	NTP		# NTP phase/frequency locked loop
40options 	KTRACE		# system call tracing via ktrace(1)
41
42options 	SYSVMSG		# System V message queues
43options 	SYSVSEM		# System V semaphores
44options 	SYSVSHM		# System V shared memory
45options 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
46
47
48options 	USERCONF	# userconf(4) support
49#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
50options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
51
52# Diagnostic/debugging support options
53#options 	DIAGNOSTIC	# cheap kernel consistency checks
54#options 	DEBUG		# expensive debugging checks/support
55#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
56options 	DDB		# in-kernel debugger
57options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
58options 	DDB_VERBOSE_HELP
59options 	TRAP_PANICWAIT
60
61makeoptions	DEBUG="-g"	# compile full symbol table
62
63# Compatibility option
64options 	COMPAT_09	# NetBSD 0.9,
65options 	COMPAT_10	# NetBSD 1.0,
66options 	COMPAT_11	# NetBSD 1.1,
67options 	COMPAT_12	# NetBSD 1.2,
68options 	COMPAT_13	# NetBSD 1.3,
69options 	COMPAT_14	# NetBSD 1.4,
70options 	COMPAT_15	# NetBSD 1.5,
71options 	COMPAT_16	# NetBSD 1.6,
72options 	COMPAT_20	# NetBSD 2.0,
73options 	COMPAT_30	# NetBSD 3.0 compatibility.
74options 	COMPAT_40	# NetBSD 4.0 compatibility.
75options 	COMPAT_50	# NetBSD 5.0 compatibility.
76options 	COMPAT_43	# and 4.3BSD
77options 	COMPAT_386BSD_MBRPART # recognize old partition ID
78#options 	COMPAT_LINUX	# Linux binary compatibility
79#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
80options 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
81
82# File systems
83file-system 	FFS		# UFS
84file-system 	EXT2FS		# second extended file system (linux)
85file-system 	LFS		# log-structured file system
86file-system 	MFS		# memory file system
87file-system 	NFS		# Network file System client
88file-system 	CD9660		# ISO 9660 + Rock Ridge file system
89file-system 	MSDOSFS		# MS-DOS file system
90file-system 	ADOSFS		# AmigaDOS file system
91file-system 	FDESC		# /dev/fd
92file-system 	KERNFS		# /kern
93file-system 	NULLFS		# loopback file system
94file-system 	OVERLAY		# overlay file system
95file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
96file-system 	PROCFS		# /proc
97file-system 	UMAPFS		# NULLFS + uid and gid remapping
98file-system 	UNION		# union file system
99file-system 	NTFS		# Windows NT file system
100file-system	PTYFS		# /dev/pts/N support
101#file-system	TMPFS		# Efficient memory file-system
102#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
103
104# File system options
105options 	QUOTA		# UFS quotas
106options 	FFS_EI		# FFS Endian Independent support
107options 	WAPBL		# File system journaling support - Experimental
108#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
109options 	NFSSERVER	# Network File System server
110#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
111#options 	EXT2FS_SYSTEM_FLAGS	# makes ext2fs file flags (append and
112					# immutable) behave as system flags.
113
114options 	NFS_BOOT_DHCP	# Support DHCP NFS root
115
116# Networking options
117#options 	GATEWAY		# packet forwarding
118options 	INET		# IP + ICMP + TCP + UDP
119options 	INET6		# IPV6
120#options 	IPSEC		# IP security
121#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
122#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
123#options 	IPSEC_DEBUG	# debug for IP security
124#options 	MROUTING	# IP multicast routing
125#options 	PIM		# Protocol Independent Multicast
126#options 	ISO,TPIP	# OSI
127#options 	EON		# OSI tunneling over IP
128#options 	NETATALK	# AppleTalk networking protocols
129options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
130options 	PPP_DEFLATE	# Deflate compression support for PPP
131options 	PPP_FILTER	# Active filter support for PPP (requires BPF)
132options 	PFIL_HOOKS	# pfil(9) packet filter hooks
133options 	IPFILTER_LOG	# ipmon(8) log support
134options 	IPFILTER_LOOKUP	# ippool(8) support
135#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
136options 	NMBCLUSTERS=1024
137#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
138
139#options 	ALTQ		# Manipulate network interfaces' output queues
140#options 	ALTQ_BLUE	# Stochastic Fair Blue
141#options 	ALTQ_CBQ	# Class-Based Queueing
142#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
143#options 	ALTQ_FIFOQ	# First-In First-Out Queue
144#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
145#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
146#options 	ALTQ_LOCALQ	# Local queueing discipline
147#options 	ALTQ_PRIQ	# Priority Queueing
148#options 	ALTQ_RED	# Random Early Detection
149#options 	ALTQ_RIO	# RED with IN/OUT
150#options 	ALTQ_WFQ	# Weighted Fair Queueing
151
152# These options enable verbose messages for several subsystems.
153# Warning, these may compile large string tables into the kernel!
154options 	MIIVERBOSE	# verbose PHY autoconfig messages
155options 	PCIVERBOSE	# verbose PCI device autoconfig messages
156#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
157options 	SCSIVERBOSE	# human readable SCSI error messages
158options 	USBVERBOSE	# verbose USB device autoconfig messages
159
160options 	WSEMUL_VT100
161options 	WS_DEFAULT_FG=WSCOL_BLACK
162options 	WS_DEFAULT_BG=WSCOL_LIGHT_WHITE
163options 	WS_KERNEL_FG=WSCOL_GREEN
164options 	WS_KERNEL_BG=WSCOL_LIGHT_WHITE
165#options 	FONT_GALLANT12x22
166options 	FONT_BOLD8x16
167
168# Kernel root file system and dump configuration
169config		netbsd	root on ? type ?
170
171#
172# Device configuration
173#
174
175mainbus*	at root
176
177# CPUs
178cpu*		at mainbus?
179
180# Generic OpenFirmware console support
181rtas*		at mainbus?
182
183# PCI root nodes
184ofwpci*		at mainbus?
185pci*		at ofwpci? bus ?
186pegasospci*	at mainbus?
187pci*		at pegasospci? bus ?
188
189# PCI bridges
190pchb*		at pci? dev ? function ?
191ppb*		at pci? dev ? function ?
192pcib*		at pci? dev ? function ?
193
194# ISA bus support
195isa*		at pcib?
196
197# Console Devices
198genfb*		at pci? dev ? function ?
199#radeonfb*	at pci? dev ? function ?
200pckbc0		at isa?			# pc keyboard controller
201pckbd*		at pckbc?		# PC keyboard
202pms*		at pckbc?		# PS/2 mouse for wsmouse
203#wscons stuff
204wskbd*		at pckbd? console ?
205wsmouse*	at pms? mux 0
206# make sure the console display is always wsdisplay0 XXX Why?
207wsdisplay0      at wsemuldisplaydev? console 1
208wsdisplay*      at wsemuldisplaydev?
209
210attimer0	at isa?			# AT Timer
211pcppi0		at isa?			# PC prog. periph. interface
212# FIX ISABEEP LATER
213
214# Serial Devices
215# ISA serial interfaces
216com0	at isa? port 0x3f8 irq 4	# standard PC serial ports
217com1	at isa? port 0x2f8 irq 3
218
219# Parallel Printer Interfaces
220# ISA parallel printer interfaces
221lpt0		at isa? port 0x3bc irq 7	# standard PC parallel ports
222
223# SCSI Controllers and Devices
224siop*		at pci? dev ? function ?	# Symbios 53c8xx SCSI
225esiop*		at pci? dev ? function ?	# Symbios 53c875 SCSI and newer
226
227# SCSI bus support
228scsibus* 	at siop?
229scsibus* 	at esiop?
230scsibus* 	at umass?
231
232# SCSI devices
233sd*		at scsibus? target ? lun ?	# SCSI disk drives
234st*		at scsibus? target ? lun ?	# SCSI tape drives
235cd*		at scsibus? target ? lun ?	# SCSI CD-ROM drives
236#ch*		at scsibus? target ? lun ?	# SCSI autochangers
237#ss*		at scsibus? target ? lun ?	# SCSI scanners
238#uk*		at scsibus? target ? lun ?	# SCSI unknown
239
240# IDE and related devices
241# PCI IDE controllers
242pciide*		at pci? dev ? function ? flags 0x0000
243viaide*		at pci? dev ? function ?	# VIA/AMD/Nvidia IDE controllers
244
245# ATA (IDE) bus support
246atabus*		at ata?
247
248# IDE drives
249# Flags are used only with controllers that support DMA operations
250# and mode settings (e.g. some pciide controllers)
251# The lowest order four bits (rightmost digit) of the flags define the PIO
252# mode to use, the next set of four bits the DMA mode and the third set the
253# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
254# to use, and the last bit must be 1 for this setting to be used.
255# For DMA and UDMA, 0xf (1111) means 'disable'.
256# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
257# (0xc=1100, 0xa=1010, 0xf=1111)
258# 0x0000 means "use whatever the drive claims to support".
259wd*	at atabus? drive ? flags 0x0000
260
261# ATAPI bus support
262atapibus*	at atapi?
263
264# ATAPI devices
265# flags have the same meaning as for IDE drives.
266cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
267sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
268uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
269
270# Network Interfaces
271ep*	at pci? dev ? function ?	# 3Com 3c59x
272ex*	at pci? dev ? function ?	# 3Com 3c90x[BC]
273fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
274ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
275pcn*	at pci? dev ? function ?	# AMD PCnet-PCI Ethernet
276re*	at pci? dev ? function ?	# Realtek 8139C+/8169/8169S/8110S
277rtk*	at pci? dev ? function ?	# Realtek 8129/8139
278sip*	at pci? dev ? function ?	# SiS 900/DP83815 Ethernet
279tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
280vr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
281
282# MII/PHY support
283acphy*	at mii? phy ?			# Altima AC101 and AMD Am79c874 PHYs
284amhphy* at mii? phy ?			# AMD 79c901 Ethernet PHYs
285bmtphy* at mii? phy ?			# Broadcom BCM5201 and BCM5202 PHYs
286brgphy* at mii? phy ?			# Broadcom BCM5400-family PHYs
287ciphy*	at mii? phy ?			# Cicada CS8201 Gig-E PHYs
288dmphy*	at mii? phy ?			# Davicom DM9101 PHYs
289exphy*	at mii? phy ?			# 3Com internal PHYs
290gentbi* at mii? phy ?			# Generic Ten-Bit 1000BASE-[CLS]X PHYs
291glxtphy* at mii? phy ?			# Level One LXT-1000 PHYs
292gphyter* at mii? phy ?			# NS83861 Gig-E PHY
293icsphy* at mii? phy ?			# Integrated Circuit Systems ICS189x
294igphy*	at mii? phy ?			# Intel IGP01E1000
295ikphy*	at mii? phy ?			# Intel 82563 PHYs
296inphy*	at mii? phy ?			# Intel 82555 PHYs
297iophy*	at mii? phy ?			# Intel 82553 PHYs
298lxtphy* at mii? phy ?			# Level One LXT-970 PHYs
299makphy* at mii? phy ?			# Marvell Semiconductor 88E1000 PHYs
300nsphy*	at mii? phy ?			# NS83840 PHYs
301nsphyter* at mii? phy ? 		# NS83843 PHYs
302pnaphy* at mii? phy ?			# generic HomePNA PHYs
303qsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
304rgephy* at mii? phy ?			# Realtek 8169S/8110S internal PHYs
305rlphy*	at mii? phy ?			# Realtek 8139/8201L PHYs
306sqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
307tlphy*	at mii? phy ?			# ThunderLAN PHYs
308tqphy*	at mii? phy ?			# TDK Semiconductor PHYs
309ukphy*	at mii? phy ?			# generic unknown PHYs
310urlphy* at mii? phy ?			# Realtek RTL8150L internal PHYs
311
312# PCI USB controllers
313uhci*	at pci? dev ? function ?	# USB Universal Host Controller
314ohci*	at pci? dev ? function ?	# USB Open Host Controller
315ehci*	at pci? dev ? function ?	# USB Enhanced Host Controller
316
317usb*	at uhci?			# USB bus support
318usb*	at ohci?			# USB bus support
319usb*	at ehci?			# USB bus support
320uhub*	at usb?				# USB Hubs
321uhub*	at uhub? port ?
322
323# USB Mass Storage
324umass*	at uhub? port ? configuration ? interface ?
325wd*	at umass?
326
327uhidev*	at uhub? port ? configuration ? interface ?	# USB HID device
328
329ums*	at uhidev? reportid ?				# USB Mice
330wsmouse* at ums? mux 0
331
332ukbd*	at uhidev? reportid ?				# USB Keyboards
333wskbd*	at ukbd? console ? mux 1
334
335ucycom*	at uhidev? reportid ?				# USB serial adapter
336uhid*	at uhidev? reportid ?				# USB Generic HID
337ulpt*	at uhub? port ? configuration ? interface ?	# USB Printer
338umodem*	at uhub? port ? configuration ?			# USB Modem
339ucom*	at umodem?
340#uaudio*	at uhub? port ? configuration ?			# USB audio
341
342# D-Link DSB-R100 USB FM radio tuner
343#udsbr* at uhub? port ?
344#radio* at udsbr?
345
346# USB Ethernet adapters
347#aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
348#axe*	at uhub? port ?		# ASIX AX88172 based adapters
349#cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
350#kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
351#url*	at uhub? port ?		# Realtek RTL8150L based adapters
352#udav*	at uhub? port ?		# Davicom DM9601 based adapters
353
354#ukyopon* at uhub? port ?				# Kyocera AIR-EDGE PHONE
355#ucom*	at ukyopon? portno ?
356
357#uscanner* at uhub? port ?				# USB scanners
358#uyap* at uhub? port ?					# Y@P firmware loader
359ugen*	at uhub? port ? configuration ? interface ?	# USB Generic driver
360
361# USB 802.11 adapters
362#atu*	at uhub? port ?		# Atmel at76c50x 802.11b
363#ral*	at uhub? port ?		# Ralink Technology RT25x0 802.11a/b/g
364#zyd*	at uhub? port ?		# Zydas ZD1211
365
366# PCI IEEE1394 controllers
367fwohci*	at pci? dev ? function ?	# IEEE1394 Open Host Controller
368
369ieee1394if* at fwohci?
370fwip*	at ieee1394if?			# IP over IEEE1394
371sbp*	at ieee1394if? euihi ? euilo ?
372
373# Audio Devices
374
375# PCI audio devices
376auvia*  at pci? dev ? function ?	# VIA VT82C686A integrated AC'97 Audio
377
378# Audio support
379audio*	at audiobus?
380
381
382#
383# accept filters
384pseudo-device   accf_data		# "dataready" accept filter
385pseudo-device   accf_http		# "httpready" accept filter
386
387pseudo-device	vnd			# disk-like interface to files
388#options 	VND_COMPRESSION		# compressed vnd(4)
389pseudo-device	ccd		4	# concatenated/striped disk devices
390#pseudo-device	cgd		4	# cryptographic disk devices
391pseudo-device	raid		8	# RAIDframe disk driver
392options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
393# Options to enable various other RAIDframe RAID types.
394#options 	RF_INCLUDE_EVENODD=1
395#options 	RF_INCLUDE_RAID5_RS=1
396#options 	RF_INCLUDE_PARITYLOGGING=1
397#options 	RF_INCLUDE_CHAINDECLUSTER=1
398#options 	RF_INCLUDE_INTERDECLUSTER=1
399#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
400#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
401pseudo-device	fss		4	# file system snapshot device
402pseudo-device	md		1	# memory disk device
403pseudo-device	loop			# network loopback
404pseudo-device	bpfilter		# packet filter
405#pseudo-device	carp			# Common Address Redundancy Protocol
406pseudo-device	ipfilter		# IP Filter (firewall) and NAT
407pseudo-device	ppp			# Point-to-Point Protocol
408pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
409pseudo-device	sl			# Serial Line IP
410pseudo-device	tun			# network tunneling over tty
411pseudo-device	tap			# virtual Ethernet
412#pseudo-device	gre			# generic L3 over IP tunnel
413pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
414#pseudo-device	faith			# IPv[46] tcp relay translation i/f
415pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
416pseudo-device	vlan			# IEEE 802.1q encapsulation
417pseudo-device	bridge			# simple inter-network bridging
418#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
419pseudo-device	agr			# IEEE 802.3ad link aggregation
420pseudo-device	pty			# pseudo-terminals
421pseudo-device	rnd			# /dev/random and in-kernel generator
422pseudo-device	clockctl		# user control of clock subsystem
423pseudo-device	openfirm		# /dev/openfirm
424pseudo-device	ksyms			# /dev/ksyms
425pseudo-device	wsmux			# mouse and keyboard multiplexor
426#pseudo-device	pf			# PF packet filter
427#pseudo-device	pflog			# PF log if
428pseudo-device	putter			# for puffs and pud
429
430# Veriexec
431#
432# a pseudo device needed for veriexec
433#pseudo-device	veriexec		1
434#
435# Uncomment the fingerprint methods below that are desired. Note that
436# removing fingerprint methods will have almost no impact on the kernel
437# code size.
438#
439#options VERIFIED_EXEC_FP_RMD160
440#options VERIFIED_EXEC_FP_SHA256
441#options VERIFIED_EXEC_FP_SHA384
442#options VERIFIED_EXEC_FP_SHA512
443#options VERIFIED_EXEC_FP_SHA1
444#options VERIFIED_EXEC_FP_MD5
445