GENERIC revision 1.137
1# $NetBSD: GENERIC,v 1.137 2007/12/31 15:32:08 ad 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/x68k/conf/std.x68k"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident 		"GENERIC-$Revision: 1.137 $"
26
27maxusers	8
28
29## System kernel configuration.  See options(4) for more detail.
30
31
32## Options for variants of the m68k MPU
33## you must have at least the correct one; REQUIRED
34options 	M68030
35options 	M68040
36options 	M68060
37## If you want an optimized kernel for a specific processor, use either:
38#makeoptions	CMACHFLAGS="-m68030"
39#makeoptions	CMACHFLAGS="-m68040 -Wa,-m68030 -Wa,-m68851"
40#makeoptions	CMACHFLAGS="-m68060 -Wa,-m68030 -Wa,-m68851"
41
42
43#### System options specific to the x68k port
44
45options 	EXTENDED_MEMORY		# support for >16MB memory
46options 	FPU_EMULATE		# software fpu emulation for MC68030
47options 	FPSP			# floating point emulation for MC68040
48options 	M060SP			# int/fp emulation for MC68060
49#options 	JUPITER			# support for "Jupiter-X" accelerator
50#options 	MAPPEDCOPY		# use page mapping for large copyin/copyout
51#options 	ZSCONSOLE,ZSCN_SPEED="9600"	# use serial console
52
53
54#### System options that are the same for all ports
55
56## Root device configuration: change the ?'s if you are going to use a
57## nonstandard root partition (other than where the kernel is booted from)
58## and/or nonstandard root type (not ffs or nfs).  Normally this can be
59## automagically determined at boot time.
60
61config		netbsd	root on ? type ?
62#config		netbsd	root on sd0 type ffs
63
64## RTC is offset from GMT; -540 means JST-9
65options 	RTC_OFFSET=-540	# hardware clock is this many mins. west of GMT
66
67## System call tracing (see ktrace(1)).
68options 	KTRACE
69
70## Collect statistics on kernel malloc's and free's.  This does have a
71## significant performance hit on slower machines, so it is intended for
72## diagnostic use only.
73#options 	KMEMSTATS
74
75## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
76options 	SYSVMSG		# System V message queues
77options 	SYSVSEM		# System V semaphores
78options 	SYSVSHM		# System V shared memory
79options 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
80
81## Loadable kernel module support
82#options 	LKM
83
84options 	USERCONF	# userconf(4) support
85#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
86options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
87
88# Enable experimental buffer queue strategy for better responsiveness under 
89# high disk I/O load. Use it with caution - it's not proven to be stable yet.
90#options 	BUFQ_READPRIO
91#options 	BUFQ_PRIOCSCAN
92
93## NFS boot options; not supported currently: needs nfsboot program
94#options 	NFS_BOOT_BOOTPARAM
95#options 	NFS_BOOT_BOOTP
96#options 	NFS_BOOT_DHCP
97
98#### Debugging options
99
100## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
101## serial console break or keyboard reset, where the PROM would normally
102## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
103#options 	DDB			# kernel dynamic debugger
104#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
105#options 	DDB_ONPANIC=1		# see also sysctl(8): `ddb.onpanic'
106#options 	PANICBUTTON		# interrupt switch invokes DDB
107
108## You may also use gdb, on another computer connected to this machine over
109## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
110## KGDB_DEV is a dev_t encoded device number of the serial port to use.
111## KGDB is not supported for now.
112#options 	KGDB			# support for kernel gdb
113#options 	KGDB_DEV=0xc00		# kgdb device number
114#options 	KGDB_DEVRATE=9600	# baud rate
115
116## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
117## such that gdb(1) can be used on a kernel coredump.
118
119#makeoptions	DEBUG="-g"
120
121## Adds code to the kernel that does internal consistency checks, and will
122## cause the kernel to panic if corruption of internal data structures
123## is detected.
124#options 	DIAGNOSTIC	# extra kernel sanity checking
125
126## Enable (possibly expensive) debugging code that may also display messages
127## on the system console
128#options 	DEBUG
129
130## These options enable verbose messages for several subsystems.
131## Warning, these may compile large string tables into the kernel!
132#options 	SCSIVERBOSE	# human readable SCSI error messages
133#options 	USBVERBOSE	# verbose USB device autoconfig messages
134
135## `INSECURE' turns off the kernel security level (securelevel = 0 always).
136## This allows writing to /dev/mem, loading kernel modules while multi-user,
137## and other insecurities good only for development work.  Do not use this
138## option on a production machine.
139#options 	INSECURE
140
141## `FDSCRIPTS' allows non-readable but executable scripts by providing a
142## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
143## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
144## opaque file mechanism.  Perl calls this "secure setuid scripts."
145
146#options 	FDSCRIPTS
147#options 	SETUIDSCRIPTS
148
149## Options for compatibility with previous releases foreign system binaries.
150
151options 	COMPAT_43	# 4.3BSD system interfaces
152options 	COMPAT_09	# NetBSD 0.9 binary compatibility
153options 	COMPAT_10	# NetBSD 1.0 binary compatibility
154options 	COMPAT_11	# NetBSD 1.1 binary compatibility
155options 	COMPAT_12	# NetBSD 1.2 binary compatibility
156options 	COMPAT_13	# NetBSD 1.3 binary compatibility
157options 	COMPAT_14	# NetBSD 1.4 binary compatibility
158options 	COMPAT_15	# NetBSD 1.5 binary compatibility
159options 	COMPAT_16	# NetBSD 1.6 binary compatibility
160options 	COMPAT_20	# NetBSD 2.0 binary compatibility
161options 	COMPAT_30	# NetBSD 3.0 compatibility.
162options 	COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
163#options 	COMPAT_M68K4K	# NetBSD/m68k4k binaries
164#options 	COMPAT_SUNOS	# SunOS 4.x binary compatibility; broken
165#options 	COMPAT_SVR4	# SVR4 binary compatibility; broken
166#options 	COMPAT_LINUX	# Linux/m68k binary compatibility
167#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
168options		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
169
170## File systems.
171file-system	FFS		# Berkeley Fast Filesystem
172file-system	NFS		# Sun NFS-compatible filesystem client
173file-system	KERNFS		# kernel data-structure filesystem
174#file-system	NULLFS		# NULL layered filesystem (buggy)
175#file-system 	OVERLAY		# overlay file system
176file-system	MFS		# memory-based filesystem
177#file-system	FDESC		# user file descriptor filesystem
178file-system	UMAPFS		# uid/gid remapping filesystem
179#file-system	LFS		# Log-structured filesystem (experimental)
180#file-system	PORTAL		# portal filesystem (experimental)
181file-system	PROCFS		# /proc
182file-system	CD9660		# ISO 9660 + Rock Ridge file system
183#file-system	UNION		# union file system (a little buggy)
184file-system	MSDOSFS		# MS-DOS FAT filesystem(s).
185#file-system 	ADOSFS		# AmigaDOS filesystem
186file-system	PTYFS		# /dev/pts/N support
187#file-system	TMPFS		# Efficient memory file-system
188#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
189
190## File system options.
191options 	NFSSERVER	# Sun NFS-compatible filesystem server
192#options 	QUOTA		# FFS quotas
193#options 	FFS_EI		# FFS Endian Independent support
194options 	SOFTDEP		# FFS soft updates support.
195#options	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
196options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
197
198## Network protocol support.  In most environments, INET is required.
199options 	INET		# IP (Internet Protocol) v4
200options 	INET6		# IPV6
201#options 	IPSEC		# IP security
202#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
203#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
204#options 	IPSEC_DEBUG	# debug for IP security
205#options 	GATEWAY		# packet forwarding ("router switch")
206#options 	MROUTING	# packet forwarding of multicast packets
207#options 	PIM		# Protocol Independent Multicast
208#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
209#options 	ISO,TPIP	# OSI networking
210#options 	EON		# OSI tunneling over IP
211#options 	NETATALK	# AppleTalk (over Ethernet) protocol
212#options 	NTP		# Network Time Protocol in-kernel support
213#options 	PPS_SYNC	# Add serial line synchronization for NTP
214options 	PFIL_HOOKS	# Add pfil(9) hooks, intended for custom LKMs.
215#options 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
216#options 	IPFILTER_LOOKUP	# ippool(8) support
217#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
218#options 	PPP_BSDCOMP	# Add BSD compression to ppp device
219#options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
220#options 	PPP_FILTER	# Add active filters for ppp (via bpf)
221#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
222
223#options 	ALTQ		# Manipulate network interfaces' output queues
224#options 	ALTQ_BLUE	# Stochastic Fair Blue
225#options 	ALTQ_CBQ	# Class-Based Queueing
226#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
227#options 	ALTQ_FIFOQ	# First-In First-Out Queue
228#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
229#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
230#options 	ALTQ_LOCALQ	# Local queueing discipline
231#options 	ALTQ_PRIQ	# Priority Queueing
232#options 	ALTQ_RED	# Random Early Detection
233#options 	ALTQ_RIO	# RED with IN/OUT
234#options 	ALTQ_WFQ	# Weighted Fair Queueing
235
236
237#### Device configurations
238
239## Fundamental devices; see also std.x68k
240dmac0	at intio0 addr 0xe84000		# DMA controller
241xel0	at intio0
242opm0	at intio0 addr 0xe90000		# OPM: required for fdc
243
244## Display devices and console
245grfbus0	at mainbus0			# bitmapped displays
246grf0	at grfbus0 addr 0		# multiplane graphics
247grf1	at grfbus0 addr 1		# flexible graphics
248
249kbd0	at mfp0				# standard keyboard
250ite0	at grf0 grfaddr 0		# internal terminal emulator
251options 	ITE_KERNEL_ATTR=4	# bold for kernel messages
252					# see /sys/arch/x68k/dev/itevar.h
253pseudo-device	pow		2	# software power switch
254
255## floppy disks
256fdc0	at intio0 addr 0xe94000 intr 96 dma 0 dmaintr 100 # floppy controller
257fd*	at fdc0 unit ?			# builtin floppy drives
258
259## SCSI devices
260scsirom0 at intio0 addr 0xfc0000		# Built-in SCSI BIOS
261scsirom1 at intio0 addr 0xea0020		# External SCSI BIOS
262spc0	at scsirom0				# genuin SCSI
263spc1	at scsirom1				# genuin SCSI
264scsibus* at spc?
265mha0	at scsirom1				# Mankai MK-HA1 (Mach-2)
266scsibus* at mha0
267
268sd*	at scsibus? target ? lun ?	# SCSI disks
269cd*	at scsibus? target ? lun ?	# SCSI CD-ROMs
270#st*	at scsibus? target ? lun ?	# SCSI tapes
271#ss*	at scsibus? target ? lun ?	# SCSI scanners
272#ch*	at scsibus? target ? lun ?	# SCSI changer devices
273#uk*	at scsibus? target ? lun ?	# SCSI unknown devices
274
275## Ports
276zsc0	at intio0 addr 0xe98000 intr 112
277zstty0	at zsc0 channel 0		# built-in RS-232C
278ms0	at zsc0 channel 1		# standard mouse
279#zsc1	at intio0 addr 0xeafc00 intr 113
280#zstty2	at zsc1 channel 0
281#zstty3	at zsc1 channel 1
282#zsc2	at intio0 addr 0xeafc10 intr 114
283#zstty4	at zsc2 channel 0
284#zstty5	at zsc2 channel 1
285par0	at intio0 addr 0xe8c000 	# Builtin printer port
286
287pseudo-device	sram			# battery-backuped static RAM
288pseudo-device	bell			# OPM bell
289
290xcom0	at mainbus0			# NS16550 fast serial
291xcom1	at mainbus0
292
293## Audio device
294vs0 at intio0 addr 0xe92000 dma 3 dmaintr 106
295audio*	at vs?
296
297## Network interfaces
298ne*	at intio0 addr 0xece300 intr 249	# Nereid Ethernet
299ne*	at intio0 addr 0xeceb00 intr 248	# Nereid Ethernet
300neptune0 at intio0 addr 0xece000 intr 249	# Neptune-X
301neptune1 at intio0 addr 0xece400 intr 249	# Neptune-X at alt. addr.
302ne*	at neptune? addr 0x300			# NE2000 or clone
303
304## Bank memory disk
305bmd*	at intio0 addr 0xece3f0		# Nereid
306bmd*	at intio0 addr 0xecebf0		# Nereid
307
308## MII/PHY support for USB ethernet
309#acphy*	at mii? phy ?
310
311## USB Controller and Devices; Experimental
312
313# Nereid USB controllers
314#slhci0	at intio0 addr 0xece380 intr 251
315#slhci1	at intio0 addr 0xeceb80 intr 250
316#options	SLHCI_DEBUG
317
318# USB bus support
319#usb*	at slhci?
320
321# USB Hubs
322#uhub*	at usb?
323#uhub*	at uhub? port ?
324
325# USB HID device
326#uhidev*	at uhub? port ? configuration ? interface ?
327
328# USB Mice; not supported wscons yet
329#ums*	at uhidev? reportid ?
330#wsmouse* at ums? mux 0
331
332# USB Keyboards; not supported wscons yet
333#ukbd*	at uhidev? reportid ?
334#wskbd*	at ukbd? console ? mux 1
335
336# USB serial adapter
337#ucycom*	at uhidev? reportid ?
338
339# USB Generic HID devices
340#uhid*	at uhidev? reportid ?
341
342# USB Printer
343#ulpt*	at uhub? port ? configuration ? interface ?
344
345# USB Modem
346#umodem*	at uhub? port ? configuration ?
347#ucom*	at umodem?
348
349# USB Mass Storage; wd not supported
350#umass*	at uhub? port ? configuration ? interface ?
351#atapibus* at umass? channel ?
352#scsibus* at umass? channel ?
353#wd* at umass?
354
355# USB audio
356#uaudio*	at uhub? port ? configuration ?
357
358# USB MIDI
359#umidi* at uhub? port ? configuration ?
360
361# USB IrDA
362# USB-IrDA bridge spec
363#uirda* at uhub? port ? configuration ? interface ?
364#irframe* at uirda?
365
366# SigmaTel STIr4200 USB/IrDA Bridge
367#ustir* at uhub? port ?
368#irframe* at ustir?
369
370# USB Ethernet adapters
371#aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
372#axe*	at uhub? port ?		# ASIX AX88172 based adapters
373#cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
374#kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
375#url*	at uhub? port ?		# Realtek RTL8150L based adapters
376#udav*	at uhub? port ?		# Davicom DM9601 based adapters
377
378# Prolific PL2301/PL2302 host-to-host adapter
379#upl*	at uhub? port ?
380
381# Serial adapters
382#uftdi*	at uhub? port ?		# FTDI FT8U100AX serial adapter
383#ucom*	at uftdi? portno ?
384
385#umct*	at uhub? port ?		# MCT USB-RS232 serial adapter
386#ucom*	at umct? portno ?
387
388#uplcom*	at uhub? port ?		# I/O DATA USB-RSAQ2 serial adapter
389#ucom*	at uplcom? portno ?
390
391#uvscom*	at uhub? port ?		# SUNTAC Slipper U VS-10U serial adapter
392#ucom*	at uvscom? portno ?
393
394# Diamond Multimedia Rio 500
395#urio*	at uhub? port ?
396
397# USB Handspring Visor
398#uvisor*	at uhub? port ?
399#ucom*	at uvisor?
400
401# Kyocera AIR-EDGE PHONE
402#ukyopon* at uhub? port ?
403#ucom*	at ukyopon? portno ?
404
405# USB scanners
406#uscanner* at uhub? port ?
407
408# USB scanners that use SCSI emulation, e.g., HP5300
409#usscanner* at uhub? port ?
410#scsibus* at usscanner? channel ?
411
412# Y@P firmware loader
413#uyap* at uhub? port ?
414
415# D-Link DSB-R100 USB radio
416#udsbr*	at uhub? port ?
417#radio*	at udsbr?
418
419# USB Generic driver
420#ugen*	at uhub? port ?
421
422
423#### Pseudo devices
424
425## A disk-like interface to files.  Can be used to create floppy, CD,
426## miniroot images, etc.
427
428pseudo-device	vnd	
429#options 	VND_COMPRESSION		# compressed vnd(4)
430
431## Concatenated and striped disks; with this, you can create a software-based
432## disk array similar to a "RAID 0" setup.  See ccd(4).
433
434#pseudo-device	ccd	4
435
436## Cryptographic disk devices.  See cgd(4).
437
438#pseudo-device	cgd	4
439
440## RAIDframe disk driver: software RAID driver.  See raid(4).
441
442pseudo-device	raid	8
443options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
444# Options to enable various other RAIDframe RAID types.
445# options	RF_INCLUDE_EVENODD=1
446# options	RF_INCLUDE_RAID5_RS=1
447# options	RF_INCLUDE_PARITYLOGGING=1
448# options	RF_INCLUDE_CHAINDECLUSTER=1
449# options	RF_INCLUDE_INTERDECLUSTER=1
450# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
451# options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
452
453
454## Memory disk device, used on boot floppies with compressed
455## kernel-plus-root-disk images.
456
457#pseudo-device	md	1
458
459## Loopback network interface; required
460pseudo-device	loop
461
462## SLIP and CSLIP interfaces, for IP over a serial line.
463pseudo-device	sl		
464
465## PPP, the successor to SLIP.  See pppd(8).
466pseudo-device	ppp		
467
468## PPP over Ethernet (RFC 2516)
469pseudo-device	pppoe
470
471## Network "tunnel" device, allowing protocol stacks to run in the userland.
472## This is used by the third-party user-mode "ppp" program, and others.
473#pseudo-device	tun		
474#pseudo-device	tap			# virtual Ethernet
475
476## Generic L3 over IP tunnel
477#pseudo-device	gre			# generic L3 over IP tunnel
478
479## Berkeley Packet Filter, required to run RARPD.  A generic C-language
480## interface that allows selective examining of incoming packets.
481pseudo-device	bpfilter
482
483#pseudo-device	carp			# Common Address Redundancy Protocol
484
485## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
486## one example of the use of the IP Filter.
487#pseudo-device	ipfilter
488
489## for IPv6
490pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
491#pseudo-device	faith			# IPv[46] tcp relay translation i/f
492pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
493
494## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
495pseudo-device	vlan
496
497## Simple inter-network traffic bridging
498pseudo-device	bridge
499#options	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
500pseudo-device	agr			# IEEE 802.3ad link aggregation
501
502#### Other device configuration
503
504## Pseudo ttys, required for network logins and programs like screen.
505
506pseudo-device	pty			# pseudo-terminals
507
508## Random device, used to implement /dev/random (a source of random noise),
509## and generate randomness for some kernel formulae.
510
511pseudo-device	rnd
512
513pseudo-device	clockctl		# user control of clock subsystem
514pseudo-device	ksyms			# /dev/ksyms
515#pseudo-device	pf			# PF packet filter
516#pseudo-device	pflog			# PF log if
517pseudo-device	fss		4	# file system snapshot device
518
519# Veriexec
520#
521# a pseudo device needed for veriexec
522#pseudo-device	veriexec		1
523#
524# Uncomment the fingerprint methods below that are desired. Note that
525# removing fingerprint methods will have almost no impact on the kernel
526# code size.
527#
528#options VERIFIED_EXEC_FP_RMD160
529#options VERIFIED_EXEC_FP_SHA256
530#options VERIFIED_EXEC_FP_SHA384
531#options VERIFIED_EXEC_FP_SHA512
532#options VERIFIED_EXEC_FP_SHA1
533#options VERIFIED_EXEC_FP_MD5
534