GENERIC revision 1.187
11.187Shauke# $NetBSD: GENERIC,v 1.187 2008/05/22 19:49:43 hauke Exp $
21.21Scgd#
31.117Sgmcgarry# GENERIC machine description file
41.117Sgmcgarry# 
51.117Sgmcgarry# This machine description file is used to generate the default NetBSD
61.117Sgmcgarry# kernel.  The generic kernel does not include all options, subsystems
71.117Sgmcgarry# and device drivers, but should be useful for most applications.
81.117Sgmcgarry#
91.117Sgmcgarry# The machine description file can be customised for your specific
101.117Sgmcgarry# machine to reduce the kernel size and improve its performance.
111.117Sgmcgarry#
121.117Sgmcgarry# For further information on compiling NetBSD kernels, see the config(8)
131.117Sgmcgarry# man page.
141.117Sgmcgarry#
151.117Sgmcgarry# For further information on hardware support for this architecture, see
161.117Sgmcgarry# the intro(4) man page.  For further information about kernel options
171.117Sgmcgarry# for this architecture, see the options(4) man page.  For an explanation
181.117Sgmcgarry# of each device driver in this file see the section 4 man page for the
191.117Sgmcgarry# device.
201.1Sbriggs
211.117Sgmcgarryinclude		"arch/mac68k/conf/std.mac68k"
221.95Shubertf
231.125Satatatoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
241.125Satatat
251.187Shauke#ident 		"GENERIC-$Revision: 1.187 $"
261.2Sbriggs
271.74Sscottrmaxusers	16		# estimated number of users
281.71Sscottr
291.71Sscottr# CPU support.  At least one is REQUIRED.
301.71Sscottroptions 	M68040
311.71Sscottroptions 	M68030
321.71Sscottroptions 	M68020		# Note:  must have 68851 PMMU
331.71Sscottr
341.71Sscottr# CPU-related options.
351.71Sscottroptions 	FPSP
361.71Sscottroptions 	FPU_EMULATE
371.2Sbriggs
381.2Sbriggs# Standard system options
391.71Sscottr
401.71Sscottroptions 	INSECURE	# disable kernel security levels
411.71Sscottr
421.71Sscottroptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
431.71Sscottr#options 	NTP		# NTP phase/frequency locked loop
441.71Sscottr
451.71Sscottroptions 	KTRACE		# system call tracing via ktrace(1)
461.71Sscottr
471.71Sscottroptions 	SYSVMSG		# System V-like message queues
481.71Sscottroptions 	SYSVSEM		# System V-like semaphores
491.71Sscottroptions 	SYSVSHM		# System V-like memory sharing
501.146Sbouyeroptions 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
511.71Sscottr
521.54Sscottroptions 	LKM		# loadable kernel modules
531.120Sjdolecek
541.129Slukemoptions 	USERCONF	# userconf(4) support
551.120Sjdolecek#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
561.147Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
571.134Sjunyoung
581.135Swiz# Enable experimental buffer queue strategy for better responsiveness under 
591.134Sjunyoung# high disk I/O load. Use it with caution - it's not proven to be stable yet.
601.157Stsutsui#options 	BUFQ_READPRIO
611.157Stsutsui#options 	BUFQ_PRIOCSCAN
621.54Sscottr
631.71Sscottr# Diagnostic/debugging support options
641.121Sfredb#options 	DIAGNOSTIC	# cheap kernel consistency checks
651.71Sscottr#options 	DEBUG		# expensive debugging checks/support
661.71Sscottroptions 	KMEMSTATS	# kernel memory statistics (vmstat -m)
671.114Slukemoptions 	DDB			# in-kernel debugger
681.70Slukem#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
691.114Slukem#options 	KGDB			# remote debugger
701.114Slukem#options 	KGDB_DEV=0xc01		# kgdb device number (dev_t)
711.114Slukem#options 	KGDB_DEVRATE=38400	# baud rate
721.71Sscottr#makeoptions	DEBUG="-g"	# compile full symbol table
731.54Sscottr
741.54Sscottr# Compatibility options
751.71Sscottr#options 	COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
761.71Sscottr#options 	COMPAT_09	# NetBSD 0.9,
771.71Sscottroptions 	COMPAT_10	# NetBSD 1.0,
781.71Sscottroptions 	COMPAT_11	# NetBSD 1.1,
791.71Sscottroptions 	COMPAT_12	# NetBSD 1.2,
801.72Skleinkoptions 	COMPAT_13	# NetBSD 1.3,
811.89Saugustssoptions 	COMPAT_14	# NetBSD 1.4,
821.122Sfredboptions 	COMPAT_15	# NetBSD 1.5,
831.139Scloptions 	COMPAT_16	# NetBSD 1.6,
841.156Ssimonboptions 	COMPAT_20	# NetBSD 2.0,
851.163Schristosoptions 	COMPAT_30	# NetBSD 3.0 compatibility.
861.71Sscottroptions 	COMPAT_43	# and 4.3BSD
871.111Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
881.71Sscottr
891.121Sfredb# The following is needed to run pre-NetBSD 1.6 binaries under ELF.
901.123Sshibaoptions 	COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
911.123Sshibaoptions 	EXEC_AOUT	# support for exec'ing a.out
921.121Sfredb
931.121Sfredb#options 	COMPAT_LINUX	# compatibility with Linux/m68k binaries
941.121Sfredb#options 	COMPAT_M68K4K	# compatibility with NetBSD/m68k4k binaries
951.121Sfredb#options 	COMPAT_SUNOS	# compatibility with SunOS 4.x binaries
961.86Skleink#options 	COMPAT_SVR4	# compatibility with SVR4 binaries
971.149Schristosoptions		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
981.2Sbriggs
991.65Sscottr# File systems
1001.71Sscottrfile-system 	FFS		# UFS
1011.71Sscottrfile-system 	EXT2FS		# second extended file system (linux)
1021.71Sscottrfile-system 	LFS		# log-structured file system
1031.71Sscottrfile-system 	MFS		# memory file system
1041.71Sscottrfile-system 	NFS		# Network File System client
1051.71Sscottrfile-system 	CD9660		# ISO 9660 + Rock Ridge file system
1061.71Sscottrfile-system 	MSDOSFS		# MS-DOS file system
1071.71Sscottrfile-system 	FDESC		# /dev/fd
1081.71Sscottrfile-system 	KERNFS		# /kern
1091.71Sscottrfile-system 	NULLFS		# loopback file system
1101.94Swrstudenfile-system 	OVERLAY		# overlay file system
1111.71Sscottrfile-system 	PORTAL		# portal filesystem (still experimental)
1121.71Sscottrfile-system 	PROCFS		# /proc
1131.71Sscottrfile-system 	UMAPFS		# NULLFS + uid and gid remapping
1141.71Sscottrfile-system 	UNION		# union file system
1151.90Sfredbfile-system 	CODA		# Venus/Coda distributed file system
1161.164Schristosfile-system	PTYFS		# /dev/pts/N support
1171.183Sjmmvfile-system	TMPFS		# Efficient memory file-system
1181.169Sreinoud#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
1191.179Sdillo#file-system	HFS		# experimental - Apple HFS+ (read-only)
1201.55Sthorpej
1211.65Sscottr# File system options
1221.71Sscottroptions 	QUOTA		# UFS quotas
1231.75Sbouyer#options 	FFS_EI		# FFS Endian Independant support
1241.103Sfvdloptions 	SOFTDEP		# FFS soft updates support.
1251.152Srumble#options	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
1261.71Sscottroptions 	NFSSERVER	# Network File System server
1271.166Stsutsui#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
1281.71Sscottr#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
1291.71Sscottr				# immutable) behave as system flags.
1301.92Sitojun
1311.7Sbriggs# Networking options
1321.71Sscottroptions 	GATEWAY		# packet forwarding
1331.71Sscottroptions 	INET		# IP + ICMP + TCP + UDP
1341.92Sitojunoptions 	INET6		# IPV6
1351.92Sitojun#options 	IPSEC		# IP security
1361.92Sitojun#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
1371.159Stron#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
1381.92Sitojun#options 	IPSEC_DEBUG	# debug for IP security
1391.71Sscottr#options 	MROUTING	# IP multicast routing
1401.148Smanu#options 	PIM		# Protocol Independent Multicast
1411.182Sadrianp#options 	ISO,TPIP	# OSI
1421.105Ssommerfe#options 	EON		# OSI tunneling over IP
1431.71Sscottroptions 	NETATALK	# AppleTalk networking protocols
1441.88Schristosoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1451.88Schristosoptions 	PPP_DEFLATE	# Deflate compression support for PPP
1461.88Schristosoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1471.88Schristosoptions 	PFIL_HOOKS	# pfil(9) packet filter hooks
1481.121Sfredboptions 	IPFILTER_LOG	# ipmon(8) log support
1491.176Schristosoptions 	IPFILTER_LOOKUP	# ippool(8) support
1501.131Smartti#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
1511.111Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1521.71Sscottr
1531.145Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
1541.145Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
1551.145Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
1561.145Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1571.145Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1581.145Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1591.145Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1601.145Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
1611.145Sabs#options 	ALTQ_PRIQ	# Priority Queueing
1621.145Sabs#options 	ALTQ_RED	# Random Early Detection
1631.145Sabs#options 	ALTQ_RIO	# RED with IN/OUT
1641.145Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
1651.145Sabs
1661.71Sscottr# These options enable verbose messages for several subsystems.
1671.71Sscottr# Warning, these may compile large string tables into the kernel!
1681.71Sscottroptions 	SCSIVERBOSE	# human readable SCSI error messages
1691.1Sbriggs
1701.96Sscottr# wscons options
1711.96Sscottr#options 	WSEMUL_SUN		# sun terminal emulation
1721.96Sscottroptions 	WSEMUL_VT100		# VT100 / VT220 emulation
1731.96Sscottroptions 	WSDISPLAY_COMPAT_ITEFONT # use ite font (6x10)
1741.96Sscottr
1751.96Sscottr# rcons options; note that 1-bit and 8-bit displays are supported by default.
1761.96Sscottroptions 	RCONS_2BPP		# Support for 2-bit display
1771.96Sscottroptions 	RCONS_4BPP		# Support for 4-bit display
1781.96Sscottroptions 	RCONS_16BPP		# Support for 16-bit display
1791.96Sscottr
1801.9Sbriggs# Mac-specific options
1811.79Sscottr#options 	ALTXBUTTONS	# Map Opt-{1,2,3} to mouse buttons
1821.87Sbriggs#options 	DISABLE_EXT_CACHE # If really paranoid, disable IIci ext. cache
1831.79Sscottroptions 	GRF_COMPAT	# Include grf compatibility code
1841.77Sscottr#options 	MRG_ADB		# Use ROM-based ADB driver
1851.79Sscottroptions 	ZS_CONSOLE_ABORT
1861.84Sscottr
1871.93Sscottroptions 	NFS_BOOT_DHCP
1881.71Sscottr
1891.71Sscottr# Kernel root file system and dump configuration.
1901.55Sthorpejconfig		netbsd	root on ? type ?
1911.1Sbriggs
1921.71Sscottr#
1931.71Sscottr# Device configuration
1941.71Sscottr#
1951.71Sscottr
1961.71Sscottrmainbus0 at root
1971.71Sscottr
1981.71Sscottr
1991.71Sscottr# Basic Bus Support
2001.71Sscottr
2011.71Sscottr# On-board I/O bus support
2021.71Sscottrobio0 at mainbus?
2031.71Sscottr
2041.71Sscottr# NuBus support
2051.71Sscottrnubus0 at mainbus?
2061.71Sscottr
2071.71Sscottr
2081.71Sscottr# Console Devices
2091.71Sscottr
2101.71Sscottr# Apple Desktop Bus interface
2111.80Senderadb0	at obio?
2121.80Senderaed*	at adb?				# ADB event device
2131.96Sscottrakbd*	at adb?				# ADB keyboard
2141.96Sscottrams*	at adb?				# ADB mouse
2151.71Sscottr
2161.71Sscottr# Basic frame buffer support
2171.71Sscottrintvid0	at obio?			# Internal video hardware
2181.71Sscottrmacvid*	at nubus?			# NuBus video card
2191.71Sscottr
2201.71Sscottr# Device-independent frame buffer interface
2211.96Sscottrmacfb*	at intvid?
2221.96Sscottrmacfb*	at macvid?
2231.71Sscottr
2241.96Sscottr# Workstation Console devices
2251.99Sscottrwsdisplay* at macfb? console ?
2261.99Sscottrwskbd*	at akbd? console ?
2271.99Sscottrwsmouse* at ams?
2281.71Sscottr
2291.71Sscottr
2301.187Shauke# Centronics printer port
2311.187Shauke
2321.187Shauke# CSI Hurdler Centronics Parallel Interface
2331.187Shaukecpi*	at nubus?
2341.187Shauke
2351.187Shauke
2361.71Sscottr# Serial Devices
2371.71Sscottr
2381.71Sscottr# On-board serial interface
2391.71Sscottrzsc0	at obio?
2401.71Sscottrzstty*	at zsc? channel ?
2411.71Sscottr
2421.71Sscottr
2431.71Sscottr# SCSI Controllers and Devices
2441.71Sscottr
2451.71Sscottr# SCSI controllers
2461.71Sscottr# XXX - use only one of ncrscsi or sbc
2471.151Schsncrscsi0 at obio? addr 0		# SCSI NCR 5380
2481.151Schs#sbc0	at obio? addr 0 flags 0x1	# MI SCSI NCR 5380
2491.151Schsesp0	at obio? addr 0			# SCSI NCR 53C9x
2501.151Schsesp1	at obio? addr 1			# SCSI NCR 53C9x
2511.71Sscottr
2521.71Sscottr# SCSI bus support
2531.71Sscottrscsibus* at scsi?
2541.71Sscottr
2551.71Sscottr# SCSI devices
2561.71Sscottrsd*	at scsibus? target ? lun ?	# SCSI disk drives
2571.71Sscottrst*	at scsibus? target ? lun ?	# SCSI tape drives
2581.71Sscottrcd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
2591.71Sscottrch*	at scsibus? target ? lun ?	# SCSI autochangers
2601.71Sscottrse*	at scsibus? target ? lun ?	# SCSI ethernet
2611.71Sscottrss*	at scsibus? target ? lun ?	# SCSI scanners
2621.71Sscottruk*	at scsibus? target ? lun ?	# SCSI unknown
2631.126Sshiba
2641.126Sshiba# IDE controller and devices
2651.126Sshibawdc*	at obio? flags 0x1000
2661.141Slukematabus* at ata?
2671.140Sbouyerwd*	at atabus? drive ?
2681.84Sscottr
2691.84Sscottr
2701.84Sscottr# Miscellaneous mass storage devices
2711.84Sscottr
2721.84Sscottr# IWM floppy disk controller
2731.84Sscottriwm0	at obio?			# Sony driver (800K GCR)
2741.84Sscottrfd*	at iwm? drive ?
2751.71Sscottr
2761.71Sscottr
2771.71Sscottr# Network Interfaces
2781.71Sscottr
2791.71Sscottr# On-board Ethernet controllers
2801.71Sscottrsn*	at obio?			# SONIC-based (DP83932, DP83916)
2811.71Sscottrmc*	at obio?			# MACE-based
2821.71Sscottr
2831.71Sscottr# NuBus Ethernet controllers
2841.71Sscottrae*	at nubus?			# DP8390-based
2851.71Sscottrsn*	at nubus?			# SONIC-based (DP83932, DP83916)
2861.106Sbriggssm*	at nubus?			# SMC 91cxx-based
2871.128Sitojunnetdock*	at nubus?		# Asante NetDock, Newer Ether MicroDock
2881.71Sscottr
2891.106Sbriggsnsphy*	at mii? phy ?
2901.106Sbriggsukphy*	at mii? phy ?
2911.71Sscottr
2921.71Sscottr# Audio Devices
2931.71Sscottr
2941.71Sscottr# On-board audio hardware
2951.71Sscottrasc0	at obio?			# ASC/EASC audio
2961.71Sscottr
2971.71Sscottr# Pseudo-Devices
2981.71Sscottr
2991.71Sscottr# disk/mass storage pseudo-devices
3001.71Sscottrpseudo-device	ccd		4	# concatenated/striped disk devices
3011.133Selric#pseudo-device	cgd		4	# cryptographic disk devices
3021.119Soster#pseudo-device	raid		8	# RAIDframe disk driver
3031.98Ssimonb#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
3041.119Soster# Options to enable various other RAIDframe RAID types.
3051.119Soster# options	RF_INCLUDE_EVENODD=1
3061.119Soster# options	RF_INCLUDE_RAID5_RS=1
3071.119Soster# options	RF_INCLUDE_PARITYLOGGING=1
3081.119Soster# options	RF_INCLUDE_CHAINDECLUSTER=1
3091.119Soster# options	RF_INCLUDE_INTERDECLUSTER=1
3101.119Soster# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
3111.119Soster# options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
3121.153Shannkenpseudo-device	fss		4	# file system snapshot device
3131.71Sscottrpseudo-device	md		1	# memory disk device (ramdisk)
3141.90Sfredbpseudo-device	vcoda		1	# Venus/Coda distributed file system
3151.171Scubepseudo-device	vnd			# disk-like interface to files
3161.160Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
3171.71Sscottr
3181.71Sscottr# network pseudo-devices
3191.170Srpaulopseudo-device	bpfilter		# Berkeley packet filter
3201.173Sliamjfoy#pseudo-device	carp			# Common Address Redundancy Protocol
3211.71Sscottrpseudo-device	ipfilter		# IP filter (firewall) and NAT
3221.71Sscottrpseudo-device	loop			# network loopback
3231.171Scubepseudo-device	ppp			# Point-to-Point Protocol
3241.118Smartinpseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
3251.171Scubepseudo-device	sl			# Serial Line IP
3261.171Scube#pseudo-device	strip			# Starmode Radio IP (Metricom)
3271.171Scubepseudo-device	tun			# network tunneling over tty
3281.150Scubepseudo-device	tap			# virtual Ethernet
3291.171Scube#pseudo-device	gre			# generic L3 over IP tunnel
3301.171Scubepseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
3311.171Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
3321.172Spavelpseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
3331.109Sbouyerpseudo-device	vlan			# IEEE 802.1q encapsulation
3341.116Satatatpseudo-device	bridge			# simple inter-network bridging
3351.136Sperseant#options	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
3361.181Smartinpseudo-device	agr			# IEEE 802.3ad link aggregation
3371.71Sscottr
3381.71Sscottr# miscellaneous pseudo-devices
3391.96Sscottrpseudo-device	grf		2	# grf emulation for wscons
3401.96Sscottrpseudo-device	ite		1	# ite emulation for wscons
3411.108Sjdolecekpseudo-device	pty			# pseudo-terminals
3421.127Slukempseudo-device	clockctl		# user control of clock subsystem
3431.71Sscottr
3441.101Sfredb# random number generator pseudo-device
3451.101Sfredbpseudo-device	rnd			# /dev/random and in-kernel generator
3461.71Sscottr#options 	RND_COM			# use "com" randomness as well (BROKEN)
3471.138Sraggepseudo-device	ksyms			# /dev/ksyms
3481.144Sitojun#pseudo-device	pf			# PF packet filter
3491.144Sitojun#pseudo-device	pflog			# PF log if
3501.167Selad
3511.167Selad# Veriexec
3521.167Selad#
3531.167Selad# a pseudo device needed for veriexec
3541.167Selad#pseudo-device	veriexec		1
3551.167Selad#
3561.167Selad# Uncomment the fingerprint methods below that are desired. Note that
3571.167Selad# removing fingerprint methods will have almost no impact on the kernel
3581.167Selad# code size.
3591.167Selad#
3601.167Selad#options VERIFIED_EXEC_FP_RMD160
3611.167Selad#options VERIFIED_EXEC_FP_SHA256
3621.167Selad#options VERIFIED_EXEC_FP_SHA384
3631.167Selad#options VERIFIED_EXEC_FP_SHA512
3641.167Selad#options VERIFIED_EXEC_FP_SHA1
3651.167Selad#options VERIFIED_EXEC_FP_MD5
366