GENERIC revision 1.14
11.14Swiz# $NetBSD: GENERIC,v 1.14 2002/02/10 17:37:01 wiz Exp $
21.1Smatt#
31.11Sgmcgarry# GENERIC machine description file
41.11Sgmcgarry# 
51.11Sgmcgarry# This machine description file is used to generate the default NetBSD
61.11Sgmcgarry# kernel.  The generic kernel does not include all options, subsystems
71.11Sgmcgarry# and device drivers, but should be useful for most applications.
81.1Smatt#
91.11Sgmcgarry# The machine description file can be customised for your specific
101.11Sgmcgarry# machine to reduce the kernel size and improve its performance.
111.11Sgmcgarry#
121.11Sgmcgarry# For further information on compiling NetBSD kernels, see the config(8)
131.11Sgmcgarry# man page.
141.11Sgmcgarry#
151.11Sgmcgarry# For further information on hardware support for this architecture, see
161.11Sgmcgarry# the intro(4) man page.  For further information about kernel options
171.11Sgmcgarry# for this architecture, see the options(4) man page.  For an explanation
181.11Sgmcgarry# of each device driver in this file see the section 4 man page for the
191.11Sgmcgarry# device.
201.1Smatt
211.11Sgmcgarryinclude		"arch/netwinder/conf/std.netwinder"
221.1Smatt
231.1Smatt# estimated number of users
241.1Smatt
251.1Smattmaxusers	32
261.1Smatt
271.1Smatt# Standard system options
281.1Smatt
291.1Smattoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
301.1Smatt#options 	NTP		# NTP phase/frequency locked loop
311.1Smatt
321.1Smatt# CPU options
331.1Smatt
341.1Smatt# For StrongARM systems
351.1Smattoptions 	CPU_SA110	# Support the SA110 core
361.1Smattmakeoptions	COPTS="-O2 -march=armv4 -mtune=strongarm"
371.1Smatt
381.1Smatt# Architecture options
391.1Smattoptions 	FOOTBRIDGE	# We have DC21285 'Footbridge' core logic
401.1Smattoptions 	NETWINDER	# We are a NETWINDER
411.1Smatt
421.1Smatt# FPA options
431.1Smatt
441.1Smatt#options 	ARMFPE		# ARM Ltd FPE
451.1Smatt
461.1Smatt# File systems
471.1Smatt
481.1Smattfile-system	FFS		# UFS
491.1Smatt#file-system	LFS		# log-structured file system
501.1Smattfile-system	MFS		# memory file system
511.1Smattfile-system	NFS		# Network file system
521.1Smatt#file-system 	ADOSFS		# AmigaDOS-compatible file system
531.1Smattfile-system 	EXT2FS		# second extended file system (linux)
541.1Smatt#file-system	CD9660		# ISO 9660 + Rock Ridge file system
551.1Smattfile-system	MSDOSFS		# MS-DOS file system
561.1Smatt#file-system	FDESC		# /dev/fd
571.1Smatt#file-system	KERNFS		# /kern
581.1Smattfile-system	NULLFS		# loopback file system
591.1Smatt#file-system	PORTAL		# portal filesystem (still experimental)
601.1Smatt#file-system	PROCFS		# /proc
611.1Smatt#file-system	UMAPFS		# NULLFS + uid and gid remapping
621.1Smatt#file-system	UNION		# union file system
631.1Smatt
641.1Smatt# File system options
651.1Smatt#options 	QUOTA		# UFS quotas
661.1Smatt#options 	FFS_EI		# FFS Endian Independant support
671.1Smattoptions 	NFSSERVER
681.3Smattoptions 	SOFTDEP
691.1Smatt
701.1Smatt# Networking options
711.1Smatt
721.1Smatt#options 	GATEWAY		# packet forwarding
731.1Smattoptions 	INET		# IP + ICMP + TCP + UDP
741.1Smattoptions 	INET6		# IPV6
751.1Smatt#options 	IPSEC		# IP security
761.1Smatt#options 	IPSEC_ESP	# IP security (encryption part; define w/ IPSEC)
771.1Smatt#options 	IPSEC_DEBUG	# debug for IP security
781.1Smatt#options 	MROUTING	# IP multicast routing
791.1Smatt#options 	NS		# XNS
801.1Smatt#options 	NSIP		# XNS tunneling over IP
811.1Smatt#options 	ISO,TPIP	# OSI
821.1Smatt#options 	EON		# OSI tunneling over IP
831.1Smatt#options 	CCITT,LLC,HDLC	# X.25
841.1Smatt#options 	NETATALK	# AppleTalk networking
851.1Smatt#options 	PFIL_HOOKS	# pfil(9) packet filter hooks
861.1Smatt#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
871.1Smatt#options 	PPP_DEFLATE	# Deflate compression support for PPP
881.1Smatt#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
891.5Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
901.1Smatt
911.1Smattoptions 	NFS_BOOT_BOOTP
921.1Smattoptions 	NFS_BOOT_DHCP
931.1Smatt#options 	NFS_BOOT_BOOTPARAM
941.1Smatt
951.1Smatt# Compatibility options
961.1Smatt
971.1Smatt#options 	COMPAT_43	# 4.3BSD compatibility.
981.2Smattoptions 	COMPAT_15	# NetBSD 1.5 compatibility.
991.1Smattoptions 	COMPAT_14	# NetBSD 1.4 compatibility.
1001.1Smatt#options 	COMPAT_13	# NetBSD 1.3 compatibility.
1011.1Smatt#options 	COMPAT_12	# NetBSD 1.2 compatibility.
1021.1Smatt#options 	COMPAT_11	# NetBSD 1.1 compatibility.
1031.1Smatt#options 	COMPAT_10	# NetBSD 1.0 compatibility.
1041.1Smatt#options 	COMPAT_09	# NetBSD 0.9 compatibility.
1051.5Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
1061.1Smatt
1071.1Smatt# Shared memory options
1081.1Smatt
1091.1Smattoptions 	SYSVMSG		# System V-like message queues
1101.1Smattoptions 	SYSVSEM		# System V-like semaphores
1111.9Slukem#options 	SEMMNI=10	# number of semaphore identifiers
1121.9Slukem#options 	SEMMNS=60	# number of semaphores in system
1131.9Slukem#options 	SEMUME=10	# max number of undo entries per process
1141.9Slukem#options 	SEMMNU=30	# number of undo structures in system
1151.1Smattoptions 	SYSVSHM		# System V-like memory sharing
1161.1Smattoptions 	SHMMAXPGS=1024	# 1024 pages is the default
1171.1Smatt
1181.1Smatt# Device options
1191.1Smatt
1201.2Smatt#options 	MEMORY_DISK_HOOKS	# boottime setup of ramdisk
1211.1Smatt#options 	MEMORY_DISK_SIZE=0	# Size in blocks
1221.1Smatt#options 	MINIROOTSIZE=3400	# Size in blocks
1231.1Smatt#options 	MEMORY_DISK_IS_ROOT	# use memory disk as root
1241.1Smatt
1251.1Smatt# Miscellaneous kernel options
1261.1Smattoptions 	KTRACE		# system call tracing, a la ktrace(1)
1271.1Smattoptions 	IRQSTATS	# manage IRQ statistics
1281.1Smatt#options 	LKM		# loadable kernel modules
1291.1Smatt#options 	KMEMSTATS	# kernel memory statistics
1301.1Smatt#options 	SCSIVERBOSE	# Verbose SCSI errors
1311.3Smattoptions 	PCIVERBOSE	# Verbose PCI descriptions
1321.3Smattoptions 	MIIVERBOSE	# Verbose MII autoconfuration messages
1331.2Smatt#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1341.1Smatt#options 	DDB_KEYCODE=0x40
1351.13Sjdolecek#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
1361.1Smatt
1371.1Smatt# Development and Debugging options
1381.1Smatt
1391.1Smatt#options 	ARM700BUGTRACK	# track the ARM700 swi bug
1401.1Smatt#options 	PORTMASTER	# Enable PortMaster only options
1411.1Smattoptions 	DIAGNOSTIC	# internally consistency checks
1421.9Slukem#options 	PMAP_DEBUG	# Enable pmap_debug_level code
1431.1Smatt#options 	IPKDB		# remote kernel debugging
1441.1Smattoptions 	DDB		# in-kernel debugger
1451.1Smattoptions 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
1461.2Smatt#makeoptions	DEBUG="-g"	# compile full symbol table
1471.1Smatt
1481.1Smattconfig		netbsd	root on ? type ?
1491.1Smatt
1501.1Smatt# The main bus device
1511.2Smattmainbus0	at root
1521.1Smatt
1531.1Smatt# The boot cpu
1541.2Smattcpu0		at mainbus?
1551.1Smatt
1561.1Smatt# Core logic
1571.1Smattfootbridge0	at mainbus?
1581.1Smatt
1591.1Smatt# footbridge uart
1601.2Smatt#fcom0		at footbridge?
1611.1Smatt
1621.1Smatt# system clock via footbridge
1631.2Smatt#clock*		at footbridge?
1641.1Smatt
1651.1Smatt# time-of-day device via footbridge
1661.1Smatttodclock0	at footbridge?
1671.1Smatt
1681.1Smatt# PCI bus via footbridge
1691.2Smattpci0		at footbridge?			# PCI bus
1701.1Smatt
1711.1Smatt# ISA bus support
1721.2Smattpcib*		at pci? dev ? function ?	# ISA bridge
1731.2Smattisa*		at pcib?
1741.1Smatt
1751.1Smatt
1761.1Smatt# PCI IDE Controllers and Devices
1771.1Smatt# PCI IDE controllers - see pciide(4) for supported hardware.
1781.1Smatt# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
1791.1Smatt# how to set up DMA modes for this chip. This may work, or may cause
1801.1Smatt# a machine hang with some controllers.
1811.2Smattpciide*		 at pci? dev ? function ? flags 0x0000
1821.1Smatt
1831.1Smatt# IDE drives
1841.1Smatt# Flags are used only with controllers that support DMA operations
1851.1Smatt# and mode settings (e.g. some pciide controllers)
1861.1Smatt# The lowest order four bits (rightmost digit) of the flags define the PIO
1871.1Smatt# mode to use, the next set of four bits the DMA mode and the third set the
1881.1Smatt# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
1891.1Smatt# to use, and the last bit must be 1 for this setting to be used.
1901.1Smatt# For DMA and UDMA, 0xf (1111) means 'disable'.
1911.1Smatt# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
1921.1Smatt# (0xc=1100, 0xa=1010, 0xf=1111)
1931.1Smatt# 0x0000 means "use whatever the drive claims to support".
1941.2Smattwd*		at pciide? channel ? drive ? flags 0x0000	# the drives themselves
1951.1Smatt
1961.1Smatt# PCI network interfaces
1971.2Smattne*		at pci? dev ? function ?	# NE2000 compat ethernet
1981.2Smatttlp*		at pci? dev ? function ?	# DECchip 21x4x (and clones) Ethernet
1991.1Smattoptions 	TLP_MATCH_21142
2001.1Smatt
2011.1Smatt# MII/PHY support
2021.14Swizicsphy*		at mii? phy ?			# ISC-189x PHYs
2031.2Smattukphy*		at mii? phy ?			# generic unknown PHYs
2041.1Smatt
2051.1Smatt# WSCONS Support
2061.1Smattoptions 	WSEMUL_VT100		# VT100 / VT220 emulation
2071.1Smattoptions 	WS_KERNEL_FG=WSCOL_GREEN
2081.2Smattpckbc0		at isa?
2091.1Smattpckbd*		at pckbc?
2101.1Smattwskbd*		at pckbd? console ?
2111.1Smattpms*		at pckbc?
2121.1Smattwsmouse*	at pms? mux 0
2131.1Smattpmsi*		at pckbc?
2141.1Smattwsmouse*	at pmsi? mux 0
2151.1Smatt
2161.1Smattvga*		at pci? dev ? function ?
2171.1Smattwsdisplay*	at vga? console ?
2181.1Smatt
2191.1Smatt# ISA Devices
2201.1Smattcom0		at isa? port 0x3f8 irq 4
2211.2Smattlpt0		at isa? port 0x378 irq 7
2221.1Smatt
2231.1Smatt
2241.1Smatt# Audio Devices
2251.1Smatt
2261.2Smatt# ISA audio devices
2271.2Smattsb0		at isa? port 0x220 irq 3 drq 1 drq2 7	# SoundBlaster
2281.2Smattopl*		at sb?
2291.2Smattmpu*		at sb?
2301.2Smattmidi*		at sb?					# SB1 MIDI port
2311.1Smatt
2321.1Smatt# Audio support
2331.2Smattaudio*		at sb?
2341.1Smatt
2351.1Smatt# Pseudo-Devices
2361.1Smatt
2371.1Smatt# disk/mass storage pseudo-devices
2381.2Smatt#pseudo-device	md		1	# memory disk device (ramdisk)
2391.1Smattpseudo-device	vnd		4	# disk-like interface to files
2401.1Smatt
2411.1Smatt# network pseudo-devices
2421.1Smattpseudo-device	bpfilter	4	# Berkeley packet filter
2431.12Smartinpseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
2441.10Satatatpseudo-device	bridge			# simple inter-network bridging
2451.1Smattpseudo-device	loop			# network loopback
2461.1Smatt
2471.1Smatt# miscellaneous pseudo-devices
2481.1Smattpseudo-device	pty			# pseudo-terminals
2491.1Smattpseudo-device	rnd			# /dev/random and in-kernel generator
250