GENERIC revision 1.3
11.3Sjmmv# $NetBSD: GENERIC,v 1.3 2008/02/29 14:42:33 jmmv Exp $
21.1Sgarbled#
31.1Sgarbled# GENERIC machine description file
41.1Sgarbled# 
51.1Sgarbled# This machine description file is used to generate the default NetBSD
61.1Sgarbled# kernel.  The generic kernel does not include all options, subsystems
71.1Sgarbled# and device drivers, but should be useful for most applications.
81.1Sgarbled#
91.1Sgarbled# The machine description file can be customised for your specific
101.1Sgarbled# machine to reduce the kernel size and improve its performance.
111.1Sgarbled#
121.1Sgarbled# For further information on compiling NetBSD kernels, see the config(8)
131.1Sgarbled# man page.
141.1Sgarbled#
151.1Sgarbled# For further information on hardware support for this architecture, see
161.1Sgarbled# the intro(4) man page.  For further information about kernel options
171.1Sgarbled# for this architecture, see the options(4) man page.  For an explanation
181.1Sgarbled# of each device driver in this file see the section 4 man page for the
191.1Sgarbled# device.
201.1Sgarbled
211.1Sgarbledinclude 	"arch/rs6000/conf/std.rs6000"
221.1Sgarbled
231.1Sgarbledoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
241.1Sgarbled
251.1Sgarbled#makeoptions	COPTS="-O2 -mno-powerpc -mno-power"	# wheeee
261.1Sgarbled
271.3Sjmmv#ident		"GENERIC-$Revision: 1.3 $"
281.1Sgarbled
291.1Sgarbledmaxusers	32
301.1Sgarbled
311.1Sgarbled# Platform support
321.1Sgarbled
331.1Sgarbledoptions		PIC_IOCC
341.1Sgarbled
351.1Sgarbled# Standard system options
361.1Sgarbled
371.1Sgarbledoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
381.1Sgarbledoptions 	NTP		# NTP phase/frequency locked loop
391.1Sgarbled
401.1Sgarbledoptions 	KTRACE		# system call tracing via ktrace(1)
411.1Sgarbled
421.1Sgarbledoptions 	SYSVMSG		# System V-like message queues
431.1Sgarbledoptions 	SYSVSEM		# System V-like semaphores
441.1Sgarbled#options 	SEMMNI=10	# number of semaphore identifiers
451.1Sgarbled#options 	SEMMNS=60	# number of semaphores in system
461.1Sgarbled#options 	SEMUME=10	# max number of undo entries per process
471.1Sgarbled#options 	SEMMNU=30	# number of undo structures in system
481.1Sgarbledoptions 	SYSVSHM		# System V-like memory sharing
491.1Sgarbled#options 	SHMMAXPGS=1024	# 1024 pages is the default
501.1Sgarbledoptions 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
511.1Sgarbled
521.1Sgarbledoptions 	LKM		# loadable kernel modules
531.1Sgarbled
541.1Sgarbledoptions 	USERCONF	# userconf(4) support
551.1Sgarbled#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
561.1Sgarbledoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
571.1Sgarbled
581.1Sgarbled# Enable experimental buffer queue strategy for better responsiveness under 
591.1Sgarbled# high disk I/O load. Use it with caution - it's not proven to be stable yet.
601.1Sgarbled#options 	BUFQ_READPRIO
611.1Sgarbled#options 	BUFQ_PRIOCSCAN
621.1Sgarbled
631.1Sgarbled# Diagnostic/debugging support options
641.1Sgarbled#options 	DIAGNOSTIC	# cheap kernel consistency checks
651.1Sgarbledoptions 	DEBUG		# expensive debugging checks/support
661.1Sgarbledoptions		PMAPDEBUG
671.1Sgarbled#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
681.1Sgarbledoptions 	DDB		# in-kernel debugger
691.1Sgarbled#options 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
701.1Sgarbled#makeoptions	DEBUG="-g"
711.1Sgarbled
721.1Sgarbled# Compatibility options
731.1Sgarbled#options 	COMPAT_13	# NetBSD 1.3,
741.1Sgarbled#options 	COMPAT_14	# NetBSD 1.4,
751.1Sgarbled#options 	COMPAT_15	# NetBSD 1.5,
761.1Sgarbled#options 	COMPAT_16	# NetBSD 1.6,
771.1Sgarbled#options 	COMPAT_20	# NetBSD 2.0,
781.1Sgarbled#options 	COMPAT_30	# NetBSD 3.0 compatibility.
791.1Sgarbledoptions 	COMPAT_43	# and 4.3BSD
801.1Sgarbled#options 	COMPAT_LINUX	# Linux binary compatibility
811.1Sgarbled#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
821.1Sgarbledoptions		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
831.1Sgarbled
841.1Sgarbled# File systems
851.1Sgarbledfile-system 	FFS		# UFS
861.1Sgarbledfile-system	EXT2FS		# second extended file system (linux)
871.1Sgarbled#file-system	LFS		# log-structured file system
881.1Sgarbledfile-system 	MFS		# memory file system
891.1Sgarbledfile-system 	NFS		# Network File System client
901.1Sgarbled#file-system	NTFS		# Windows/NT file system (experimental)
911.1Sgarbledfile-system 	CD9660		# ISO 9660 + Rock Ridge file system
921.1Sgarbledfile-system 	MSDOSFS		# MS-DOS file system
931.1Sgarbled#file-system 	FDESC		# /dev/fd
941.1Sgarbledfile-system 	KERNFS		# /kern
951.1Sgarbledfile-system 	NULLFS		# loopback file system
961.1Sgarbled#file-system	OVERLAY		# overlay file system
971.1Sgarbled#file-system 	PORTAL		# portal filesystem (still experimental)
981.1Sgarbledfile-system 	PROCFS		# /proc
991.1Sgarbled#file-system 	UMAPFS		# NULLFS + uid and gid remapping
1001.1Sgarbledfile-system 	UNION		# union file system
1011.1Sgarbled#file-system	CODA		# Coda File System; also needs vcoda (below)
1021.1Sgarbledfile-system	PTYFS		# /dev/pts/N support
1031.1Sgarbled#file-system	TMPFS		# experimental - Efficient memory file-system
1041.1Sgarbled#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
1051.1Sgarbled
1061.1Sgarbled# File system options
1071.1Sgarbledoptions 	QUOTA		# UFS quotas
1081.1Sgarbled#options 	FFS_EI		# FFS Endian Independant support
1091.1Sgarbledoptions 	SOFTDEP		# FFS soft updates support.
1101.1Sgarbled#options	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
1111.1Sgarbledoptions 	NFSSERVER	# Network File System server
1121.1Sgarbled#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
1131.1Sgarbled#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
1141.1Sgarbled 				# immutable) behave as system flags.
1151.1Sgarbled
1161.1Sgarbled# Networking options
1171.1Sgarbled#options 	GATEWAY		# packet forwarding
1181.1Sgarbledoptions 	INET		# IP + ICMP + TCP + UDP
1191.1Sgarbledoptions 	INET6		# IPv6
1201.1Sgarbled#options 	IPSEC		# IP security
1211.1Sgarbled#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
1221.1Sgarbled#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
1231.1Sgarbled#options 	IPSEC_DEBUG	# debug for IP security
1241.1Sgarbled#options 	MROUTING	# IP multicast routing
1251.1Sgarbled#options 	PIM		# Protocol Independent Multicast
1261.1Sgarbled#options 	NETATALK	# AppleTalk networking protocols
1271.1Sgarbledoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1281.1Sgarbledoptions 	PPP_DEFLATE	# Deflate compression support for PPP
1291.1Sgarbledoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1301.1Sgarbledoptions 	PFIL_HOOKS	# pfil(9) packet filter hooks
1311.1Sgarbledoptions 	IPFILTER_LOG	# ipmon(8) log support
1321.1Sgarbled#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
1331.1Sgarbled#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1341.1Sgarbled
1351.1Sgarbled#options 	ALTQ		# Manipulate network interfaces' output queues
1361.1Sgarbled#options 	ALTQ_BLUE	# Stochastic Fair Blue
1371.1Sgarbled#options 	ALTQ_CBQ	# Class-Based Queueing
1381.1Sgarbled#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1391.1Sgarbled#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1401.1Sgarbled#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1411.1Sgarbled#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1421.1Sgarbled#options 	ALTQ_LOCALQ	# Local queueing discipline
1431.1Sgarbled#options 	ALTQ_PRIQ	# Priority Queueing
1441.1Sgarbled#options 	ALTQ_RED	# Random Early Detection
1451.1Sgarbled#options 	ALTQ_RIO	# RED with IN/OUT
1461.1Sgarbled#options 	ALTQ_WFQ	# Weighted Fair Queueing
1471.1Sgarbled
1481.1Sgarbled# These options enable verbose messages for several subsystems.
1491.1Sgarbled# Warning, these may compile large string tables into the kernel!
1501.1Sgarbled#options 	MIIVERBOSE	# verbose PHY autoconfig messages
1511.1Sgarbledoptions 	SCSIVERBOSE	# human readable SCSI error messages
1521.1Sgarbledoptions		MCAVERBOSE	# verbose MCA device autoconfig messages
1531.1Sgarbled
1541.1Sgarbled#options 	NFS_BOOT_BOOTP
1551.1Sgarbledoptions 	NFS_BOOT_BOOTPARAM
1561.1Sgarbledoptions 	NFS_BOOT_DHCP
1571.1Sgarbled
1581.1Sgarbled#
1591.1Sgarbled# wscons options
1601.1Sgarbled#
1611.1Sgarbled# builtin terminal emulations
1621.1Sgarbledoptions 	WSEMUL_VT100		# VT100 / VT220 emulation
1631.1Sgarbled# different kernel output - see dev/wscons/wsdisplayvar.h
1641.1Sgarbledoptions 	WS_KERNEL_FG=WSCOL_GREEN
1651.1Sgarbled#options 	WS_KERNEL_BG=WSCOL_BLACK
1661.1Sgarbled# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
1671.1Sgarbled#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
1681.1Sgarbled# allocate a number of virtual screens at autoconfiguration time
1691.1Sgarbled#options 	WSDISPLAY_DEFAULTSCREENS=4
1701.1Sgarbled# use a large software cursor that doesn't blink
1711.1Sgarbledoptions 	PCDISPLAY_SOFTCURSOR
1721.1Sgarbled
1731.1Sgarbled# Kernel root file system and dump configuration.
1741.1Sgarbledconfig	netbsd	root on ? type ?
1751.1Sgarbled#config	netbsd	root on tlp0 type nfs
1761.1Sgarbled#config	netbsd	root on pcn0 type nfs
1771.1Sgarbled
1781.1Sgarbled
1791.1Sgarbled#
1801.1Sgarbled# Device configuration
1811.1Sgarbled#
1821.1Sgarbled
1831.1Sgarbledmainbus0 at root
1841.1Sgarbledcpu0	at mainbus0
1851.1Sgarbledmca0	at mainbus0
1861.1Sgarbled
1871.1Sgarbledcom*	at mca? slot ?
1881.1Sgarbled
1891.1Sgarbled# I/O Planar
1901.1Sgarbledioplanar* at mca? slot ?
1911.1Sgarbled
1921.1Sgarbled# I/O Planar devices
1931.1Sgarbledcom* at ioplanar?
1941.1Sgarbled
1951.1Sgarbled# Basic Bus Support
1961.1Sgarbled
1971.1Sgarbled# SCSI devices
1981.1Sgarbled#sd*	at scsibus? target ? lun ?	# SCSI disk drives
1991.1Sgarbled#st*	at scsibus? target ? lun ?	# SCSI tape drives
2001.1Sgarbled#cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
2011.1Sgarbled#ch*	at scsibus? target ? lun ?	# SCSI autochangers
2021.1Sgarbled#ss*	at scsibus? target ? lun ?	# SCSI scanners
2031.1Sgarbled#uk*	at scsibus? target ? lun ?	# SCSI unknown
2041.1Sgarbled
2051.1Sgarbled# Pull in optional local configuration
2061.3Sjmmvcinclude "arch/rs6000/conf/GENERIC.local"
2071.1Sgarbled
2081.1Sgarbled# Pseudo-Devices
2091.1Sgarbled
2101.1Sgarbled# Not yet ready -- prep lacks generic soft interrupts
2111.1Sgarbled#pseudo-device 	crypto		# /dev/crypto device
2121.1Sgarbled#pseudo-device	swcrypto	# software crypto implementation
2131.1Sgarbled
2141.1Sgarbled# disk/mass storage pseudo-devices
2151.1Sgarbled#pseudo-device	ccd		4	# concatenated/striped disk devices
2161.1Sgarbled#pseudo-device	cgd		4	# cryptographic disk devices
2171.1Sgarbled#pseudo-device	raid		8	# RAIDframe disk driver
2181.1Sgarbled#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
2191.1Sgarbled# Options to enable various other RAIDframe RAID types.
2201.1Sgarbled# options	RF_INCLUDE_EVENODD=1
2211.1Sgarbled# options	RF_INCLUDE_RAID5_RS=1
2221.1Sgarbled# options	RF_INCLUDE_PARITYLOGGING=1
2231.1Sgarbled# options	RF_INCLUDE_CHAINDECLUSTER=1
2241.1Sgarbled# options	RF_INCLUDE_INTERDECLUSTER=1
2251.1Sgarbled# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
2261.1Sgarbled# options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
2271.1Sgarbledpseudo-device	fss		4	# file system snapshot device
2281.1Sgarbledpseudo-device	md		1	# memory disk device (ramdisk)
2291.1Sgarbledpseudo-device	vnd			# disk-like interface to files
2301.1Sgarbled#options 	VND_COMPRESSION		# compressed vnd(4)
2311.1Sgarbled
2321.1Sgarbled# network pseudo-devices
2331.1Sgarbledpseudo-device	loop			# network loopback
2341.1Sgarbledpseudo-device	bpfilter		# Berkeley packet filter
2351.1Sgarbled#pseudo-device	carp			# Common Address Redundancy Protocol
2361.1Sgarbledpseudo-device	ipfilter		# IP filter (firewall) and NAT
2371.1Sgarbledpseudo-device	ppp			# Point-to-Point Protocol
2381.1Sgarbledpseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
2391.1Sgarbled#pseudo-device	sl			# Serial Line IP
2401.1Sgarbledpseudo-device	strip			# Starmode Radio IP (Metricom)
2411.1Sgarbledpseudo-device	tun			# network tunneling over tty
2421.1Sgarbledpseudo-device	tap			# virtual Ethernet
2431.1Sgarbledpseudo-device	gre			# generic L3 over IP tunnel
2441.1Sgarbledpseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
2451.1Sgarbled#pseudo-device	faith			# IPv[46] tcp relay translation i/f
2461.1Sgarbledpseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
2471.1Sgarbledpseudo-device	vlan			# IEEE 802.1q encapsulation
2481.1Sgarbledpseudo-device	bridge			# simple inter-network bridging
2491.1Sgarbled#options	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
2501.1Sgarbled
2511.1Sgarbled# miscellaneous pseudo-devices
2521.1Sgarbledpseudo-device	pty			# pseudo-terminals
2531.1Sgarbled#pseudo-device	sequencer	1	# MIDI sequencer
2541.1Sgarbledpseudo-device	rnd			# /dev/random and in-kernel generator
2551.1Sgarbled#options 	RND_COM			# use "com" randomness as well
2561.1Sgarbledpseudo-device	clockctl		# user control of clock subsystem
2571.1Sgarbledpseudo-device	ksyms			# /dev/ksyms
2581.1Sgarbled#pseudo-device	pf			# PF packet filter
2591.1Sgarbled#pseudo-device	pflog			# PF log if
2601.1Sgarbled
2611.1Sgarbled# a pseudo device needed for Coda	# also needs CODA (above)
2621.1Sgarbled#pseudo-device	vcoda		4	# coda minicache <-> venus comm.
2631.1Sgarbled
2641.1Sgarbled# wscons pseudo-devices
2651.1Sgarbledpseudo-device	wsmux			# mouse & keyboard multiplexor
2661.1Sgarbledpseudo-device	wsfont
2671.1Sgarbled
2681.1Sgarbled# Veriexec
2691.1Sgarbled#options VERIFIED_EXEC
2701.1Sgarbled#
2711.1Sgarbled# a pseudo device needed for veriexec
2721.1Sgarbled#pseudo-device	veriexec		1
2731.1Sgarbled#
2741.1Sgarbled# Uncomment the fingerprint methods below that are desired. Note that
2751.1Sgarbled# removing fingerprint methods will have almost no impact on the kernel
2761.1Sgarbled# code size.
2771.1Sgarbled#
2781.1Sgarbled#options VERIFIED_EXEC_FP_RMD160
2791.1Sgarbled#options VERIFIED_EXEC_FP_SHA256
2801.1Sgarbled#options VERIFIED_EXEC_FP_SHA384
2811.1Sgarbled#options VERIFIED_EXEC_FP_SHA512
2821.1Sgarbled#options VERIFIED_EXEC_FP_SHA1
2831.1Sgarbled#options VERIFIED_EXEC_FP_MD5
284