GENERIC revision 1.143
1# $NetBSD: GENERIC,v 1.143 2006/08/26 20:26:44 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/arc/conf/std.arc"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident		"GENERIC-$Revision: 1.143 $"
26
27maxusers	32		# estimated number of users
28
29# Platform support
30options 	PLATFORM_ACER_PICA_61		# PICA, NEC ImageRISCstation
31options 	PLATFORM_DESKTECH_ARCSTATION_I	# DeskStation rPC44
32options 	PLATFORM_DESKTECH_TYNE		# DeskStation Tyne
33options 	PLATFORM_MICROSOFT_JAZZ		# MIPS Magnum
34options 	PLATFORM_NEC_J96A		# NEC Express 5800/240 EISA R4K
35options 	PLATFORM_NEC_JC94		# NEC Express 5800/230 PCI R4K
36options 	PLATFORM_NEC_R94		# NEC RISCstation 2200 EISA
37options 	PLATFORM_NEC_R96	# NEC Express RISCserver, RISCserver 2200
38options 	PLATFORM_NEC_RAX94		# NEC RISCstation 2200 PCI
39options 	PLATFORM_NEC_RD94		# NEC RISCstation 2250
40options 	PLATFORM_SNI_RM200PCI
41
42# Standard system options
43
44options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
45options 	NTP		# NTP phase/frequency locked loop
46
47options 	KTRACE		# system call tracing via ktrace(1)
48#options 	SYSTRACE	# system call vetting via systrace(1)
49
50options 	SYSVMSG		# System V-like message queues
51options 	SYSVSEM		# System V-like semaphores
52#options 	SEMMNI=10	# number of semaphore identifiers
53#options 	SEMMNS=60	# number of semaphores in system
54#options 	SEMUME=10	# max number of undo entries per process
55#options 	SEMMNU=30	# number of undo structures in system
56options 	SYSVSHM		# System V-like memory sharing
57#options 	SHMMAXPGS=1024	# 1024 pages is the default
58options 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
59
60options 	LKM		# loadable kernel modules
61
62options 	USERCONF	# userconf(4) support
63#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
64options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
65
66# Enable experimental buffer queue strategy for better responsiveness under 
67# high disk I/O load. Use it with caution - it's not proven to be stable yet.
68#options 	BUFQ_READPRIO
69#options 	BUFQ_PRIOCSCAN
70
71# Diagnostic/debugging support options
72#options 	DIAGNOSTIC		# cheap kernel consistency checks
73#options 	DEBUG			# expensive debugging checks/support
74#options 	KMEMSTATS		# kernel memory statistics (vmstat -m)
75options 	DDB			# in-kernel debugger
76#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
77#options 	KGDB			# remote gdb
78#options 	KGDB_DEVRATE=19200	# kernel gdb port rate (default 9600)
79#options 	KGDB_DEV="17*256+0"	# device for kernel gdb
80#makeoptions	DEBUG="-g"		# compile full symbol table
81
82# Compatibility options
83#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
84options 	COMPAT_10	# NetBSD 1.0,
85options 	COMPAT_11	# NetBSD 1.1,
86options 	COMPAT_12	# NetBSD 1.2,
87options 	COMPAT_13	# NetBSD 1.3,
88options 	COMPAT_14	# NetBSD 1.4,
89options 	COMPAT_16	# NetBSD 1.6,
90options 	COMPAT_20	# NetBSD 2.0,
91options 	COMPAT_30	# NetBSD 3.0 compatibility.
92options 	COMPAT_43	# and 4.3BSD
93options 	COMPAT_386BSD_MBRPART # recognize old partition ID
94options 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
95
96# mipsel specific
97options 	COMPAT_ULTRIX	# Ultrix binary compatibility
98options 	EXEC_ECOFF	# Ultrix RISC binaries are ECOFF format
99
100# File systems
101file-system 	FFS		# fast filesystem
102file-system 	EXT2FS		# second extended file system (linux)
103file-system 	LFS		# log-structured file system
104file-system 	MFS		# memory file system
105file-system 	NTFS		# Windows/NT file system (experimental)
106file-system 	CD9660		# ISO 9660 + Rock Ridge file system
107file-system 	MSDOSFS		# MS-DOS file system
108file-system 	NFS		# Network File System client
109file-system 	FDESC		# /dev/fd
110file-system 	KERNFS		# /kern
111file-system 	NULLFS		# loopback file system
112file-system 	OVERLAY		# overlay file system
113file-system 	PORTAL		# portal filesystem (still experimental)
114file-system 	PROCFS		# /proc
115file-system 	UMAPFS		# NULLFS + uid and gid remapping
116file-system 	UNION		# union file system
117#file-system	CODA		# Coda File System; also needs vcoda (below)
118file-system	PTYFS		# /dev/pts/N support
119#file-system	TMPFS		# experimental - Efficient memory file-system
120#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
121
122# File system options
123options 	QUOTA		# FFS quotas
124#options 	FFS_EI		# FFS Endian Independent support
125options 	SOFTDEP		# FFS soft updates support.
126#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
127options 	NFSSERVER	# Network File System server
128#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
129				# immutable) behave as system flags.
130#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
131
132# Networking options
133#options 	GATEWAY		# IP packet forwarding
134options 	INET		# IP + ICMP + TCP + UDP
135options 	INET6		# IPV6
136#options 	IPSEC		# IP security
137#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
138#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
139#options 	IPSEC_DEBUG	# debug for IP security
140#options 	MROUTING	# IP multicast routing
141#options 	PIM		# Protocol Independent Multicast
142options 	ISO,TPIP	# OSI networking
143#options 	EON		# OSI tunneling over IP
144options 	NETATALK	# AppleTalk networking protocols
145options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
146options 	PPP_DEFLATE	# Deflate compression support for PPP
147options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
148options 	PFIL_HOOKS	# pfil(9) packet filter hooks
149options 	IPFILTER_LOG	# ipmon(8) log support
150options 	IPFILTER_LOOKUP	# ippool(8) support
151#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
152#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
153
154#options 	ALTQ		# Manipulate network interfaces' output queues
155#options 	ALTQ_BLUE	# Stochastic Fair Blue
156#options 	ALTQ_CBQ	# Class-Based Queueing
157#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
158#options 	ALTQ_FIFOQ	# First-In First-Out Queue
159#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
160#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
161#options 	ALTQ_LOCALQ	# Local queueing discipline
162#options 	ALTQ_PRIQ	# Priority Queueing
163#options 	ALTQ_RED	# Random Early Detection
164#options 	ALTQ_RIO	# RED with IN/OUT
165#options 	ALTQ_WFQ	# Weighted Fair Queueing
166
167# These options enable verbose messages for several subsystems.
168# Warning, these may compile large string tables into the kernel!
169#options 	EISAVERBOSE	# verbose EISA device autoconfig messages
170options 	MIIVERBOSE	# verbose PHY autoconfig messages
171options 	PCIVERBOSE	# verbose PCI device autoconfig messages
172#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
173options 	SCSIVERBOSE	# human readable SCSI error messages
174
175# wscons terminal emulation
176options 	WSEMUL_VT100	# VT100 emulation
177
178# Kernel root file system and dump configuration.
179options 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
180config		netbsd	root on ? type ?
181#config		netbsd	root on sd0a type ffs
182#config		netbsd	root on ? type nfs
183
184#
185# Device configuration
186#
187
188mainbus0	at root
189cpu*		at mainbus0
190
191#### Jazz-Internal bus devices
192
193# PLATFORM_ACER_PICA_61
194# PLATFORM_MICROSOFT_JAZZ
195# PLATFORM_NEC_J96A
196# PLATFORM_NEC_JC94
197# PLATFORM_NEC_R94
198# PLATFORM_NEC_R96
199# PLATFORM_NEC_RAX94
200# PLATFORM_NEC_RD94
201jazzio*		at mainbus0	# Jazz-Internal bus host bridge.
202
203timer0		at jazzio?
204mcclock0 	at jazzio?
205#pc0		at jazzio?
206#opms0		at jazzio?
207vga0		at jazzio?	# Jazz localbus VGA
208pckbc0		at jazzio?	# PC keyboard controller
209com0		at jazzio?
210com1		at jazzio?
211lpt0		at jazzio?
212sn0		at jazzio?
213
214fdc0		at jazzio?
215fd*		at fdc? drive ?
216
217asc0		at jazzio? flags 0x000000	# NCR53C9x SCSI
218osiop*		at jazzio? flags 0x00000	# NCR53C710 SCSI
219oosiop* 	at jazzio?			# NCR53C700 SCSI
220
221#### ISA bus devices
222
223# PLATFORM_ACER_PICA_61
224# PLATFORM_MICROSOFT_JAZZ
225# PLATFORM_NEC_J96A
226# PLATFORM_NEC_R94
227# PLATFORM_NEC_R96
228jazzisabr*	at mainbus0	# Jazz-(E)ISA bus bridge.
229isa*		at jazzisabr?
230
231# PLATFORM_DESKTECH_ARCSTATION_I
232arcsisabr*	at mainbus0	# DeskStation rPC44 ISA host bridge.
233isa*		at arcsisabr?
234
235# PLATFORM_DESKTECH_TYNE
236tyneisabr*	at mainbus0	# DeskStation Tyne ISA host bridge.
237isa*		at tyneisabr?
238
239#isadma0 	at isa?
240
241isapnp0 	at isa?
242
243timer0		at isa? port 0x40 irq 0
244mcclock0 	at isa? port 0x70
245
246#pc0		at isa? irq 1			# generic PC console device
247#opms0		at isa? irq 12			# PS/2 auxiliary port mouse
248vga0		at isa?
249#options 	VGA_RASTERCONSOLE
250options 	VGA_RESET
251pckbc0		at isa?				# PC keyboard controller
252com0		at isa? port 0x3f8 irq 4
253com1		at isa? port 0x2f8 irq 3
254com2		at isa? port 0x3e8 irq 4
255com3		at isa? port 0x2e8 irq 3
256ast0		at isa? port 0x1a0 irq 3	# AST 4-port serial cards
257com*		at ast? slave ?
258
259# Joystick driver. Probe is a little strange; add only if you have one.
260#joy0		at isa? port 0x201
261
262# ISA ST506, ESDI, and IDE controllers
263# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
264# fall back to 16bits I/O if 32bits I/O are not functional).
265# Some controllers pass the initial 32bit test, but will fail later.
266wdc0		at isa? port 0x1f0 irq 14 flags 0x00
267#wdc1		at isa? port 0x170 irq 15 flags 0x00
268wdc*		at isapnp?
269
270# ISA parallel printer interfaces
271lpt0		at isa? port 0x378 irq 7
272
273# ISA network interfaces
274#ec0		at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
275ep*		at isa? port ? irq ?		# 3C509 ethernet cards
276ep*		at isapnp?			# 3C509B ethernet card
277ne0		at isa? port 0x280 irq 9	# NE[12]000 ethernet cards
278ne1		at isa? port 0x300 irq 10
279ne*		at isapnp?			# NE[12]000 PnP ethernet
280we0		at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
281we1		at isa? port 0x300 iomem 0xcc000 irq 10
282
283# XXX - should be configured
284#btl0		at isa? port 0x330 irq ? drq ?
285
286#### PCI bus devices
287
288# PLATFORM_NEC_JC94
289# PLATFORM_NEC_RAX94
290# PLATFORM_NEC_RD94
291necpb*		at mainbus0	# NEC RISCstation PCI host bridge.
292pci*		at necpb?
293pci*		at ppb? bus ?
294options 	PCI_NETBSD_CONFIGURE
295
296ppb*		at pci? dev ? function ?	# PCI-PCI bridges
297
298# PCI cryptographic devices
299hifn*	at pci? dev ? function ?	# Hifn 7755/7811/795x
300ubsec*	at pci? dev ? function ?	# Broadcom 5501/5601/580x/582x
301
302#vga*	 	at pci? dev ? function ?
303tga*		at pci? dev ? function ?	# DEC ZLXp-E[123] Graphics
304
305ahc*		at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
306iha*		at pci? dev ? function ?	# Initio INIC-940/950 SCSI
307pcscp*		at pci? dev ? function ?	# AMD Am53c974 PCscsi-PCI SCSI
308siop*		at pci? dev ? function ?	# NCR/Symbios 53c8xx SCSI
309esiop*		at pci? dev ? function ?	# NCR/Symbios 53c875/95/1010
310trm*		at pci? dev ? function ?	# Tekram DC-395/315 SCSI
311
312# PCI IDE controllers - see pciide(4) for supported hardware.
313# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
314# how to set up DMA modes for this chip. This may work, or may cause
315# a machine hang with some controllers.
316pciide* 	at pci? dev ? function ? flags 0x0000	# GENERIC pciide driver
317acardide*	at pci? dev ? function ?	# Acard IDE controllers
318#aceride* 	at pci? dev ? function ?	# Acer Lab IDE controllers
319artsata*	at pci? dev ? function ?	# Intel i31244 SATA controller
320cmdide* 	at pci? dev ? function ?	# CMD tech IDE controllers
321cypide* 	at pci? dev ? function ?	# Cypress IDE controllers
322hptide* 	at pci? dev ? function ?	# Triones/HighPoint IDE controllers
323optiide* 	at pci? dev ? function ?	# Opti IDE controllers
324pdcide* 	at pci? dev ? function ?	# Promise IDE controllers
325pdcsata* 	at pci? dev ? function ?	# Promise SATA150 controllers
326satalink*	at pci? dev ? function ?	# SiI SATALink controllers
327#siside* 	at pci? dev ? function ?	# SiS IDE controllers
328slide*  	at pci? dev ? function ?	# Symphony Labs IDE controllers
329#viaide* 	at pci? dev ? function ?	# VIA/AMD/Nvidia IDE controllers
330
331epic*		at pci? dev ? function ?	# SMC EPIC/100 Ethernet
332ex*		at pci? dev ? function ?	# 3Com 90x[BC]
333fxp*		at pci? dev ? function ?	# Intel EtherExpress PRO
334ne*		at pci? dev ? function ?	# NE2000-compatible
335pcn*		at pci? dev ? function ?	# AMD PCnet-PCI Ethernet
336rtk*		at pci? dev ? function ?	# Realtek 8129/8139
337sip*		at pci? dev ? function ?	# SiS 900/DP83815 Ethernet
338tlp*		at pci? dev ? function ?	# DECchip 21x4x and clones
339
340#### MII/PHY support
341
342bmtphy*		at mii? phy ?		# Broadcom BCM5201 and BCM5202 PHYs
343exphy*		at mii? phy ?		# 3Com internal PHYs
344icsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
345inphy*		at mii? phy ?		# Intel 82555 PHYs
346iophy*		at mii? phy ?		# Intel 82553 PHYs
347lxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
348nsphy*		at mii? phy ?		# NS83840 PHYs
349nsphyter*	at mii? phy ?		# NS83843 PHYs
350qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
351sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
352tlphy*		at mii? phy ?		# ThunderLAN PHYs
353tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
354ukphy*		at mii? phy ?		# generic unknown PHYs
355
356# SCSI bus support
357scsibus*	at scsi?
358
359#### SCSI bus devices
360
361sd*		at scsibus? target ? lun ?
362st*		at scsibus? target ? lun ?
363cd*		at scsibus? target ? lun ?
364ch*		at scsibus? target ? lun ?
365ss*		at scsibus? target ? lun ?
366uk*		at scsibus? target ? lun ?
367
368# ATA (IDE) bus support
369atabus* 	at ata?
370
371# IDE drives
372# Flags are used only with controllers that support DMA operations
373# and mode settings (e.g. some pciide controllers)
374# The lowest order four bits (rightmost digit) of the flags define the PIO
375# mode to use, the next set of four bits the DMA mode and the third set the
376# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
377# to use, and the last bit must be 1 for this setting to be used.
378# For DMA and UDMA, 0xf (1111) means 'disable'.
379# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
380# (0xc=1100, 0xa=1010, 0xf=1111)
381# 0x0000 means "use whatever the drive claims to support".
382wd*		at atabus? drive ? flags 0x0000
383
384# ATAPI bus support
385atapibus*	at atapi?
386
387#### ATAPI bus devices
388
389# flags have the same meaning as for IDE drives.
390cd*		at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
391sd*		at atapibus? drive ? flags 0x0000	# ATAPI disk drives
392uk*		at atapibus? drive ? flags 0x0000	# ATAPI unknown
393
394#### Workstation Console attachments
395
396wsdisplay*	at vga?
397wsdisplay*	at tga?
398pckbd*		at pckbc?	# PC keyboard (kbd port)
399wskbd*		at pckbd?
400pms*		at pckbc?	# PS/2-style mouse (aux port)
401wsmouse*	at pms?
402
403#### Pseudo devices
404
405pseudo-device 	crypto			# /dev/crypto device
406pseudo-device	swcrypto		# software crypto implementation
407
408# disk/mass storage pseudo-devices
409pseudo-device	ccd		4	# concatenated/striped disk devices
410#pseudo-device	cgd		4	# cryptographic disk devices
411pseudo-device	raid		8	# RAIDframe disk driver
412# Options to enable various other RAIDframe RAID types.
413#options 	RF_INCLUDE_EVENODD=1
414#options 	RF_INCLUDE_RAID5_RS=1
415#options 	RF_INCLUDE_PARITYLOGGING=1
416#options 	RF_INCLUDE_CHAINDECLUSTER=1
417#options 	RF_INCLUDE_INTERDECLUSTER=1
418#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
419#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
420pseudo-device	fss		4	# file system snapshot device
421pseudo-device	md		1	# memory disk device (ramdisk)
422pseudo-device	vnd			# disk-like interface to files
423#options 	VND_COMPRESSION		# compressed vnd(4)
424
425# network pseudo-devices
426pseudo-device	bpfilter		# Berkeley packet filter
427#pseudo-device	carp			# Common Address Redundancy Protocol
428pseudo-device	ipfilter		# IP filter (firewall) and NAT
429pseudo-device	loop		1	# network loopback
430pseudo-device	ppp			# Point-to-Point Protocol
431pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
432pseudo-device	sl			# Serial Line IP
433#pseudo-device	strip			# Starmode Radio IP (Metricom)
434pseudo-device	tun			# network tunneling over tty
435pseudo-device	tap			# virtual Ethernet
436#pseudo-device	gre			# generic L3 over IP tunnel
437pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
438#pseudo-device	faith			# IPv[46] tcp relay translation i/f
439pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
440pseudo-device	vlan			# IEEE 802.1q encapsulation
441pseudo-device	bridge			# simple inter-network bridging
442#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
443
444# miscellaneous pseudo-devices
445pseudo-device	pty			# pseudo-terminals
446#pseudo-device	sequencer	1	# MIDI sequencer
447# rnd works; RND_COM does not on port arc yet.
448pseudo-device	rnd			# /dev/random and in-kernel generator
449#options 	RND_COM			# use "com" randomness as well (BROKEN)
450pseudo-device	clockctl		# user control of clock subsystem
451
452# a pseudo device needed for Coda	# also needs CODA (above)
453#pseudo-device	vcoda		4	# coda minicache <-> venus comm.
454
455# mouse & keyboard multiplexor pseudo-devices
456#pseudo-device	wsmux
457pseudo-device	ksyms			# /dev/ksyms
458#pseudo-device	pf			# PF packet filter
459#pseudo-device	pflog			# PF log if
460
461# Veriexec
462#
463# a pseudo device needed for veriexec
464#pseudo-device	veriexec		1
465#
466# Uncomment the fingerprint methods below that are desired. Note that
467# removing fingerprint methods will have almost no impact on the kernel
468# code size.
469#
470#options VERIFIED_EXEC_FP_RMD160
471#options VERIFIED_EXEC_FP_SHA256
472#options VERIFIED_EXEC_FP_SHA384
473#options VERIFIED_EXEC_FP_SHA512
474#options VERIFIED_EXEC_FP_SHA1
475#options VERIFIED_EXEC_FP_MD5
476