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