GENERIC revision 1.233
11.233Smacallan# $NetBSD: GENERIC,v 1.233 2012/06/26 02:04:55 macallan 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.233Smacallan#ident 		"GENERIC-$Revision: 1.233 $"
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.211Sjdcoptions 	WSDISPLAY_COMPAT_USL
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.43Slukemoptions 	COMPAT_SUNOS	# SunOS 4.x binary compatibility
1851.43Slukemoptions 	COMPAT_SVR4	# SunOS 5.x binary compatibility
1861.211Sjdcoptions 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
1871.1Sderaadt
1881.55Spk## File systems.  You probably need at least one of FFS or NFS.
1891.43Slukemfile-system	FFS		# Berkeley Fast Filesystem
1901.43Slukemfile-system	NFS		# Sun NFS-compatible filesystem client
1911.43Slukemfile-system	KERNFS		# kernel data-structure filesystem
1921.43Slukemfile-system	NULLFS		# NULL layered filesystem
1931.95Swrstudenfile-system 	OVERLAY		# overlay file system
1941.43Slukemfile-system	MFS		# memory-based filesystem
1951.43Slukemfile-system	FDESC		# user file descriptor filesystem
1961.43Slukemfile-system	UMAPFS		# uid/gid remapping filesystem
1971.43Slukemfile-system	LFS		# Log-based filesystem (still experimental)
1981.218Spookafile-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
1991.43Slukemfile-system	PROCFS		# /proc
2001.43Slukemfile-system	CD9660		# ISO 9660 + Rock Ridge file system
2011.43Slukemfile-system	UNION		# union file system
2021.43Slukemfile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
2031.91Sphilfile-system	CODA		# Coda File System; also needs vcoda (below)
2041.179Schristosfile-system	PTYFS		# /dev/pts/N support
2051.223Schsfile-system	TMPFS		# Efficient memory file-system
2061.183Sreinoud#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
2071.43Slukem
2081.55Spk## File system options.
2091.43Slukemoptions 	NFSSERVER	# Sun NFS-compatible filesystem server
2101.43Slukemoptions 	QUOTA		# FFS quotas
2111.63Spk#options 	FFS_EI		# FFS Endian Independent support
2121.229Sdhollandoptions 	WAPBL		# File system journaling support
2131.211Sjdc#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
2141.181Stsutsui#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
2151.94Sitojun
2161.55Spk## Network protocol support.  In most environments, INET is required.
2171.57Spkoptions 	INET		# IP (Internet Protocol) v4
2181.94Sitojunoptions 	INET6		# IPV6
2191.94Sitojun#options 	IPSEC		# IP security
2201.94Sitojun#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
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.200Sadrianp#options 	ISO,TPIP	# OSI networking
2281.112Ssommerfe#options 	EON		# OSI tunneling over IP
2291.75Spk#options 	NETATALK	# AppleTalk (over Ethernet) protocol
2301.67Spkoptions 	NTP		# Network Time Protocol in-kernel support
2311.57Spk#options 	PPS_SYNC	# Add serial line synchronization for NTP
2321.232Snakayamaoptions 	PFIL_HOOKS	# Add pfil(9) packet filter hooks
2331.86Schristosoptions 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
2341.192Schristosoptions 	IPFILTER_LOOKUP	# ippool(8) support
2351.224Smrgoptions 	IPFILTER_COMPAT # Compat for IP-Filter
2361.139Smartti#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
2371.86Schristosoptions 	PPP_BSDCOMP	# Add BSD compression to ppp device
2381.86Schristosoptions 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
2391.86Schristosoptions 	PPP_FILTER	# Add active filters for ppp (via bpf)
2401.1Sderaadt
2411.156Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
2421.156Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
2431.156Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
2441.156Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
2451.156Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
2461.156Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
2471.156Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
2481.156Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
2491.156Sabs#options 	ALTQ_PRIQ	# Priority Queueing
2501.156Sabs#options 	ALTQ_RED	# Random Early Detection
2511.156Sabs#options 	ALTQ_RIO	# RED with IN/OUT
2521.156Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
2531.156Sabs
2541.1Sderaadt
2551.55Spk
2561.57Spk#### Main bus and CPU .. all systems.
2571.1Sderaadtmainbus0 at root
2581.1Sderaadtcpu0	at mainbus0
2591.150Schscpuunit0	at mainbus0			# sun4d
2601.150Schscpuunit*	at mainbus0			# sun4d
2611.150Schscpu0	at cpuunit0				# sun4d
2621.1Sderaadt
2631.55Spk#### Bus types found on SPARC systems.
2641.55Spk
2651.24Sthorpejsbus0	at mainbus0				# sun4c
2661.24Sthorpejobio0	at mainbus0				# sun4 and sun4m
2671.150Schssparcvme0	at mainbus0			# sun4
2681.22Spkiommu0	at mainbus0				# sun4m
2691.22Spksbus0	at iommu0				# sun4m
2701.150Schssparcvme0	at iommu0			# sun4m
2711.150Schsvme0	at sparcvme0				# MI VME attachment
2721.150Schsbootbus0	at cpuunit0			# sun4d
2731.150Schsbootbus*	at cpuunit?			# sun4d
2741.64Spk
2751.64Spk## SBus expander box
2761.64Spkxbox*	at sbus? slot ? offset ?
2771.64Spksbus*	at xbox?
2781.72Spk
2791.72Spk## SBus to PCMCIA bridge
2801.159Spknell*	at sbus? slot ? offset ?		# PCMCIA bridge
2811.159Spkpcmcia*	at nell?
2821.173Smacallantslot*	at sbus? slot ? offset ?		# PCMCIA bridge (tadpole 3gx)
2831.173Smacallanpcmcia*	at tslot?
2841.1Sderaadt
2851.55Spk#### Standard system devices -- all required for a given architecture
2861.24Sthorpej
2871.55Spk## Auxiliary system registers on sun4c and sun4m
2881.24Sthorpejauxreg0	at mainbus0				# sun4c
2891.22Spkauxreg0	at obio0				# sun4m
2901.106Smattauxiotwo0 at obio0				# only on Tadpole SPARCbook.
2911.27Sabrown
2921.55Spk## Power status and control register on Sun4m systems
2931.27Sabrownpower0	at obio0
2941.24Sthorpej
2951.150Schs## Mostek clock found on 4/300, sun4c, sun4m and sun4d systems.
2961.55Spk## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
2971.24Sthorpejclock0	at mainbus0				# sun4c
2981.22Spkclock0	at obio0				# sun4m
2991.24Sthorpejclock0	at obio0 addr 0xf2000000		# sun4/300
3001.150Schsclock0	at bootbus0				# sun4d
3011.24Sthorpej
3021.55Spk## Intersil clock found on 4/100 and 4/200 systems.
3031.24Sthorpejoclock0	at obio0 addr 0xf3000000		# sun4/200
3041.24Sthorpejoclock0	at obio0 addr 0x03000000		# sun4/100
3051.24Sthorpej
3061.55Spk## Memory error registers.
3071.24Sthorpejmemreg0	at mainbus0				# sun4c
3081.22Spkmemreg0	at obio0				# sun4m
3091.24Sthorpejmemreg0	at obio0 addr 0xf4000000		# sun4/200 and sun4/300
3101.24Sthorpejmemreg0	at obio0 addr 0x04000000		# sun4/100
3111.74Spk
3121.74Spk## ECC memory control
3131.74Spkeccmemctl0 at mainbus0				# sun4m
3141.24Sthorpej
3151.55Spk## Timer chip found on 4/300, sun4c, and sun4m systems.
3161.24Sthorpejtimer0	at mainbus0				# sun4c
3171.22Spktimer0	at obio0				# sun4m
3181.24Sthorpejtimer0	at obio0 addr 0xef000000		# sun4/300
3191.24Sthorpej
3201.55Spk## EEPROM found on 4/100 and 4/200 systems.  Note that the 4/300
3211.55Spk## doesn't use this driver; the `EEPROM' is in the NVRAM on the
3221.55Spk## Mostek clock chip on 4/300 systems.
3231.24Sthorpejeeprom0	at obio0 addr 0xf2000000		# sun4/200
3241.24Sthorpejeeprom0	at obio0 addr 0x02000000		# sun4/100
3251.24Sthorpej
3261.55Spk
3271.55Spk#### Serial port configuration
3281.55Spk
3291.55Spk## Zilog 8530 serial chips.  Each has two-channels.
3301.55Spk## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
3311.24Sthorpejzs0	at mainbus0					# sun4c
3321.24Sthorpejzs0	at obio0					# sun4m
3331.100Spkzs0	at obio0 addr 0xf1000000 level 12		# sun4/200 and sun4/300
3341.100Spkzs0	at obio0 addr 0x01000000 level 12		# sun4/100
3351.150Schszs0	at bootbus0					# sun4d
3361.212Stsutsuizstty0	at zs0 channel 0				# ttya
3371.212Stsutsuizstty1	at zs0 channel 1				# ttyb
3381.50Sgwr
3391.24Sthorpejzs1	at mainbus0					# sun4c
3401.24Sthorpejzs1	at obio0					# sun4m
3411.100Spkzs1	at obio0 addr 0xf0000000 level 12		# sun4/200 and sun4/300
3421.100Spkzs1	at obio0 addr 0x00000000 level 12		# sun4/100
3431.150Schszs1	at bootbus0					# sun4d
3441.208Smacallan
3451.208Smacallan# old kbd and mouse attachments
3461.208Smacallan#kbd0	at zs1 channel 0				# keyboard
3471.208Smacallan#ms0	at zs1 channel 1				# mouse
3481.208Smacallanzstty*	at zs?
3491.208Smacallan
3501.208Smacallan# these are for wscons
3511.208Smacallankbd0	at zstty?
3521.208Smacallanms0	at zstty?
3531.208Smacallanwskbd*	at wskbddev?
3541.208Smacallanwsmouse* 	at wsmousedev?
3551.100Spk
3561.100Spkzs2	at obio0 addr 0xe0000000 level 12		# sun4/300
3571.100Spkzstty2	at zs2 channel 0				# ttyc
3581.100Spkzstty3	at zs2 channel 1				# ttyd
3591.113Smatt
3601.150Schszs*	at bootbus?					# sun4d
3611.150Schszstty*	at zs?
3621.150Schs
3631.125Slukem## NS16x50 serial chips and clones.  Present on the
3641.113Smatt## Sun JavaStation-1 and Tadpole SPARCbook 3
3651.113Smattcom*	at obio0					# sun4m
3661.66Spk
3671.97Scjs# Parallel port.
3681.97Scjsbpp*	at sbus? slot? offset ?
3691.66Spk
3701.66Spk## Magma Serial/Parallel driver
3711.66Spkmagma*	at sbus? slot ? offset ?
3721.66Spkmtty*	at magma?
3731.66Spkmbpp*	at magma?
3741.66Spk
3751.162Smrg## SUNW,spif Serial/Parallel driver
3761.162Smrgspif*  at sbus? slot ? offset ?
3771.162Smrgstty*  at spif?
3781.162Smrgsbpp*  at spif?
3791.162Smrg
3801.75Spk## PCMCIA serial interfaces
3811.80Sabs#com*	at pcmcia?
3821.80Sabs#pcmcom*	at pcmcia?
3831.80Sabs#com*	at pcmcom?
3841.24Sthorpej
3851.55Spk#### Disk controllers and disks
3861.55Spk
3871.26Spk#
3881.26Spk
3891.55Spk## The following flags may be set for the NCR53c94 based esp driver:
3901.55Spk##	bits 0-7:  disable disconnect/reselect for the corresponding target
3911.55Spk##	bits 8-15: disable synchronous negotiation for target [bit-8]
3921.55Spk
3931.55Spk## sun4/300, sun4c, sun4m on-board SCSI, and FSBE/S SBus SCSI cards.
3941.55Spk## Both `dma' and `esp' are needed in all cases.
3951.55Spk## Two kinds of additional SBus SCSI interfaces are available.  One uses
3961.55Spk## "esp at sbus" like the sun4c on-board; the other uses "esp at dma".
3971.55Spk
3981.55Spk## sun4/300 SCSI - an NCR53c94 or equivalent behind
3991.55Spk## an LSI Logic DMA controller
4001.55Spk
4011.24Sthorpejdma0	at obio0 addr 0xfa001000 level 4		# sun4/300
4021.55Spkesp0	at obio0 addr 0xfa000000 level 4 flags 0x0000	# sun4/300
4031.1Sderaadt
4041.55Spkdma0	at sbus0 slot ? offset ?			# sun4c/sun4m
4051.51Spkesp0	at sbus0 slot ? offset ? flags 0x0000		# sun4c
4061.51Spkesp0	at dma0 flags 0x0000				# sun4m
4071.24Sthorpej
4081.151Sfair# FSBE/S SCSI & SunSwift Sbus FAS366
4091.55Spkdma*	at sbus? slot ? offset ?			# SBus
4101.151Sfairesp*	at sbus? slot ? offset ? flags 0x0000		# SBus
4111.55Spkesp*	at dma? flags 0x0000				# SBus
4121.24Sthorpej
4131.55Spkscsibus* at esp?
4141.55Spk
4151.55Spk## Qlogic ISP SBus SCSI Card
4161.42Scgdisp*	at sbus? slot ? offset ?
4171.55Spkscsibus* at isp?
4181.42Scgd
4191.55Spk## NCR5380-based "Sun SCSI 3" VME SCSI controller.
4201.55Spk## This driver has several flags which may be enabled by OR'ing
4211.55Spk## the values and using the "flags" directive.
4221.55Spk## Valid flags are:
4231.55Spk##
4241.55Spk##	0x01		Use DMA (may be polled)
4251.55Spk##	0x02		Use DMA completion interrupts
4261.55Spk##	0x04		Allow disconnect/reselect
4271.55Spk##
4281.55Spk## E.g. the following would enable DMA, interrupts, and reselect:
4291.88Sdrochner## si0	at vme0 addr 0x200000 irq 3 vect 0x40 flags 0x07
4301.55Spk##
4311.55Spk## By default, DMA is enabled in the driver.
4321.25Spk
4331.88Sdrochnersi0	at vme0 addr 0x200000 irq 2 vect 0x40
4341.55Spkscsibus* at si?
4351.24Sthorpej
4361.55Spk## NCR5380-based "SCSI Weird" on-board SCSI interface found
4371.55Spk## on sun4/100 systems.  The flags are the same as the "si"
4381.55Spk## controller.  Note, while DMA is enabled by default, only
4391.55Spk## polled DMA works at this time, and reselects do not work
4401.55Spk## on this particular controller.
4411.1Sderaadt
4421.55Spksw0	at obio0 addr 0x0a000000 level 3
4431.55Spkscsibus* at sw?
4441.24Sthorpej
4451.75Spk## PCMCIA SCSI controllers
4461.80Sabs#aic*	at pcmcia?
4471.189Shubertf#spc*	at pcmcia?
4481.80Sabs#scsibus* at aic?
4491.189Shubertf#scsibus* at spc?
4501.75Spk
4511.75Spk
4521.55Spk## These entries find devices on all SCSI busses and assign
4531.55Spk## unit numbers dynamically.
4541.55Spksd*	at scsibus? target ? lun ?		# SCSI disks
4551.55Spkst*	at scsibus? target ? lun ?		# SCSI tapes
4561.55Spkcd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
4571.55Spkch*	at scsibus? target ? lun ?		# SCSI changer devices
4581.55Spkss*	at scsibus? target ? lun ?		# SCSI scanners
4591.118Smjacobses*	at scsibus? target ? lun ?		# SCSI SES/SAF-TE
4601.55Spkuk*	at scsibus? target ? lun ?		# unknown SCSI
4611.23Spk
4621.9Spk
4631.55Spk## Xylogics 753 or 7053 VME SMD disk controllers and disks, found
4641.55Spk## on sun4 systems.
4651.88Sdrochnerxdc0	at vme0 addr 0xee80 irq 3 vect 0x44
4661.88Sdrochnerxdc1	at vme0 addr 0xee90 irq 3 vect 0x45
4671.88Sdrochnerxdc2	at vme0 addr 0xeea0 irq 3 vect 0x46
4681.88Sdrochnerxdc3	at vme0 addr 0xeeb0 irq 3 vect 0x47
4691.9Spkxd*	at xdc? drive ?
4701.16Schuck
4711.55Spk## Xylogics 451 or 451 VME SMD disk controllers and disks, found
4721.55Spk## on sun4 systems.
4731.88Sdrochnerxyc0	at vme0 addr 0xee40 irq 3 vect 0x48
4741.88Sdrochnerxyc1	at vme0 addr 0xee48 irq 3 vect 0x49
4751.16Schuckxy*	at xyc? drive ?
4761.10Spk
4771.24Sthorpej
4781.55Spk## Floppy controller and drive found on SPARCstations.
4791.55Spk
4801.55Spkfdc0	at mainbus0				# sun4c controller
4811.55Spkfdc0	at obio0				# sun4m controller
4821.55Spkfd*	at fdc0					# the drive itself
4831.55Spk
4841.75Spk## PCMCIA IDE controllers
4851.80Sabs#wdc*	at pcmcia?
4861.149Smartin#atabus* at ata?
4871.149Smartin#wd*	at atabus? drive ? flags 0x0000
4881.149Smartin
4891.55Spk## A disk-like interface to files.  Can be used to create floppy, CD,
4901.55Spk## miniroot images, etc.
4911.55Spk
4921.185Scubepseudo-device	vnd	
4931.175Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
4941.55Spk
4951.55Spk## Concatenated and striped disks; with this, you can create a software-based
4961.55Spk## disk array similar to a "RAID 0" setup.  See ccd(4).
4971.55Spk
4981.55Spkpseudo-device	ccd	4
4991.141Selric
5001.141Selric## Cryptographic disk devices;  See cgd(4)
5011.141Selric
5021.141Selric#pseudo-device	cgd	4
5031.71Soster
5041.71Soster## RAIDframe disk driver: software RAID driver.  See raid(4).
5051.71Soster
5061.129Sosterpseudo-device	raid	8
5071.129Sosteroptions 	RAID_AUTOCONFIG		# auto-configuration of RAID components
5081.129Soster# Options to enable various other RAIDframe RAID types.
5091.160Suwe# options 	RF_INCLUDE_EVENODD=1
5101.160Suwe# options 	RF_INCLUDE_RAID5_RS=1
5111.160Suwe# options 	RF_INCLUDE_PARITYLOGGING=1
5121.160Suwe# options 	RF_INCLUDE_CHAINDECLUSTER=1
5131.160Suwe# options 	RF_INCLUDE_INTERDECLUSTER=1
5141.129Soster# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
5151.160Suwe# options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
5161.129Soster
5171.55Spk
5181.55Spk## Memory disk device, used on boot floppies with compressed
5191.55Spk## kernel-plus-root-disk images.
5201.55Spk
5211.225Shannken#pseudo-device	md	
5221.55Spk
5231.55Spk
5241.55Spk#### Network interfaces
5251.55Spk
5261.55Spk## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue
5271.55Spk## Three flavors of additional SBus ethernets are available.  One attaches
5281.55Spk## directly like the sun4c on-board, one uses the ledma device like the
5291.55Spk## sun4m on-board, and one uses the lebuffer device.
5301.55Spk
5311.56Spkle0		at obio0 addr 0xf9000000 level 6	# sun4/300
5321.56Spkle0		at sbus0 slot ? offset ?		# sun4c on-board
5331.56Spkledma0		at sbus0 slot ? offset ?		# sun4m on-board
5341.56Spkle0		at ledma0				# sun4m on-board
5351.56Spkle*		at sbus? slot ? offset ?		# SBus
5361.56Spkledma*		at sbus? slot ? offset ?		# SBus
5371.56Spkle*		at ledma?				# SBus
5381.56Spklebuffer0	at sbus? slot ? offset ?		# SBus
5391.56Spkle0		at lebuffer?				# SBus
5401.55Spklebuffer*	at sbus? slot ? offset ?		# SBus
5411.56Spkle*		at lebuffer?				# SBus
5421.55Spk
5431.55Spk
5441.55Spk## sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board
5451.55Spk## or on a Multibus/VME card.
5461.55Spkie0	at obio0 addr 0xf6000000 level 6		# sun4/200 on-board
5471.55Spkie0	at obio0 addr 0x06000000 level 6		# sun4/100 on-board
5481.108Spk## VME: the first [addr,len] pair specifies the device registers;
5491.108Spk##	the second pair specifies the on-board memory buffer
5501.108Spkie1	at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75
5511.108Spkie2	at vme0 addr 0x31ff02,0x300000 len -1,0x40000 irq 3 vect 0x76
5521.108Spkie3	at vme0 addr 0x35ff02,0x300000 len -1,0x40000 irq 3 vect 0x77
5531.108Spkie4	at vme0 addr 0x2dff02,0x200000 len -1,0x40000 irq 3 vect 0x7c
5541.55Spk
5551.90Shubertf## Quad Ethernet Controller with BigMac (be, 10/100MBd) and Mace Ethernet
5561.90Shubertf## (qe, 10MBd) attached.
5571.90Shubertfqec*	at sbus? slot ? offset ?		# Quad Ethernet Controller
5581.90Shubertfbe*	at qec?					# BigMac Ethernet (10/100MBd)
5591.90Shubertfqe*	at qec?					# Mace Ethernet (10MBd)
5601.85Spk
5611.98Spk## Happy Meal Ethernet
5621.98Spkhme*	at sbus? slot ? offset ?
5631.70Spk
5641.70Spk# midway ATM
5651.70Spken0	at sbus? slot ? offset ?
5661.75Spk
5671.75Spk# PCMCIA ethernet devices
5681.80Sabs#ep*	at pcmcia?
5691.80Sabs#mbe*	at pcmcia?
5701.80Sabs#ne*	at pcmcia?
5711.80Sabs#sm*	at pcmcia?
5721.75Spk
5731.217Stsutsui## PCMCIA wavelan card
5741.217Stsutsui#wi*	at pcmcia? function ?		# Lucent WaveLan IEEE (802.11)
5751.217Stsutsui
5761.75Spk# MII/PHY support
5771.81Spkexphy*	at mii? phy ?			# 3Com internal PHYs
5781.131Swizicsphy*	at mii? phy ?			# Integrated Circuit Systems ICS189x
5791.81Spkinphy*	at mii? phy ?			# Intel 82555 PHYs
5801.81Spklxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
5811.81Spknsphy*	at mii? phy ?			# NS83840 PHYs
5821.81Spkqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
5831.81Spksqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
5841.81Spktlphy*	at mii? phy ?			# ThunderLAN PHYs
5851.81Spkukphy*	at mii? phy ?			# generic unknown PHYs
5861.70Spk
5871.55Spk## Loopback network interface; required
5881.55Spkpseudo-device	loop
5891.55Spk
5901.55Spk## SLIP and CSLIP interfaces, for IP over a serial line.
5911.185Scubepseudo-device	sl		
5921.55Spk
5931.55Spk## PPP, the successor to SLIP.  See pppd(8).
5941.185Scubepseudo-device	ppp		
5951.128Smartin
5961.128Smartin## PPP over Ethernet (RFC 2516)
5971.128Smartinpseudo-device	pppoe
5981.55Spk
5991.55Spk## Starmode Radio IP, a special hardware network device.
6001.185Scube#pseudo-device	strip		
6011.55Spk
6021.55Spk## Network "tunnel" device, allowing protocol stacks to run in the userland.
6031.55Spk## This is used by the third-party user-mode "ppp" program, and others.
6041.185Scubepseudo-device	tun		
6051.165Scubepseudo-device	tap			# virtual Ethernet
6061.73Shwr
6071.73Shwr## Generic L3 over IP tunnel
6081.185Scube#pseudo-device	gre			# generic L3 over IP tunnel
6091.55Spk
6101.55Spk## Berkeley Packet Filter, required to run RARPD.  A generic C-language
6111.55Spk## interface that allows selective examining of incoming packets.
6121.184Srpaulopseudo-device	bpfilter
6131.55Spk
6141.188Sliamjfoy#pseudo-device	carp			# Common Address Redundancy Protocol
6151.188Sliamjfoy
6161.55Spk## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
6171.55Spk## one example of the use of the IP Filter.
6181.55Spkpseudo-device	ipfilter
6191.55Spk
6201.94Sitojun## for IPv6
6211.185Scubepseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
6221.185Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
6231.187Spavelpseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
6241.120Shubertf
6251.120Shubertf## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
6261.120Shubertfpseudo-device	vlan
6271.122Satatat
6281.122Satatat## Simple inter-network traffic bridging
6291.126Satatatpseudo-device	bridge
6301.160Suwe#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
6311.199Smartinpseudo-device	agr			# IEEE 802.3ad link aggregation
6321.55Spk
6331.217Stsutsui## accept filters
6341.217Stsutsuipseudo-device   accf_data		# "dataready" accept filter
6351.217Stsutsuipseudo-device   accf_http		# "httpready" accept filter
6361.217Stsutsui
6371.55Spk#### Audio and video devices
6381.55Spk
6391.55Spk## /dev/audio support (`audioamd' plus `audio')
6401.55Spk##
6411.55Spkaudioamd0	at mainbus0				# sun4c
6421.142Sjdcaudioamd0	at obio0				# sun4m
6431.55Spkaudioamd0	at sbus0 slot ? offset ?		# sun4m
6441.70Spk
6451.70Spkaudiocs0	at sbus0 slot ? offset ?		# SUNW,CS4231
6461.55Spk
6471.211Sjdc#options 	DBRI_DEBUG	# noisy debug output from the dbri driver
6481.211Sjdc#options 	DBRI_BIG_BUFFER	# use bigger DMA buffers, for slow CPUs
6491.186Smacallandbri*		at sbus? slot ? offset ?		# SUNW,DBRI[s3|e]
6501.174Smacallan
6511.174Smacallanaudio*		at audiobus?
6521.55Spk
6531.55Spk## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
6541.55Spk## systems.  If your sun4 system has a cgfour installed in the P4 slot,
6551.55Spk## the P4 entries for "bwtwo" will attach to the overlay plane of the
6561.55Spk## "cgfour".
6571.1Sderaadt
6581.55Spkbwtwo0		at sbus0 slot ? offset ?		# sun4c and sun4m
6591.55Spkbwtwo*		at sbus? slot ? offset ?		#
6601.55Spkbwtwo0		at obio0 addr 0xfd000000 level 4	# sun4/200
6611.55Spkbwtwo0		at obio0 addr 0xfb300000 level 4	# sun4/300 in P4 slot
6621.55Spkbwtwo0		at obio0 addr 0x0b300000 level 4	# sun4/100 in P4 slot
6631.21Sthorpej
6641.55Spk## Sun "cgtwo" VME color framebuffer
6651.208Smacallan# XXX no wsdisplay support
6661.208Smacallan#cgtwo0		at vme0 addr 0x400000 irq ? vect 0xa8
6671.21Sthorpej
6681.55Spk## Sun "cgthree" Sbus color framebuffer
6691.55Spkcgthree0	at sbus? slot ? offset ?
6701.55Spkcgthree*	at sbus? slot ? offset ?
6711.55Spk
6721.55Spk## Sun "cgfour" color framebuffer with overlay plane.  See above comment
6731.55Spk## regarding overlay plane.
6741.208Smacallan# XXX no wsdisplay support
6751.208Smacallan#cgfour0		at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6761.208Smacallan#cgfour0		at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6771.55Spk
6781.55Spk## Sun "cgsix" accelerated color framebuffer.
6791.55Spkcgsix0		at sbus? slot ? offset ?
6801.55Spkcgsix*		at sbus? slot ? offset ?
6811.55Spkcgsix0		at obio0 addr 0xfb000000 level 4	# sun4/300 P4
6821.55Spkcgsix0		at obio0 addr 0x0b000000 level 4	# sun4/100 P4
6831.55Spk
6841.55Spk## Sun "cgeight" 24-bit framebuffer
6851.208Smacallan# XXX no wsdisplay support
6861.208Smacallan#cgeight0 	at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6871.208Smacallan#cgeight0	at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6881.55Spk
6891.55Spk## Sun "tcx" accelerated color framebuffer.
6901.215Smacallan# there can be only one
6911.215Smacallantcx0		at sbus? slot ? offset ?
6921.33Sabrown
6931.221Smacallan## Sun CG12 / Matrox SG3 accelerated 24bit framebuffer
6941.221Smacallan## runs monochrome only for now
6951.221Smacallancgtwelve*	at sbus? slot ? offset ?
6961.221Smacallan
6971.33Sabrown# Sun "cgfourteen" accelerated 24-bit framebuffer.
6981.208Smacallancgfourteen*	at obio0			# sun4m
6991.1Sderaadt
7001.106Smatt# P9100-based display on Tadpole SPARCbook 3.
7011.106Smattpnozz0		at sbus? slot ? offset ?
7021.220Smacallan# the SPARCbook 3 hardware docs say that accesses to P9100 registers need to be
7031.220Smacallan# 'latched in' but at least my 3GX works happily without
7041.220Smacallan# Enable it by default since we don't know which hardware really needs it.
7051.220Smacallanoptions PNOZZ_USE_LATCH
7061.136Sad
7071.136Sad# Sun ZX/Leo 24-bit framebuffer
7081.213Smacallanzx*		at sbus? slot ? offset ?
7091.208Smacallan
7101.208Smacallan# Fujitsu AG-10e accelerated graphics 8/24-bit board
7111.208Smacallanagten*	at sbus? slot ? offset ?
7121.208Smacallan
7131.213Smacallan# generic framebuffer console
7141.213Smacallangenfb*	at sbus? slot ? offset ?
7151.213Smacallan
7161.208Smacallan# make sure wsdisplay0 is the console
7171.208Smacallanwsdisplay0	at wsemuldisplaydev? console 1
7181.208Smacallanwsdisplay*	at wsemuldisplaydev?
7191.1Sderaadt
7201.55Spk#### Other device configuration
7211.106Smatt
7221.106Smatt# Tadpole microcontroller
7231.106Smatttctrl0 at obio0
7241.24Sthorpej
7251.219Sbouyer# Aurora Personality Chip (APC) on SPARCstation-4/5
7261.219Sbouyer# Not enabled by default as it may hang some systems
7271.219Sbouyer#apc*		at sbus? slot ? offset ?
7281.219Sbouyer
7291.55Spk## Pseudo ttys, required for network logins and programs like screen.
7301.24Sthorpej
7311.117Sjdolecekpseudo-device	pty			# pseudo-terminals
7321.55Spk
7331.55Spk## Random device, used to implement /dev/random (a source of random noise),
7341.55Spk## and generate randomness for some kernel formulae.
7351.55Spk
7361.91Sphil
7371.91Sphil# a pseudo device needed for Coda	# also needs CODA (above)
7381.91Sphilpseudo-device	vcoda		4	# coda minicache <-> venus comm.
7391.135Slukem
7401.135Slukempseudo-device	clockctl		# user control of clock subsystem
7411.147Sraggepseudo-device	ksyms			# /dev/ksyms
7421.155Sitojun#pseudo-device	pf			# PF packet filter
7431.155Sitojun#pseudo-device	pflog			# PF log if
7441.222Spookapseudo-device	fss			# file system snapshot device
7451.208Smacallanpseudo-device	wsmux			# mouse and keyboard multiplexor
7461.208Smacallanpseudo-device	wsfont
7471.218Spookapseudo-device	putter			# for puffs and pud
7481.182Selad
7491.211Sjdc#options 	FILEASSOC		# fileassoc(9)
7501.197Selad
7511.182Selad# Veriexec
7521.182Selad#
7531.182Selad# a pseudo device needed for veriexec
7541.182Selad#pseudo-device	veriexec		1
7551.182Selad#
7561.182Selad# Uncomment the fingerprint methods below that are desired. Note that
7571.182Selad# removing fingerprint methods will have almost no impact on the kernel
7581.182Selad# code size.
7591.182Selad#
7601.182Selad#options VERIFIED_EXEC_FP_RMD160
7611.182Selad#options VERIFIED_EXEC_FP_SHA256
7621.182Selad#options VERIFIED_EXEC_FP_SHA384
7631.182Selad#options VERIFIED_EXEC_FP_SHA512
7641.182Selad#options VERIFIED_EXEC_FP_SHA1
7651.182Selad#options VERIFIED_EXEC_FP_MD5
7661.193Selad
7671.194Selad#options PAX_MPROTECT=0			# PaX mprotect(2) restrictions
7681.197Selad					# (for static binaries only for now)
769