GENERIC revision 1.239
11.239Schristos# $NetBSD: GENERIC,v 1.239 2013/04/27 18:19:51 christos Exp $
21.127Sgmcgarry#
31.127Sgmcgarry# GENERIC machine description file
41.127Sgmcgarry# 
51.127Sgmcgarry# This machine description file is used to generate the default NetBSD
61.127Sgmcgarry# kernel.  The generic kernel does not include all options, subsystems
71.127Sgmcgarry# and device drivers, but should be useful for most applications.
81.127Sgmcgarry#
91.127Sgmcgarry# The machine description file can be customised for your specific
101.127Sgmcgarry# machine to reduce the kernel size and improve its performance.
111.127Sgmcgarry#
121.127Sgmcgarry# For further information on compiling NetBSD kernels, see the config(8)
131.127Sgmcgarry# man page.
141.127Sgmcgarry#
151.127Sgmcgarry# For further information on hardware support for this architecture, see
161.127Sgmcgarry# the intro(4) man page.  For further information about kernel options
171.127Sgmcgarry# for this architecture, see the options(4) man page.  For an explanation
181.127Sgmcgarry# of each device driver in this file see the section 4 man page for the
191.127Sgmcgarry# device.
201.1Sderaadt
211.127Sgmcgarryinclude 	"arch/sparc/conf/std.sparc"
221.96Shubertf
231.133Satatatoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
241.133Satatat
251.239Schristos#ident 		"GENERIC-$Revision: 1.239 $"
261.45Spk
271.45Spkmaxusers	32
281.32Smrg
291.55Spk## System kernel configuration.  See options(4) for more detail.
301.55Spk
311.55Spk
321.24Sthorpej# Options for variants of the Sun SPARC architecure.
331.55Spk# We currently support three architecture types; at least one is required.
341.43Slukemoptions 	SUN4		# sun4/100, sun4/200, sun4/300
351.43Slukemoptions 	SUN4C		# sun4c - SS1, 1+, 2, ELC, SLC, IPC, IPX, etc.
361.43Slukemoptions 	SUN4M		# sun4m - SS10, SS20, Classic, etc.
371.150Schsoptions 	SUN4D		# sun4d - SS1000, SC2000
381.24Sthorpej
391.109Spkoptions 	SUN4_MMU3L	# sun4/400 3-level MMU
401.1Sderaadt
411.55Spk## System options specific to the sparc machine type
421.55Spk
431.55Spk# Blink the power LED on some machines to indicate the system load.
441.55Spk#options 	BLINK
451.55Spk
461.55Spk## Use a faster console than the PROM's slow drawing routines.  Not needed
471.55Spk## for headless (no framebuffer) machines.
481.208Smacallan## These is obsolete for wscons kernels
491.208Smacallan#options 	RASTERCONSOLE		# fast rasterop console
501.208Smacallan#options 	RASTERCONSOLE_FGCOL=WSCOL_BLACK
511.208Smacallan#options 	RASTERCONSOLE_BGCOL=WSCOL_WHITE
521.208Smacallan
531.208Smacallan# wscons stuff
541.233Smacallan#options 	WSEMUL_SUN
551.233Smacallanoptions 	WSEMUL_VT100
561.211Sjdcoptions 	WSDISPLAY_COMPAT_RAWKBD
571.211Sjdcoptions 	WSDISPLAY_CUSTOM_OUTPUT
581.211Sjdcoptions 	WS_DEFAULT_FG=WSCOL_BLACK
591.211Sjdcoptions 	WS_DEFAULT_BG=WSCOL_LIGHT_WHITE
601.211Sjdcoptions 	WS_KERNEL_FG=WSCOL_GREEN
611.211Sjdcoptions 	WS_KERNEL_BG=WSCOL_LIGHT_WHITE
621.211Sjdcoptions 	WSDISPLAY_COMPAT_PCVT
631.208Smacallanoptions 	WSDISPLAY_COMPAT_SYSCONS
641.234Sabsoptions 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
651.208Smacallan
661.211Sjdcoptions 	WSDISPLAY_SCROLLSUPPORT
671.208Smacallan
681.208Smacallan# generic options vlid for both wscons and RASTERCONSOLE
691.79Sadoptions 	FONT_GALLANT12x22	# the console font
701.230Smacallanoptions 	FONT_BOLD8x16		# a somewhat smaller font
711.55Spk
721.55Spk#### System options that are the same for all ports
731.55Spk
741.55Spk## Root device configuration: change the ?'s if you are going to use a
751.55Spk## nonstandard root partition (other than where the kernel is booted from)
761.55Spk## and/or nonstandard root type (not ffs or nfs).  Normally this can be
771.55Spk## automagically determined at boot time.
781.55Spk
791.55Spkconfig		netbsd	root on ? type ?
801.55Spk
811.55Spk## System call tracing (see ktrace(1)).
821.55Spkoptions 	KTRACE
831.55Spk
841.55Spk## Collect statistics on kernel malloc's and free's.  This does have a
851.55Spk## significant performance hit on slower machines, so it is intended for
861.55Spk## diagnostic use only.
871.55Spk#options 	KMEMSTATS
881.55Spk
891.55Spk## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
901.43Slukemoptions 	SYSVMSG		# System V message queues
911.43Slukemoptions 	SYSVSEM		# System V semaphores
921.43Slukemoptions 	SYSVSHM		# System V shared memory
931.24Sthorpej
941.227Smrgoptions 	MODULAR		# new style module(7) framework
951.130Sjdolecek
961.137Slukemoptions 	USERCONF	# userconf(4) support
971.160Suwe#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
981.161Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
991.143Sjunyoung
1001.144Swiz# Enable experimental buffer queue strategy for better responsiveness under 
1011.143Sjunyoung# high disk I/O load. Use it with caution - it's not proven to be stable yet.
1021.170Stsutsui#options 	BUFQ_READPRIO
1031.170Stsutsui#options 	BUFQ_PRIOCSCAN
1041.55Spk
1051.134Slukem## NFS boot options; tries DHCP/BOOTP then BOOTPARAM
1061.59Spkoptions 	NFS_BOOT_BOOTPARAM
1071.59Spk#options 	NFS_BOOT_BOOTP
1081.134Slukemoptions 	NFS_BOOT_DHCP
1091.55Spk
1101.55Spk#### Debugging options
1111.55Spk
1121.55Spk## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
1131.55Spk## serial console break or keyboard reset, where the PROM would normally
1141.55Spk## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
1151.214Stsutsuioptions 	DDB			# kernel dynamic debugger
1161.214Stsutsuioptions 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
1171.69Spk#options 	DDB_ONPANIC=1		# see also sysctl(8): `ddb.onpanic'
1181.55Spk
1191.55Spk## You may also use gdb, on another computer connected to this machine over
1201.124Slukem## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
1211.124Slukem## KGDB_DEV is a dev_t encoded device number of the serial port to use, where
1221.124Slukem## the minor device number encodes the PROM enumeration of the serial ports,
1231.124Slukem## i.e.:
1241.124Slukem## 0xc00 = ttya, 0xc01 = ttyb, 0xc02 = ttyc, 0xc03 = ttyd.
1251.124Slukem## (Note: ttyc and ttyd are available only on some sun4 models)
1261.124Slukem#options 	KGDB			# support for kernel gdb
1271.124Slukem#options 	KGDB_DEV=0xc01		# kgdb device number (this is `ttyb')
1281.124Slukem#options 	KGDB_DEVRATE=38400	# baud rate
1291.24Sthorpej
1301.55Spk
1311.55Spk## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
1321.55Spk## such that gdb(1) can be used on a kernel coredump.
1331.55Spk
1341.125Slukem#makeoptions	DEBUG="-g"
1351.55Spk
1361.55Spk
1371.55Spk## Adds code to the kernel that does internal consistency checks, and will
1381.55Spk## cause the kernel to panic if corruption of internal data structures
1391.55Spk## is detected.
1401.55Spk#options 	DIAGNOSTIC	# extra kernel sanity checking
1411.55Spk
1421.55Spk## Enable (possibly expensive) debugging code that may also display messages
1431.55Spk## on the system console
1441.55Spk#options 	DEBUG
1451.226Sjdc#options 	LOCKDEBUG
1461.226Sjdc#options 	SYSCALL_DEBUG
1471.55Spk
1481.55Spk## Make SCSI error messages more verbose when explaining their meanings.
1491.55Spkoptions 	SCSIVERBOSE
1501.105Saugustss
1511.105Saugustssoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1521.55Spk
1531.55Spk## `INSECURE' turns off the kernel security level (securelevel = 0 always).
1541.55Spk## This allows writing to /dev/mem, loading kernel modules while multi-user,
1551.55Spk## and other insecurities good only for development work.  Do not use this
1561.55Spk## option on a production machine.
1571.55Spk#options 	INSECURE
1581.55Spk
1591.55Spk## `FDSCRIPTS' allows non-readable but executable scripts by providing a
1601.55Spk## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
1611.55Spk## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
1621.55Spk## opaque file mechanism.  Perl calls this "secure setuid scripts."
1631.55Spk
1641.55Spk#options 	FDSCRIPTS
1651.55Spk#options 	SETUIDSCRIPTS
1661.55Spk
1671.55Spk## Options for compatibility with previous releases foreign system binaries.
1681.55Spk## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up
1691.55Spk## additional user-level utilities or system configuration files. See
1701.55Spk## compat_sunos(8) and compat_svr4(8).
1711.55Spk
1721.43Slukemoptions 	COMPAT_43	# 4.3BSD system interfaces
1731.43Slukemoptions 	COMPAT_10	# NetBSD 1.0 binary compatibility
1741.43Slukemoptions 	COMPAT_11	# NetBSD 1.1 binary compatibility
1751.43Slukemoptions 	COMPAT_12	# NetBSD 1.2 binary compatibility
1761.54Smjacoboptions 	COMPAT_13	# NetBSD 1.3 binary compatibility
1771.89Saugustssoptions 	COMPAT_14	# NetBSD 1.4 binary compatibility
1781.195Smanuoptions 	COMPAT_15	# NetBSD 1.5 binary compatibility
1791.148Stronoptions 	COMPAT_16	# NetBSD 1.6 binary compatibility
1801.160Suweoptions 	COMPAT_20	# NetBSD 2.0 binary compatibility
1811.198Suweoptions 	COMPAT_30	# NetBSD 3.0 binary compatibility
1821.198Suweoptions 	COMPAT_40	# NetBSD 4.0 binary compatibility
1831.210Smrgoptions 	COMPAT_50	# NetBSD 5.0 binary compatibility
1841.235Sapboptions 	COMPAT_60	# NetBSD 6.0 compatibility.
1851.43Slukemoptions 	COMPAT_SUNOS	# SunOS 4.x binary compatibility
1861.43Slukemoptions 	COMPAT_SVR4	# SunOS 5.x binary compatibility
1871.211Sjdcoptions 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
1881.1Sderaadt
1891.55Spk## File systems.  You probably need at least one of FFS or NFS.
1901.43Slukemfile-system	FFS		# Berkeley Fast Filesystem
1911.43Slukemfile-system	NFS		# Sun NFS-compatible filesystem client
1921.43Slukemfile-system	KERNFS		# kernel data-structure filesystem
1931.43Slukemfile-system	NULLFS		# NULL layered filesystem
1941.95Swrstudenfile-system 	OVERLAY		# overlay file system
1951.43Slukemfile-system	MFS		# memory-based filesystem
1961.43Slukemfile-system	FDESC		# user file descriptor filesystem
1971.43Slukemfile-system	UMAPFS		# uid/gid remapping filesystem
1981.43Slukemfile-system	LFS		# Log-based filesystem (still experimental)
1991.218Spookafile-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
2001.43Slukemfile-system	PROCFS		# /proc
2011.43Slukemfile-system	CD9660		# ISO 9660 + Rock Ridge file system
2021.43Slukemfile-system	UNION		# union file system
2031.43Slukemfile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
2041.91Sphilfile-system	CODA		# Coda File System; also needs vcoda (below)
2051.179Schristosfile-system	PTYFS		# /dev/pts/N support
2061.223Schsfile-system	TMPFS		# Efficient memory file-system
2071.183Sreinoud#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
2081.43Slukem
2091.55Spk## File system options.
2101.43Slukemoptions 	NFSSERVER	# Sun NFS-compatible filesystem server
2111.43Slukemoptions 	QUOTA		# FFS quotas
2121.63Spk#options 	FFS_EI		# FFS Endian Independent support
2131.229Sdhollandoptions 	WAPBL		# File system journaling support
2141.211Sjdc#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
2151.181Stsutsui#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
2161.94Sitojun
2171.55Spk## Network protocol support.  In most environments, INET is required.
2181.57Spkoptions 	INET		# IP (Internet Protocol) v4
2191.94Sitojunoptions 	INET6		# IPV6
2201.94Sitojun#options 	IPSEC		# IP security
2211.172Stron#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
2221.94Sitojun#options 	IPSEC_DEBUG	# debug for IP security
2231.57Spk#options 	GATEWAY		# packet forwarding ("router switch")
2241.57Spk#options 	MROUTING	# packet forwarding of multicast packets
2251.163Smanu#options 	PIM		# Protocol Independent Multicast
2261.57Spk#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
2271.75Spk#options 	NETATALK	# AppleTalk (over Ethernet) protocol
2281.67Spkoptions 	NTP		# Network Time Protocol in-kernel support
2291.57Spk#options 	PPS_SYNC	# Add serial line synchronization for NTP
2301.232Snakayamaoptions 	PFIL_HOOKS	# Add pfil(9) packet filter hooks
2311.86Schristosoptions 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
2321.192Schristosoptions 	IPFILTER_LOOKUP	# ippool(8) support
2331.224Smrgoptions 	IPFILTER_COMPAT # Compat for IP-Filter
2341.139Smartti#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
2351.86Schristosoptions 	PPP_BSDCOMP	# Add BSD compression to ppp device
2361.86Schristosoptions 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
2371.86Schristosoptions 	PPP_FILTER	# Add active filters for ppp (via bpf)
2381.1Sderaadt
2391.156Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
2401.156Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
2411.156Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
2421.156Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
2431.156Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
2441.156Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
2451.156Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
2461.156Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
2471.156Sabs#options 	ALTQ_PRIQ	# Priority Queueing
2481.156Sabs#options 	ALTQ_RED	# Random Early Detection
2491.156Sabs#options 	ALTQ_RIO	# RED with IN/OUT
2501.156Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
2511.156Sabs
2521.1Sderaadt
2531.55Spk
2541.57Spk#### Main bus and CPU .. all systems.
2551.1Sderaadtmainbus0 at root
2561.1Sderaadtcpu0	at mainbus0
2571.150Schscpuunit0	at mainbus0			# sun4d
2581.150Schscpuunit*	at mainbus0			# sun4d
2591.150Schscpu0	at cpuunit0				# sun4d
2601.1Sderaadt
2611.236Smacallan#### SX rendering engine found in SS20 and SS10SX
2621.236Smacallansx0	at mainbus0
2631.236Smacallan
2641.55Spk#### Bus types found on SPARC systems.
2651.55Spk
2661.24Sthorpejsbus0	at mainbus0				# sun4c
2671.24Sthorpejobio0	at mainbus0				# sun4 and sun4m
2681.150Schssparcvme0	at mainbus0			# sun4
2691.22Spkiommu0	at mainbus0				# sun4m
2701.22Spksbus0	at iommu0				# sun4m
2711.150Schssparcvme0	at iommu0			# sun4m
2721.150Schsvme0	at sparcvme0				# MI VME attachment
2731.150Schsbootbus0	at cpuunit0			# sun4d
2741.150Schsbootbus*	at cpuunit?			# sun4d
2751.64Spk
2761.64Spk## SBus expander box
2771.64Spkxbox*	at sbus? slot ? offset ?
2781.64Spksbus*	at xbox?
2791.72Spk
2801.72Spk## SBus to PCMCIA bridge
2811.159Spknell*	at sbus? slot ? offset ?		# PCMCIA bridge
2821.159Spkpcmcia*	at nell?
2831.173Smacallantslot*	at sbus? slot ? offset ?		# PCMCIA bridge (tadpole 3gx)
2841.173Smacallanpcmcia*	at tslot?
2851.1Sderaadt
2861.55Spk#### Standard system devices -- all required for a given architecture
2871.24Sthorpej
2881.55Spk## Auxiliary system registers on sun4c and sun4m
2891.24Sthorpejauxreg0	at mainbus0				# sun4c
2901.22Spkauxreg0	at obio0				# sun4m
2911.106Smattauxiotwo0 at obio0				# only on Tadpole SPARCbook.
2921.27Sabrown
2931.55Spk## Power status and control register on Sun4m systems
2941.27Sabrownpower0	at obio0
2951.24Sthorpej
2961.150Schs## Mostek clock found on 4/300, sun4c, sun4m and sun4d systems.
2971.55Spk## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
2981.24Sthorpejclock0	at mainbus0				# sun4c
2991.22Spkclock0	at obio0				# sun4m
3001.24Sthorpejclock0	at obio0 addr 0xf2000000		# sun4/300
3011.150Schsclock0	at bootbus0				# sun4d
3021.24Sthorpej
3031.55Spk## Intersil clock found on 4/100 and 4/200 systems.
3041.24Sthorpejoclock0	at obio0 addr 0xf3000000		# sun4/200
3051.24Sthorpejoclock0	at obio0 addr 0x03000000		# sun4/100
3061.24Sthorpej
3071.55Spk## Memory error registers.
3081.24Sthorpejmemreg0	at mainbus0				# sun4c
3091.22Spkmemreg0	at obio0				# sun4m
3101.24Sthorpejmemreg0	at obio0 addr 0xf4000000		# sun4/200 and sun4/300
3111.24Sthorpejmemreg0	at obio0 addr 0x04000000		# sun4/100
3121.74Spk
3131.74Spk## ECC memory control
3141.74Spkeccmemctl0 at mainbus0				# sun4m
3151.24Sthorpej
3161.55Spk## Timer chip found on 4/300, sun4c, and sun4m systems.
3171.24Sthorpejtimer0	at mainbus0				# sun4c
3181.22Spktimer0	at obio0				# sun4m
3191.24Sthorpejtimer0	at obio0 addr 0xef000000		# sun4/300
3201.24Sthorpej
3211.55Spk## EEPROM found on 4/100 and 4/200 systems.  Note that the 4/300
3221.55Spk## doesn't use this driver; the `EEPROM' is in the NVRAM on the
3231.55Spk## Mostek clock chip on 4/300 systems.
3241.24Sthorpejeeprom0	at obio0 addr 0xf2000000		# sun4/200
3251.24Sthorpejeeprom0	at obio0 addr 0x02000000		# sun4/100
3261.24Sthorpej
3271.55Spk
3281.55Spk#### Serial port configuration
3291.55Spk
3301.55Spk## Zilog 8530 serial chips.  Each has two-channels.
3311.55Spk## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
3321.24Sthorpejzs0	at mainbus0					# sun4c
3331.24Sthorpejzs0	at obio0					# sun4m
3341.100Spkzs0	at obio0 addr 0xf1000000 level 12		# sun4/200 and sun4/300
3351.100Spkzs0	at obio0 addr 0x01000000 level 12		# sun4/100
3361.150Schszs0	at bootbus0					# sun4d
3371.212Stsutsuizstty0	at zs0 channel 0				# ttya
3381.212Stsutsuizstty1	at zs0 channel 1				# ttyb
3391.50Sgwr
3401.24Sthorpejzs1	at mainbus0					# sun4c
3411.24Sthorpejzs1	at obio0					# sun4m
3421.100Spkzs1	at obio0 addr 0xf0000000 level 12		# sun4/200 and sun4/300
3431.100Spkzs1	at obio0 addr 0x00000000 level 12		# sun4/100
3441.150Schszs1	at bootbus0					# sun4d
3451.208Smacallan
3461.208Smacallan# old kbd and mouse attachments
3471.208Smacallan#kbd0	at zs1 channel 0				# keyboard
3481.208Smacallan#ms0	at zs1 channel 1				# mouse
3491.208Smacallanzstty*	at zs?
3501.208Smacallan
3511.208Smacallan# these are for wscons
3521.208Smacallankbd0	at zstty?
3531.208Smacallanms0	at zstty?
3541.208Smacallanwskbd*	at wskbddev?
3551.208Smacallanwsmouse* 	at wsmousedev?
3561.100Spk
3571.100Spkzs2	at obio0 addr 0xe0000000 level 12		# sun4/300
3581.100Spkzstty2	at zs2 channel 0				# ttyc
3591.100Spkzstty3	at zs2 channel 1				# ttyd
3601.113Smatt
3611.150Schszs*	at bootbus?					# sun4d
3621.150Schszstty*	at zs?
3631.150Schs
3641.125Slukem## NS16x50 serial chips and clones.  Present on the
3651.113Smatt## Sun JavaStation-1 and Tadpole SPARCbook 3
3661.113Smattcom*	at obio0					# sun4m
3671.66Spk
3681.97Scjs# Parallel port.
3691.97Scjsbpp*	at sbus? slot? offset ?
3701.66Spk
3711.66Spk## Magma Serial/Parallel driver
3721.66Spkmagma*	at sbus? slot ? offset ?
3731.66Spkmtty*	at magma?
3741.66Spkmbpp*	at magma?
3751.66Spk
3761.162Smrg## SUNW,spif Serial/Parallel driver
3771.162Smrgspif*  at sbus? slot ? offset ?
3781.162Smrgstty*  at spif?
3791.162Smrgsbpp*  at spif?
3801.162Smrg
3811.75Spk## PCMCIA serial interfaces
3821.80Sabs#com*	at pcmcia?
3831.80Sabs#pcmcom*	at pcmcia?
3841.80Sabs#com*	at pcmcom?
3851.24Sthorpej
3861.55Spk#### Disk controllers and disks
3871.55Spk
3881.26Spk#
3891.26Spk
3901.55Spk## The following flags may be set for the NCR53c94 based esp driver:
3911.55Spk##	bits 0-7:  disable disconnect/reselect for the corresponding target
3921.55Spk##	bits 8-15: disable synchronous negotiation for target [bit-8]
3931.55Spk
3941.55Spk## sun4/300, sun4c, sun4m on-board SCSI, and FSBE/S SBus SCSI cards.
3951.55Spk## Both `dma' and `esp' are needed in all cases.
3961.55Spk## Two kinds of additional SBus SCSI interfaces are available.  One uses
3971.55Spk## "esp at sbus" like the sun4c on-board; the other uses "esp at dma".
3981.55Spk
3991.55Spk## sun4/300 SCSI - an NCR53c94 or equivalent behind
4001.55Spk## an LSI Logic DMA controller
4011.55Spk
4021.24Sthorpejdma0	at obio0 addr 0xfa001000 level 4		# sun4/300
4031.55Spkesp0	at obio0 addr 0xfa000000 level 4 flags 0x0000	# sun4/300
4041.1Sderaadt
4051.55Spkdma0	at sbus0 slot ? offset ?			# sun4c/sun4m
4061.51Spkesp0	at sbus0 slot ? offset ? flags 0x0000		# sun4c
4071.51Spkesp0	at dma0 flags 0x0000				# sun4m
4081.24Sthorpej
4091.151Sfair# FSBE/S SCSI & SunSwift Sbus FAS366
4101.55Spkdma*	at sbus? slot ? offset ?			# SBus
4111.151Sfairesp*	at sbus? slot ? offset ? flags 0x0000		# SBus
4121.55Spkesp*	at dma? flags 0x0000				# SBus
4131.24Sthorpej
4141.55Spkscsibus* at esp?
4151.55Spk
4161.55Spk## Qlogic ISP SBus SCSI Card
4171.42Scgdisp*	at sbus? slot ? offset ?
4181.55Spkscsibus* at isp?
4191.42Scgd
4201.55Spk## NCR5380-based "Sun SCSI 3" VME SCSI controller.
4211.55Spk## This driver has several flags which may be enabled by OR'ing
4221.55Spk## the values and using the "flags" directive.
4231.55Spk## Valid flags are:
4241.55Spk##
4251.55Spk##	0x01		Use DMA (may be polled)
4261.55Spk##	0x02		Use DMA completion interrupts
4271.55Spk##	0x04		Allow disconnect/reselect
4281.55Spk##
4291.55Spk## E.g. the following would enable DMA, interrupts, and reselect:
4301.88Sdrochner## si0	at vme0 addr 0x200000 irq 3 vect 0x40 flags 0x07
4311.55Spk##
4321.55Spk## By default, DMA is enabled in the driver.
4331.25Spk
4341.88Sdrochnersi0	at vme0 addr 0x200000 irq 2 vect 0x40
4351.55Spkscsibus* at si?
4361.24Sthorpej
4371.55Spk## NCR5380-based "SCSI Weird" on-board SCSI interface found
4381.55Spk## on sun4/100 systems.  The flags are the same as the "si"
4391.55Spk## controller.  Note, while DMA is enabled by default, only
4401.55Spk## polled DMA works at this time, and reselects do not work
4411.55Spk## on this particular controller.
4421.1Sderaadt
4431.55Spksw0	at obio0 addr 0x0a000000 level 3
4441.55Spkscsibus* at sw?
4451.24Sthorpej
4461.75Spk## PCMCIA SCSI controllers
4471.80Sabs#aic*	at pcmcia?
4481.189Shubertf#spc*	at pcmcia?
4491.80Sabs#scsibus* at aic?
4501.189Shubertf#scsibus* at spc?
4511.75Spk
4521.75Spk
4531.55Spk## These entries find devices on all SCSI busses and assign
4541.55Spk## unit numbers dynamically.
4551.55Spksd*	at scsibus? target ? lun ?		# SCSI disks
4561.55Spkst*	at scsibus? target ? lun ?		# SCSI tapes
4571.55Spkcd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
4581.55Spkch*	at scsibus? target ? lun ?		# SCSI changer devices
4591.55Spkss*	at scsibus? target ? lun ?		# SCSI scanners
4601.118Smjacobses*	at scsibus? target ? lun ?		# SCSI SES/SAF-TE
4611.55Spkuk*	at scsibus? target ? lun ?		# unknown SCSI
4621.23Spk
4631.9Spk
4641.55Spk## Xylogics 753 or 7053 VME SMD disk controllers and disks, found
4651.55Spk## on sun4 systems.
4661.88Sdrochnerxdc0	at vme0 addr 0xee80 irq 3 vect 0x44
4671.88Sdrochnerxdc1	at vme0 addr 0xee90 irq 3 vect 0x45
4681.88Sdrochnerxdc2	at vme0 addr 0xeea0 irq 3 vect 0x46
4691.88Sdrochnerxdc3	at vme0 addr 0xeeb0 irq 3 vect 0x47
4701.9Spkxd*	at xdc? drive ?
4711.16Schuck
4721.55Spk## Xylogics 451 or 451 VME SMD disk controllers and disks, found
4731.55Spk## on sun4 systems.
4741.88Sdrochnerxyc0	at vme0 addr 0xee40 irq 3 vect 0x48
4751.88Sdrochnerxyc1	at vme0 addr 0xee48 irq 3 vect 0x49
4761.16Schuckxy*	at xyc? drive ?
4771.10Spk
4781.24Sthorpej
4791.55Spk## Floppy controller and drive found on SPARCstations.
4801.55Spk
4811.55Spkfdc0	at mainbus0				# sun4c controller
4821.55Spkfdc0	at obio0				# sun4m controller
4831.55Spkfd*	at fdc0					# the drive itself
4841.55Spk
4851.75Spk## PCMCIA IDE controllers
4861.80Sabs#wdc*	at pcmcia?
4871.149Smartin#atabus* at ata?
4881.149Smartin#wd*	at atabus? drive ? flags 0x0000
4891.149Smartin
4901.55Spk## A disk-like interface to files.  Can be used to create floppy, CD,
4911.55Spk## miniroot images, etc.
4921.55Spk
4931.185Scubepseudo-device	vnd	
4941.175Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
4951.55Spk
4961.55Spk## Concatenated and striped disks; with this, you can create a software-based
4971.55Spk## disk array similar to a "RAID 0" setup.  See ccd(4).
4981.55Spk
4991.239Schristospseudo-device	ccd
5001.141Selric
5011.141Selric## Cryptographic disk devices;  See cgd(4)
5021.141Selric
5031.239Schristos#pseudo-device	cgd
5041.71Soster
5051.71Soster## RAIDframe disk driver: software RAID driver.  See raid(4).
5061.71Soster
5071.129Sosterpseudo-device	raid	8
5081.129Sosteroptions 	RAID_AUTOCONFIG		# auto-configuration of RAID components
5091.129Soster# Options to enable various other RAIDframe RAID types.
5101.160Suwe# options 	RF_INCLUDE_EVENODD=1
5111.160Suwe# options 	RF_INCLUDE_RAID5_RS=1
5121.160Suwe# options 	RF_INCLUDE_PARITYLOGGING=1
5131.160Suwe# options 	RF_INCLUDE_CHAINDECLUSTER=1
5141.160Suwe# options 	RF_INCLUDE_INTERDECLUSTER=1
5151.129Soster# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
5161.160Suwe# options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
5171.129Soster
5181.55Spk
5191.55Spk## Memory disk device, used on boot floppies with compressed
5201.55Spk## kernel-plus-root-disk images.
5211.55Spk
5221.225Shannken#pseudo-device	md	
5231.55Spk
5241.55Spk
5251.55Spk#### Network interfaces
5261.55Spk
5271.55Spk## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue
5281.55Spk## Three flavors of additional SBus ethernets are available.  One attaches
5291.55Spk## directly like the sun4c on-board, one uses the ledma device like the
5301.55Spk## sun4m on-board, and one uses the lebuffer device.
5311.55Spk
5321.56Spkle0		at obio0 addr 0xf9000000 level 6	# sun4/300
5331.56Spkle0		at sbus0 slot ? offset ?		# sun4c on-board
5341.56Spkledma0		at sbus0 slot ? offset ?		# sun4m on-board
5351.56Spkle0		at ledma0				# sun4m on-board
5361.56Spkle*		at sbus? slot ? offset ?		# SBus
5371.56Spkledma*		at sbus? slot ? offset ?		# SBus
5381.56Spkle*		at ledma?				# SBus
5391.56Spklebuffer0	at sbus? slot ? offset ?		# SBus
5401.56Spkle0		at lebuffer?				# SBus
5411.55Spklebuffer*	at sbus? slot ? offset ?		# SBus
5421.56Spkle*		at lebuffer?				# SBus
5431.55Spk
5441.55Spk
5451.55Spk## sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board
5461.55Spk## or on a Multibus/VME card.
5471.55Spkie0	at obio0 addr 0xf6000000 level 6		# sun4/200 on-board
5481.55Spkie0	at obio0 addr 0x06000000 level 6		# sun4/100 on-board
5491.108Spk## VME: the first [addr,len] pair specifies the device registers;
5501.108Spk##	the second pair specifies the on-board memory buffer
5511.108Spkie1	at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75
5521.108Spkie2	at vme0 addr 0x31ff02,0x300000 len -1,0x40000 irq 3 vect 0x76
5531.108Spkie3	at vme0 addr 0x35ff02,0x300000 len -1,0x40000 irq 3 vect 0x77
5541.108Spkie4	at vme0 addr 0x2dff02,0x200000 len -1,0x40000 irq 3 vect 0x7c
5551.55Spk
5561.90Shubertf## Quad Ethernet Controller with BigMac (be, 10/100MBd) and Mace Ethernet
5571.90Shubertf## (qe, 10MBd) attached.
5581.90Shubertfqec*	at sbus? slot ? offset ?		# Quad Ethernet Controller
5591.90Shubertfbe*	at qec?					# BigMac Ethernet (10/100MBd)
5601.90Shubertfqe*	at qec?					# Mace Ethernet (10MBd)
5611.85Spk
5621.98Spk## Happy Meal Ethernet
5631.98Spkhme*	at sbus? slot ? offset ?
5641.70Spk
5651.70Spk# midway ATM
5661.70Spken0	at sbus? slot ? offset ?
5671.75Spk
5681.75Spk# PCMCIA ethernet devices
5691.80Sabs#ep*	at pcmcia?
5701.80Sabs#mbe*	at pcmcia?
5711.80Sabs#ne*	at pcmcia?
5721.80Sabs#sm*	at pcmcia?
5731.75Spk
5741.217Stsutsui## PCMCIA wavelan card
5751.217Stsutsui#wi*	at pcmcia? function ?		# Lucent WaveLan IEEE (802.11)
5761.217Stsutsui
5771.75Spk# MII/PHY support
5781.81Spkexphy*	at mii? phy ?			# 3Com internal PHYs
5791.131Swizicsphy*	at mii? phy ?			# Integrated Circuit Systems ICS189x
5801.81Spkinphy*	at mii? phy ?			# Intel 82555 PHYs
5811.81Spklxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
5821.81Spknsphy*	at mii? phy ?			# NS83840 PHYs
5831.81Spkqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
5841.81Spksqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
5851.81Spktlphy*	at mii? phy ?			# ThunderLAN PHYs
5861.81Spkukphy*	at mii? phy ?			# generic unknown PHYs
5871.70Spk
5881.55Spk## Loopback network interface; required
5891.55Spkpseudo-device	loop
5901.55Spk
5911.55Spk## SLIP and CSLIP interfaces, for IP over a serial line.
5921.185Scubepseudo-device	sl		
5931.55Spk
5941.55Spk## PPP, the successor to SLIP.  See pppd(8).
5951.185Scubepseudo-device	ppp		
5961.128Smartin
5971.128Smartin## PPP over Ethernet (RFC 2516)
5981.128Smartinpseudo-device	pppoe
5991.55Spk
6001.55Spk## Starmode Radio IP, a special hardware network device.
6011.185Scube#pseudo-device	strip		
6021.55Spk
6031.55Spk## Network "tunnel" device, allowing protocol stacks to run in the userland.
6041.55Spk## This is used by the third-party user-mode "ppp" program, and others.
6051.185Scubepseudo-device	tun		
6061.165Scubepseudo-device	tap			# virtual Ethernet
6071.73Shwr
6081.73Shwr## Generic L3 over IP tunnel
6091.185Scube#pseudo-device	gre			# generic L3 over IP tunnel
6101.55Spk
6111.55Spk## Berkeley Packet Filter, required to run RARPD.  A generic C-language
6121.55Spk## interface that allows selective examining of incoming packets.
6131.184Srpaulopseudo-device	bpfilter
6141.55Spk
6151.188Sliamjfoy#pseudo-device	carp			# Common Address Redundancy Protocol
6161.188Sliamjfoy
6171.55Spk## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
6181.55Spk## one example of the use of the IP Filter.
6191.55Spkpseudo-device	ipfilter
6201.55Spk
6211.94Sitojun## for IPv6
6221.185Scubepseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
6231.185Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
6241.187Spavelpseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
6251.120Shubertf
6261.120Shubertf## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
6271.120Shubertfpseudo-device	vlan
6281.122Satatat
6291.122Satatat## Simple inter-network traffic bridging
6301.126Satatatpseudo-device	bridge
6311.160Suwe#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
6321.199Smartinpseudo-device	agr			# IEEE 802.3ad link aggregation
6331.55Spk
6341.217Stsutsui## accept filters
6351.217Stsutsuipseudo-device   accf_data		# "dataready" accept filter
6361.217Stsutsuipseudo-device   accf_http		# "httpready" accept filter
6371.217Stsutsui
6381.55Spk#### Audio and video devices
6391.55Spk
6401.55Spk## /dev/audio support (`audioamd' plus `audio')
6411.55Spk##
6421.55Spkaudioamd0	at mainbus0				# sun4c
6431.142Sjdcaudioamd0	at obio0				# sun4m
6441.55Spkaudioamd0	at sbus0 slot ? offset ?		# sun4m
6451.70Spk
6461.70Spkaudiocs0	at sbus0 slot ? offset ?		# SUNW,CS4231
6471.55Spk
6481.211Sjdc#options 	DBRI_DEBUG	# noisy debug output from the dbri driver
6491.211Sjdc#options 	DBRI_BIG_BUFFER	# use bigger DMA buffers, for slow CPUs
6501.186Smacallandbri*		at sbus? slot ? offset ?		# SUNW,DBRI[s3|e]
6511.174Smacallan
6521.174Smacallanaudio*		at audiobus?
6531.55Spk
6541.55Spk## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
6551.55Spk## systems.  If your sun4 system has a cgfour installed in the P4 slot,
6561.55Spk## the P4 entries for "bwtwo" will attach to the overlay plane of the
6571.55Spk## "cgfour".
6581.1Sderaadt
6591.55Spkbwtwo0		at sbus0 slot ? offset ?		# sun4c and sun4m
6601.55Spkbwtwo*		at sbus? slot ? offset ?		#
6611.55Spkbwtwo0		at obio0 addr 0xfd000000 level 4	# sun4/200
6621.55Spkbwtwo0		at obio0 addr 0xfb300000 level 4	# sun4/300 in P4 slot
6631.55Spkbwtwo0		at obio0 addr 0x0b300000 level 4	# sun4/100 in P4 slot
6641.21Sthorpej
6651.55Spk## Sun "cgtwo" VME color framebuffer
6661.208Smacallan# XXX no wsdisplay support
6671.208Smacallan#cgtwo0		at vme0 addr 0x400000 irq ? vect 0xa8
6681.21Sthorpej
6691.55Spk## Sun "cgthree" Sbus color framebuffer
6701.55Spkcgthree0	at sbus? slot ? offset ?
6711.55Spkcgthree*	at sbus? slot ? offset ?
6721.55Spk
6731.55Spk## Sun "cgfour" color framebuffer with overlay plane.  See above comment
6741.55Spk## regarding overlay plane.
6751.208Smacallan# XXX no wsdisplay support
6761.208Smacallan#cgfour0		at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6771.208Smacallan#cgfour0		at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6781.55Spk
6791.55Spk## Sun "cgsix" accelerated color framebuffer.
6801.55Spkcgsix0		at sbus? slot ? offset ?
6811.55Spkcgsix*		at sbus? slot ? offset ?
6821.55Spkcgsix0		at obio0 addr 0xfb000000 level 4	# sun4/300 P4
6831.55Spkcgsix0		at obio0 addr 0x0b000000 level 4	# sun4/100 P4
6841.55Spk
6851.55Spk## Sun "cgeight" 24-bit framebuffer
6861.208Smacallan# XXX no wsdisplay support
6871.208Smacallan#cgeight0 	at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6881.208Smacallan#cgeight0	at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6891.55Spk
6901.55Spk## Sun "tcx" accelerated color framebuffer.
6911.215Smacallan# there can be only one
6921.215Smacallantcx0		at sbus? slot ? offset ?
6931.33Sabrown
6941.221Smacallan## Sun CG12 / Matrox SG3 accelerated 24bit framebuffer
6951.221Smacallan## runs monochrome only for now
6961.221Smacallancgtwelve*	at sbus? slot ? offset ?
6971.221Smacallan
6981.33Sabrown# Sun "cgfourteen" accelerated 24-bit framebuffer.
6991.208Smacallancgfourteen*	at obio0			# sun4m
7001.1Sderaadt
7011.106Smatt# P9100-based display on Tadpole SPARCbook 3.
7021.106Smattpnozz0		at sbus? slot ? offset ?
7031.220Smacallan# the SPARCbook 3 hardware docs say that accesses to P9100 registers need to be
7041.220Smacallan# 'latched in' but at least my 3GX works happily without
7051.220Smacallan# Enable it by default since we don't know which hardware really needs it.
7061.220Smacallanoptions PNOZZ_USE_LATCH
7071.136Sad
7081.136Sad# Sun ZX/Leo 24-bit framebuffer
7091.213Smacallanzx*		at sbus? slot ? offset ?
7101.208Smacallan
7111.208Smacallan# Fujitsu AG-10e accelerated graphics 8/24-bit board
7121.208Smacallanagten*	at sbus? slot ? offset ?
7131.208Smacallan
7141.213Smacallan# generic framebuffer console
7151.213Smacallangenfb*	at sbus? slot ? offset ?
7161.213Smacallan
7171.208Smacallan# make sure wsdisplay0 is the console
7181.208Smacallanwsdisplay0	at wsemuldisplaydev? console 1
7191.208Smacallanwsdisplay*	at wsemuldisplaydev?
7201.1Sderaadt
7211.55Spk#### Other device configuration
7221.106Smatt
7231.106Smatt# Tadpole microcontroller
7241.106Smatttctrl0 at obio0
7251.24Sthorpej
7261.219Sbouyer# Aurora Personality Chip (APC) on SPARCstation-4/5
7271.219Sbouyer# Not enabled by default as it may hang some systems
7281.219Sbouyer#apc*		at sbus? slot ? offset ?
7291.219Sbouyer
7301.55Spk## Pseudo ttys, required for network logins and programs like screen.
7311.24Sthorpej
7321.117Sjdolecekpseudo-device	pty			# pseudo-terminals
7331.55Spk
7341.55Spk## Random device, used to implement /dev/random (a source of random noise),
7351.55Spk## and generate randomness for some kernel formulae.
7361.55Spk
7371.91Sphil
7381.91Sphil# a pseudo device needed for Coda	# also needs CODA (above)
7391.91Sphilpseudo-device	vcoda		4	# coda minicache <-> venus comm.
7401.135Slukem
7411.135Slukempseudo-device	clockctl		# user control of clock subsystem
7421.147Sraggepseudo-device	ksyms			# /dev/ksyms
7431.155Sitojun#pseudo-device	pf			# PF packet filter
7441.155Sitojun#pseudo-device	pflog			# PF log if
7451.222Spookapseudo-device	fss			# file system snapshot device
7461.208Smacallanpseudo-device	wsmux			# mouse and keyboard multiplexor
7471.208Smacallanpseudo-device	wsfont
7481.218Spookapseudo-device	putter			# for puffs and pud
7491.182Selad
7501.211Sjdc#options 	FILEASSOC		# fileassoc(9)
7511.197Selad
7521.182Selad# Veriexec
7531.182Selad#
7541.182Selad# a pseudo device needed for veriexec
7551.182Selad#pseudo-device	veriexec		1
7561.182Selad#
7571.182Selad# Uncomment the fingerprint methods below that are desired. Note that
7581.182Selad# removing fingerprint methods will have almost no impact on the kernel
7591.182Selad# code size.
7601.182Selad#
7611.182Selad#options VERIFIED_EXEC_FP_RMD160
7621.182Selad#options VERIFIED_EXEC_FP_SHA256
7631.182Selad#options VERIFIED_EXEC_FP_SHA384
7641.182Selad#options VERIFIED_EXEC_FP_SHA512
7651.182Selad#options VERIFIED_EXEC_FP_SHA1
7661.182Selad#options VERIFIED_EXEC_FP_MD5
7671.193Selad
7681.194Selad#options PAX_MPROTECT=0			# PaX mprotect(2) restrictions
7691.197Selad					# (for static binaries only for now)
770