GENERIC revision 1.178
11.178Schristos# $NetBSD: GENERIC,v 1.178 2005/08/19 02:03:53 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.178Schristos#ident 		"GENERIC-$Revision: 1.178 $"
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.77Sadoptions 	RASTERCONSOLE		# fast rasterop console
491.79Sadoptions 	FONT_GALLANT12x22	# the console font
501.79Sad#options 	FONT_BOLD8x16		# a somewhat smaller font
511.103Spk## default console colors: black-on-white; this can be changed
521.103Spk## using the following two options.
531.103Spk#options 	RASTERCONSOLE_FGCOL=WSCOL_BLACK
541.103Spk#options 	RASTERCONSOLE_BGCOL=WSCOL_WHITE
551.55Spk
561.55Spk#### System options that are the same for all ports
571.55Spk
581.55Spk## Root device configuration: change the ?'s if you are going to use a
591.55Spk## nonstandard root partition (other than where the kernel is booted from)
601.55Spk## and/or nonstandard root type (not ffs or nfs).  Normally this can be
611.55Spk## automagically determined at boot time.
621.55Spk
631.55Spkconfig		netbsd	root on ? type ?
641.55Spk
651.55Spk## System call tracing (see ktrace(1)).
661.55Spkoptions 	KTRACE
671.140Sprovosoptions 	SYSTRACE	# system call vetting via systrace(1)
681.55Spk
691.55Spk## Collect statistics on kernel malloc's and free's.  This does have a
701.55Spk## significant performance hit on slower machines, so it is intended for
711.55Spk## diagnostic use only.
721.55Spk#options 	KMEMSTATS
731.55Spk
741.55Spk## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
751.43Slukemoptions 	SYSVMSG		# System V message queues
761.43Slukemoptions 	SYSVSEM		# System V semaphores
771.125Slukem#options 	SEMMNI=10	# number of semaphore identifiers
781.125Slukem#options 	SEMMNS=60	# number of semaphores in system
791.125Slukem#options 	SEMUME=10	# max number of undo entries per process
801.125Slukem#options 	SEMMNU=30	# number of undo structures in system
811.43Slukemoptions 	SYSVSHM		# System V shared memory
821.43Slukem#options 	SHMMAXPGS=1024	# 1024 pages is the default
831.157Sbouyeroptions 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
841.24Sthorpej
851.55Spk## Loadable kernel module support; still under development.
861.55Spkoptions 	LKM
871.130Sjdolecek
881.137Slukemoptions 	USERCONF	# userconf(4) support
891.160Suwe#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
901.161Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
911.143Sjunyoung
921.144Swiz# Enable experimental buffer queue strategy for better responsiveness under 
931.143Sjunyoung# high disk I/O load. Use it with caution - it's not proven to be stable yet.
941.170Stsutsui#options 	BUFQ_READPRIO
951.170Stsutsui#options 	BUFQ_PRIOCSCAN
961.55Spk
971.134Slukem## NFS boot options; tries DHCP/BOOTP then BOOTPARAM
981.59Spkoptions 	NFS_BOOT_BOOTPARAM
991.59Spk#options 	NFS_BOOT_BOOTP
1001.134Slukemoptions 	NFS_BOOT_DHCP
1011.55Spk
1021.55Spk#### Debugging options
1031.55Spk
1041.55Spk## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
1051.55Spk## serial console break or keyboard reset, where the PROM would normally
1061.55Spk## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
1071.55Spk#options 	DDB			# kernel dynamic debugger
1081.52Slukem#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
1091.69Spk#options 	DDB_ONPANIC=1		# see also sysctl(8): `ddb.onpanic'
1101.55Spk
1111.55Spk## You may also use gdb, on another computer connected to this machine over
1121.124Slukem## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
1131.124Slukem## KGDB_DEV is a dev_t encoded device number of the serial port to use, where
1141.124Slukem## the minor device number encodes the PROM enumeration of the serial ports,
1151.124Slukem## i.e.:
1161.124Slukem## 0xc00 = ttya, 0xc01 = ttyb, 0xc02 = ttyc, 0xc03 = ttyd.
1171.124Slukem## (Note: ttyc and ttyd are available only on some sun4 models)
1181.124Slukem#options 	KGDB			# support for kernel gdb
1191.124Slukem#options 	KGDB_DEV=0xc01		# kgdb device number (this is `ttyb')
1201.124Slukem#options 	KGDB_DEVRATE=38400	# baud rate
1211.24Sthorpej
1221.55Spk
1231.55Spk## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
1241.55Spk## such that gdb(1) can be used on a kernel coredump.
1251.55Spk
1261.125Slukem#makeoptions	DEBUG="-g"
1271.55Spk
1281.55Spk
1291.55Spk## Adds code to the kernel that does internal consistency checks, and will
1301.55Spk## cause the kernel to panic if corruption of internal data structures
1311.55Spk## is detected.
1321.55Spk#options 	DIAGNOSTIC	# extra kernel sanity checking
1331.55Spk
1341.55Spk## Enable (possibly expensive) debugging code that may also display messages
1351.55Spk## on the system console
1361.55Spk#options 	DEBUG
1371.55Spk
1381.55Spk## Make SCSI error messages more verbose when explaining their meanings.
1391.55Spkoptions 	SCSIVERBOSE
1401.105Saugustss
1411.105Saugustssoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1421.55Spk
1431.55Spk## `INSECURE' turns off the kernel security level (securelevel = 0 always).
1441.55Spk## This allows writing to /dev/mem, loading kernel modules while multi-user,
1451.55Spk## and other insecurities good only for development work.  Do not use this
1461.55Spk## option on a production machine.
1471.55Spk#options 	INSECURE
1481.55Spk
1491.55Spk## `FDSCRIPTS' allows non-readable but executable scripts by providing a
1501.55Spk## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
1511.55Spk## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
1521.55Spk## opaque file mechanism.  Perl calls this "secure setuid scripts."
1531.55Spk
1541.55Spk#options 	FDSCRIPTS
1551.55Spk#options 	SETUIDSCRIPTS
1561.55Spk
1571.55Spk## Options for compatibility with previous releases foreign system binaries.
1581.55Spk## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up
1591.55Spk## additional user-level utilities or system configuration files. See
1601.55Spk## compat_sunos(8) and compat_svr4(8).
1611.55Spk
1621.43Slukemoptions 	COMPAT_43	# 4.3BSD system interfaces
1631.43Slukemoptions 	COMPAT_10	# NetBSD 1.0 binary compatibility
1641.43Slukemoptions 	COMPAT_11	# NetBSD 1.1 binary compatibility
1651.43Slukemoptions 	COMPAT_12	# NetBSD 1.2 binary compatibility
1661.54Smjacoboptions 	COMPAT_13	# NetBSD 1.3 binary compatibility
1671.89Saugustssoptions 	COMPAT_14	# NetBSD 1.4 binary compatibility
1681.148Stronoptions 	COMPAT_16	# NetBSD 1.6 binary compatibility
1691.160Suweoptions 	COMPAT_20	# NetBSD 2.0 binary compatibility
1701.178Schristosoptions 	COMPAT_30	# NetBSD 3.0 compatibility.
1711.43Slukemoptions 	COMPAT_SUNOS	# SunOS 4.x binary compatibility
1721.43Slukemoptions 	COMPAT_SVR4	# SunOS 5.x binary compatibility
1731.164Schristosoptions		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
1741.1Sderaadt
1751.55Spk## File systems.  You probably need at least one of FFS or NFS.
1761.43Slukemfile-system	FFS		# Berkeley Fast Filesystem
1771.43Slukemfile-system	NFS		# Sun NFS-compatible filesystem client
1781.43Slukemfile-system	KERNFS		# kernel data-structure filesystem
1791.43Slukemfile-system	NULLFS		# NULL layered filesystem
1801.95Swrstudenfile-system 	OVERLAY		# overlay file system
1811.43Slukemfile-system	MFS		# memory-based filesystem
1821.43Slukemfile-system	FDESC		# user file descriptor filesystem
1831.43Slukemfile-system	UMAPFS		# uid/gid remapping filesystem
1841.43Slukemfile-system	LFS		# Log-based filesystem (still experimental)
1851.43Slukemfile-system	PORTAL		# portal filesystem (still experimental)
1861.43Slukemfile-system	PROCFS		# /proc
1871.43Slukemfile-system	CD9660		# ISO 9660 + Rock Ridge file system
1881.43Slukemfile-system	UNION		# union file system
1891.43Slukemfile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
1901.91Sphilfile-system	CODA		# Coda File System; also needs vcoda (below)
1911.171Srpaulo#file-system	PTYFS		# experimental - /dev/ptm support
1921.43Slukem
1931.55Spk## File system options.
1941.43Slukemoptions 	NFSSERVER	# Sun NFS-compatible filesystem server
1951.43Slukemoptions 	QUOTA		# FFS quotas
1961.63Spk#options 	FFS_EI		# FFS Endian Independent support
1971.125Slukemoptions 	SOFTDEP		# FFS soft updates support.
1981.166Srumble#options	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
1991.169Sdsl#options 	FFS_NO_SNAPSHOT	# ffs snapshots
2001.94Sitojun
2011.55Spk## Network protocol support.  In most environments, INET is required.
2021.57Spkoptions 	INET		# IP (Internet Protocol) v4
2031.94Sitojunoptions 	INET6		# IPV6
2041.94Sitojun#options 	IPSEC		# IP security
2051.94Sitojun#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
2061.172Stron#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
2071.94Sitojun#options 	IPSEC_DEBUG	# debug for IP security
2081.57Spk#options 	GATEWAY		# packet forwarding ("router switch")
2091.57Spk#options 	MROUTING	# packet forwarding of multicast packets
2101.163Smanu#options 	PIM		# Protocol Independent Multicast
2111.57Spk#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
2121.57Spkoptions 	NS		# Xerox NS networking
2131.57Spk#options 	NSIP		# Xerox NS tunneling over IP
2141.57Spkoptions 	ISO,TPIP	# OSI networking
2151.112Ssommerfe#options 	EON		# OSI tunneling over IP
2161.57Spk#options 	CCITT,LLC,HDLC	# X.25 packet switched protocol
2171.75Spk#options 	NETATALK	# AppleTalk (over Ethernet) protocol
2181.67Spkoptions 	NTP		# Network Time Protocol in-kernel support
2191.57Spk#options 	PPS_SYNC	# Add serial line synchronization for NTP
2201.86Schristosoptions 	PFIL_HOOKS	# Add pfil(9) hooks, intended for custom LKMs.
2211.86Schristosoptions 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
2221.139Smartti#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
2231.86Schristosoptions 	PPP_BSDCOMP	# Add BSD compression to ppp device
2241.86Schristosoptions 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
2251.86Schristosoptions 	PPP_FILTER	# Add active filters for ppp (via bpf)
2261.1Sderaadt
2271.156Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
2281.156Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
2291.156Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
2301.156Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
2311.156Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
2321.156Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
2331.156Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
2341.156Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
2351.156Sabs#options 	ALTQ_PRIQ	# Priority Queueing
2361.156Sabs#options 	ALTQ_RED	# Random Early Detection
2371.156Sabs#options 	ALTQ_RIO	# RED with IN/OUT
2381.156Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
2391.156Sabs
2401.1Sderaadt
2411.55Spk
2421.57Spk#### Main bus and CPU .. all systems.
2431.1Sderaadtmainbus0 at root
2441.1Sderaadtcpu0	at mainbus0
2451.150Schscpuunit0	at mainbus0			# sun4d
2461.150Schscpuunit*	at mainbus0			# sun4d
2471.150Schscpu0	at cpuunit0				# sun4d
2481.1Sderaadt
2491.55Spk#### Bus types found on SPARC systems.
2501.55Spk
2511.24Sthorpejsbus0	at mainbus0				# sun4c
2521.24Sthorpejobio0	at mainbus0				# sun4 and sun4m
2531.150Schssparcvme0	at mainbus0			# sun4
2541.22Spkiommu0	at mainbus0				# sun4m
2551.22Spksbus0	at iommu0				# sun4m
2561.150Schssparcvme0	at iommu0			# sun4m
2571.150Schsvme0	at sparcvme0				# MI VME attachment
2581.150Schsbootbus0	at cpuunit0			# sun4d
2591.150Schsbootbus*	at cpuunit?			# sun4d
2601.64Spk
2611.64Spk## SBus expander box
2621.64Spkxbox*	at sbus? slot ? offset ?
2631.64Spksbus*	at xbox?
2641.72Spk
2651.72Spk## SBus to PCMCIA bridge
2661.159Spknell*	at sbus? slot ? offset ?		# PCMCIA bridge
2671.159Spkpcmcia*	at nell?
2681.173Smacallantslot*	at sbus? slot ? offset ?		# PCMCIA bridge (tadpole 3gx)
2691.173Smacallanpcmcia*	at tslot?
2701.1Sderaadt
2711.55Spk#### Standard system devices -- all required for a given architecture
2721.24Sthorpej
2731.55Spk## Auxiliary system registers on sun4c and sun4m
2741.24Sthorpejauxreg0	at mainbus0				# sun4c
2751.22Spkauxreg0	at obio0				# sun4m
2761.106Smattauxiotwo0 at obio0				# only on Tadpole SPARCbook.
2771.27Sabrown
2781.55Spk## Power status and control register on Sun4m systems
2791.27Sabrownpower0	at obio0
2801.24Sthorpej
2811.150Schs## Mostek clock found on 4/300, sun4c, sun4m and sun4d systems.
2821.55Spk## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
2831.24Sthorpejclock0	at mainbus0				# sun4c
2841.22Spkclock0	at obio0				# sun4m
2851.24Sthorpejclock0	at obio0 addr 0xf2000000		# sun4/300
2861.150Schsclock0	at bootbus0				# sun4d
2871.24Sthorpej
2881.55Spk## Intersil clock found on 4/100 and 4/200 systems.
2891.24Sthorpejoclock0	at obio0 addr 0xf3000000		# sun4/200
2901.24Sthorpejoclock0	at obio0 addr 0x03000000		# sun4/100
2911.24Sthorpej
2921.55Spk## Memory error registers.
2931.24Sthorpejmemreg0	at mainbus0				# sun4c
2941.22Spkmemreg0	at obio0				# sun4m
2951.24Sthorpejmemreg0	at obio0 addr 0xf4000000		# sun4/200 and sun4/300
2961.24Sthorpejmemreg0	at obio0 addr 0x04000000		# sun4/100
2971.74Spk
2981.74Spk## ECC memory control
2991.74Spkeccmemctl0 at mainbus0				# sun4m
3001.24Sthorpej
3011.55Spk## Timer chip found on 4/300, sun4c, and sun4m systems.
3021.24Sthorpejtimer0	at mainbus0				# sun4c
3031.22Spktimer0	at obio0				# sun4m
3041.24Sthorpejtimer0	at obio0 addr 0xef000000		# sun4/300
3051.24Sthorpej
3061.55Spk## EEPROM found on 4/100 and 4/200 systems.  Note that the 4/300
3071.55Spk## doesn't use this driver; the `EEPROM' is in the NVRAM on the
3081.55Spk## Mostek clock chip on 4/300 systems.
3091.24Sthorpejeeprom0	at obio0 addr 0xf2000000		# sun4/200
3101.24Sthorpejeeprom0	at obio0 addr 0x02000000		# sun4/100
3111.24Sthorpej
3121.55Spk
3131.55Spk#### Serial port configuration
3141.55Spk
3151.55Spk## Zilog 8530 serial chips.  Each has two-channels.
3161.55Spk## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
3171.24Sthorpejzs0	at mainbus0					# sun4c
3181.24Sthorpejzs0	at obio0					# sun4m
3191.100Spkzs0	at obio0 addr 0xf1000000 level 12		# sun4/200 and sun4/300
3201.100Spkzs0	at obio0 addr 0x01000000 level 12		# sun4/100
3211.150Schszs0	at bootbus0					# sun4d
3221.100Spkzstty0	at zs0 channel 0				# ttya
3231.100Spkzstty1	at zs0 channel 1				# ttyb
3241.50Sgwr
3251.24Sthorpejzs1	at mainbus0					# sun4c
3261.24Sthorpejzs1	at obio0					# sun4m
3271.100Spkzs1	at obio0 addr 0xf0000000 level 12		# sun4/200 and sun4/300
3281.100Spkzs1	at obio0 addr 0x00000000 level 12		# sun4/100
3291.150Schszs1	at bootbus0					# sun4d
3301.100Spkkbd0	at zs1 channel 0				# keyboard
3311.100Spkms0	at zs1 channel 1				# mouse
3321.100Spk
3331.100Spkzs2	at obio0 addr 0xe0000000 level 12		# sun4/300
3341.100Spkzstty2	at zs2 channel 0				# ttyc
3351.100Spkzstty3	at zs2 channel 1				# ttyd
3361.113Smatt
3371.150Schszs*	at bootbus?					# sun4d
3381.150Schszstty*	at zs?
3391.150Schs
3401.125Slukem## NS16x50 serial chips and clones.  Present on the
3411.113Smatt## Sun JavaStation-1 and Tadpole SPARCbook 3
3421.113Smattcom*	at obio0					# sun4m
3431.66Spk
3441.97Scjs# Parallel port.
3451.97Scjsbpp*	at sbus? slot? offset ?
3461.66Spk
3471.66Spk## Magma Serial/Parallel driver
3481.66Spkmagma*	at sbus? slot ? offset ?
3491.66Spkmtty*	at magma?
3501.66Spkmbpp*	at magma?
3511.66Spk
3521.162Smrg## SUNW,spif Serial/Parallel driver
3531.162Smrgspif*  at sbus? slot ? offset ?
3541.162Smrgstty*  at spif?
3551.162Smrgsbpp*  at spif?
3561.162Smrg
3571.75Spk## PCMCIA serial interfaces
3581.80Sabs#com*	at pcmcia?
3591.80Sabs#pcmcom*	at pcmcia?
3601.80Sabs#com*	at pcmcom?
3611.24Sthorpej
3621.55Spk#### Disk controllers and disks
3631.55Spk
3641.26Spk#
3651.26Spk
3661.55Spk## The following flags may be set for the NCR53c94 based esp driver:
3671.55Spk##	bits 0-7:  disable disconnect/reselect for the corresponding target
3681.55Spk##	bits 8-15: disable synchronous negotiation for target [bit-8]
3691.55Spk
3701.55Spk## sun4/300, sun4c, sun4m on-board SCSI, and FSBE/S SBus SCSI cards.
3711.55Spk## Both `dma' and `esp' are needed in all cases.
3721.55Spk## Two kinds of additional SBus SCSI interfaces are available.  One uses
3731.55Spk## "esp at sbus" like the sun4c on-board; the other uses "esp at dma".
3741.55Spk
3751.55Spk## sun4/300 SCSI - an NCR53c94 or equivalent behind
3761.55Spk## an LSI Logic DMA controller
3771.55Spk
3781.24Sthorpejdma0	at obio0 addr 0xfa001000 level 4		# sun4/300
3791.55Spkesp0	at obio0 addr 0xfa000000 level 4 flags 0x0000	# sun4/300
3801.1Sderaadt
3811.55Spkdma0	at sbus0 slot ? offset ?			# sun4c/sun4m
3821.51Spkesp0	at sbus0 slot ? offset ? flags 0x0000		# sun4c
3831.51Spkesp0	at dma0 flags 0x0000				# sun4m
3841.24Sthorpej
3851.151Sfair# FSBE/S SCSI & SunSwift Sbus FAS366
3861.55Spkdma*	at sbus? slot ? offset ?			# SBus
3871.151Sfairesp*	at sbus? slot ? offset ? flags 0x0000		# SBus
3881.55Spkesp*	at dma? flags 0x0000				# SBus
3891.24Sthorpej
3901.55Spkscsibus* at esp?
3911.55Spk
3921.55Spk## Qlogic ISP SBus SCSI Card
3931.42Scgdisp*	at sbus? slot ? offset ?
3941.55Spkscsibus* at isp?
3951.42Scgd
3961.55Spk## NCR5380-based "Sun SCSI 3" VME SCSI controller.
3971.55Spk## This driver has several flags which may be enabled by OR'ing
3981.55Spk## the values and using the "flags" directive.
3991.55Spk## Valid flags are:
4001.55Spk##
4011.55Spk##	0x01		Use DMA (may be polled)
4021.55Spk##	0x02		Use DMA completion interrupts
4031.55Spk##	0x04		Allow disconnect/reselect
4041.55Spk##
4051.55Spk## E.g. the following would enable DMA, interrupts, and reselect:
4061.88Sdrochner## si0	at vme0 addr 0x200000 irq 3 vect 0x40 flags 0x07
4071.55Spk##
4081.55Spk## By default, DMA is enabled in the driver.
4091.25Spk
4101.88Sdrochnersi0	at vme0 addr 0x200000 irq 2 vect 0x40
4111.55Spkscsibus* at si?
4121.24Sthorpej
4131.55Spk## NCR5380-based "SCSI Weird" on-board SCSI interface found
4141.55Spk## on sun4/100 systems.  The flags are the same as the "si"
4151.55Spk## controller.  Note, while DMA is enabled by default, only
4161.55Spk## polled DMA works at this time, and reselects do not work
4171.55Spk## on this particular controller.
4181.1Sderaadt
4191.55Spksw0	at obio0 addr 0x0a000000 level 3
4201.55Spkscsibus* at sw?
4211.24Sthorpej
4221.75Spk## PCMCIA SCSI controllers
4231.80Sabs#aic*	at pcmcia?
4241.80Sabs#scsibus* at aic?
4251.75Spk
4261.75Spk
4271.55Spk## These entries find devices on all SCSI busses and assign
4281.55Spk## unit numbers dynamically.
4291.55Spksd*	at scsibus? target ? lun ?		# SCSI disks
4301.55Spkst*	at scsibus? target ? lun ?		# SCSI tapes
4311.55Spkcd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
4321.55Spkch*	at scsibus? target ? lun ?		# SCSI changer devices
4331.55Spkss*	at scsibus? target ? lun ?		# SCSI scanners
4341.118Smjacobses*	at scsibus? target ? lun ?		# SCSI SES/SAF-TE
4351.55Spkuk*	at scsibus? target ? lun ?		# unknown SCSI
4361.23Spk
4371.9Spk
4381.55Spk## Xylogics 753 or 7053 VME SMD disk controllers and disks, found
4391.55Spk## on sun4 systems.
4401.88Sdrochnerxdc0	at vme0 addr 0xee80 irq 3 vect 0x44
4411.88Sdrochnerxdc1	at vme0 addr 0xee90 irq 3 vect 0x45
4421.88Sdrochnerxdc2	at vme0 addr 0xeea0 irq 3 vect 0x46
4431.88Sdrochnerxdc3	at vme0 addr 0xeeb0 irq 3 vect 0x47
4441.9Spkxd*	at xdc? drive ?
4451.16Schuck
4461.55Spk## Xylogics 451 or 451 VME SMD disk controllers and disks, found
4471.55Spk## on sun4 systems.
4481.88Sdrochnerxyc0	at vme0 addr 0xee40 irq 3 vect 0x48
4491.88Sdrochnerxyc1	at vme0 addr 0xee48 irq 3 vect 0x49
4501.16Schuckxy*	at xyc? drive ?
4511.10Spk
4521.24Sthorpej
4531.55Spk## Floppy controller and drive found on SPARCstations.
4541.55Spk
4551.55Spkfdc0	at mainbus0				# sun4c controller
4561.55Spkfdc0	at obio0				# sun4m controller
4571.55Spkfd*	at fdc0					# the drive itself
4581.55Spk
4591.75Spk## PCMCIA IDE controllers
4601.80Sabs#wdc*	at pcmcia?
4611.149Smartin#atabus* at ata?
4621.149Smartin#wd*	at atabus? drive ? flags 0x0000
4631.149Smartin
4641.149Smartin## PCMCIA wavelan card
4651.149Smartin#wi*	at pcmcia? function ?		# Lucent WaveLan IEEE (802.11)
4661.75Spk
4671.55Spk## A disk-like interface to files.  Can be used to create floppy, CD,
4681.55Spk## miniroot images, etc.
4691.55Spk
4701.55Spkpseudo-device	vnd	4
4711.175Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
4721.55Spk
4731.55Spk## Concatenated and striped disks; with this, you can create a software-based
4741.55Spk## disk array similar to a "RAID 0" setup.  See ccd(4).
4751.55Spk
4761.55Spkpseudo-device	ccd	4
4771.141Selric
4781.141Selric## Cryptographic disk devices;  See cgd(4)
4791.141Selric
4801.141Selric#pseudo-device	cgd	4
4811.71Soster
4821.71Soster## RAIDframe disk driver: software RAID driver.  See raid(4).
4831.71Soster
4841.129Sosterpseudo-device	raid	8
4851.129Sosteroptions 	RAID_AUTOCONFIG		# auto-configuration of RAID components
4861.129Soster# Options to enable various other RAIDframe RAID types.
4871.160Suwe# options 	RF_INCLUDE_EVENODD=1
4881.160Suwe# options 	RF_INCLUDE_RAID5_RS=1
4891.160Suwe# options 	RF_INCLUDE_PARITYLOGGING=1
4901.160Suwe# options 	RF_INCLUDE_CHAINDECLUSTER=1
4911.160Suwe# options 	RF_INCLUDE_INTERDECLUSTER=1
4921.129Soster# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
4931.160Suwe# options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
4941.129Soster
4951.55Spk
4961.55Spk## Memory disk device, used on boot floppies with compressed
4971.55Spk## kernel-plus-root-disk images.
4981.55Spk
4991.55Spk#pseudo-device	md	1
5001.55Spk
5011.55Spk
5021.55Spk#### Network interfaces
5031.55Spk
5041.55Spk## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue
5051.55Spk## Three flavors of additional SBus ethernets are available.  One attaches
5061.55Spk## directly like the sun4c on-board, one uses the ledma device like the
5071.55Spk## sun4m on-board, and one uses the lebuffer device.
5081.55Spk
5091.56Spkle0		at obio0 addr 0xf9000000 level 6	# sun4/300
5101.56Spkle0		at sbus0 slot ? offset ?		# sun4c on-board
5111.56Spkledma0		at sbus0 slot ? offset ?		# sun4m on-board
5121.56Spkle0		at ledma0				# sun4m on-board
5131.56Spkle*		at sbus? slot ? offset ?		# SBus
5141.56Spkledma*		at sbus? slot ? offset ?		# SBus
5151.56Spkle*		at ledma?				# SBus
5161.56Spklebuffer0	at sbus? slot ? offset ?		# SBus
5171.56Spkle0		at lebuffer?				# SBus
5181.55Spklebuffer*	at sbus? slot ? offset ?		# SBus
5191.56Spkle*		at lebuffer?				# SBus
5201.55Spk
5211.55Spk
5221.55Spk## sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board
5231.55Spk## or on a Multibus/VME card.
5241.55Spkie0	at obio0 addr 0xf6000000 level 6		# sun4/200 on-board
5251.55Spkie0	at obio0 addr 0x06000000 level 6		# sun4/100 on-board
5261.108Spk## VME: the first [addr,len] pair specifies the device registers;
5271.108Spk##	the second pair specifies the on-board memory buffer
5281.108Spkie1	at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75
5291.108Spkie2	at vme0 addr 0x31ff02,0x300000 len -1,0x40000 irq 3 vect 0x76
5301.108Spkie3	at vme0 addr 0x35ff02,0x300000 len -1,0x40000 irq 3 vect 0x77
5311.108Spkie4	at vme0 addr 0x2dff02,0x200000 len -1,0x40000 irq 3 vect 0x7c
5321.55Spk
5331.90Shubertf## Quad Ethernet Controller with BigMac (be, 10/100MBd) and Mace Ethernet
5341.90Shubertf## (qe, 10MBd) attached.
5351.90Shubertfqec*	at sbus? slot ? offset ?		# Quad Ethernet Controller
5361.90Shubertfbe*	at qec?					# BigMac Ethernet (10/100MBd)
5371.90Shubertfqe*	at qec?					# Mace Ethernet (10MBd)
5381.85Spk
5391.98Spk## Happy Meal Ethernet
5401.98Spkhme*	at sbus? slot ? offset ?
5411.70Spk
5421.70Spk# midway ATM
5431.70Spken0	at sbus? slot ? offset ?
5441.75Spk
5451.75Spk# PCMCIA ethernet devices
5461.80Sabs#ep*	at pcmcia?
5471.80Sabs#mbe*	at pcmcia?
5481.80Sabs#ne*	at pcmcia?
5491.80Sabs#sm*	at pcmcia?
5501.75Spk
5511.75Spk# MII/PHY support
5521.81Spkexphy*	at mii? phy ?			# 3Com internal PHYs
5531.131Swizicsphy*	at mii? phy ?			# Integrated Circuit Systems ICS189x
5541.81Spkinphy*	at mii? phy ?			# Intel 82555 PHYs
5551.81Spklxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
5561.81Spknsphy*	at mii? phy ?			# NS83840 PHYs
5571.81Spkqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
5581.81Spksqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
5591.81Spktlphy*	at mii? phy ?			# ThunderLAN PHYs
5601.81Spkukphy*	at mii? phy ?			# generic unknown PHYs
5611.70Spk
5621.55Spk## Loopback network interface; required
5631.55Spkpseudo-device	loop
5641.55Spk
5651.55Spk## SLIP and CSLIP interfaces, for IP over a serial line.
5661.55Spkpseudo-device	sl		2
5671.55Spk
5681.55Spk## PPP, the successor to SLIP.  See pppd(8).
5691.55Spkpseudo-device	ppp		2
5701.128Smartin
5711.128Smartin## PPP over Ethernet (RFC 2516)
5721.128Smartinpseudo-device	pppoe
5731.55Spk
5741.55Spk## Starmode Radio IP, a special hardware network device.
5751.55Spk#pseudo-device	strip		1
5761.55Spk
5771.55Spk## Network "tunnel" device, allowing protocol stacks to run in the userland.
5781.55Spk## This is used by the third-party user-mode "ppp" program, and others.
5791.55Spkpseudo-device	tun		4
5801.165Scubepseudo-device	tap			# virtual Ethernet
5811.73Shwr
5821.73Shwr## Generic L3 over IP tunnel
5831.73Shwr#pseudo-device	gre		2	# generic L3 over IP tunnel
5841.55Spk
5851.55Spk## Berkeley Packet Filter, required to run RARPD.  A generic C-language
5861.55Spk## interface that allows selective examining of incoming packets.
5871.55Spkpseudo-device	bpfilter	8
5881.55Spk
5891.55Spk## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
5901.55Spk## one example of the use of the IP Filter.
5911.55Spkpseudo-device	ipfilter
5921.55Spk
5931.94Sitojun## for IPv6
5941.94Sitojunpseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
5951.94Sitojun#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
5961.104Sitojun#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
5971.120Shubertf
5981.120Shubertf## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
5991.120Shubertfpseudo-device	vlan
6001.122Satatat
6011.122Satatat## Simple inter-network traffic bridging
6021.126Satatatpseudo-device	bridge
6031.160Suwe#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
6041.55Spk
6051.55Spk#### Audio and video devices
6061.55Spk
6071.55Spk## /dev/audio support (`audioamd' plus `audio')
6081.55Spk##
6091.55Spkaudioamd0	at mainbus0				# sun4c
6101.142Sjdcaudioamd0	at obio0				# sun4m
6111.55Spkaudioamd0	at sbus0 slot ? offset ?		# sun4m
6121.70Spk
6131.70Spkaudiocs0	at sbus0 slot ? offset ?		# SUNW,CS4231
6141.55Spk
6151.174Smacallandbri0		at sbus0 slot ? offset ?		# SUNW,DBRI[s3|e]
6161.174Smacallan
6171.174Smacallanaudio*		at audiobus?
6181.55Spk
6191.55Spk## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
6201.55Spk## systems.  If your sun4 system has a cgfour installed in the P4 slot,
6211.55Spk## the P4 entries for "bwtwo" will attach to the overlay plane of the
6221.55Spk## "cgfour".
6231.1Sderaadt
6241.55Spkbwtwo0		at sbus0 slot ? offset ?		# sun4c and sun4m
6251.55Spkbwtwo*		at sbus? slot ? offset ?		#
6261.55Spkbwtwo0		at obio0 addr 0xfd000000 level 4	# sun4/200
6271.55Spkbwtwo0		at obio0 addr 0xfb300000 level 4	# sun4/300 in P4 slot
6281.55Spkbwtwo0		at obio0 addr 0x0b300000 level 4	# sun4/100 in P4 slot
6291.21Sthorpej
6301.55Spk## Sun "cgtwo" VME color framebuffer
6311.88Sdrochnercgtwo0		at vme0 addr 0x400000 irq ? vect 0xa8
6321.21Sthorpej
6331.55Spk## Sun "cgthree" Sbus color framebuffer
6341.55Spkcgthree0	at sbus? slot ? offset ?
6351.55Spkcgthree*	at sbus? slot ? offset ?
6361.55Spk#cgthree0	at obio? slot ? offset ?		# sun4m
6371.55Spk
6381.55Spk## Sun "cgfour" color framebuffer with overlay plane.  See above comment
6391.55Spk## regarding overlay plane.
6401.55Spkcgfour0		at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6411.55Spkcgfour0		at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6421.55Spk
6431.55Spk## Sun "cgsix" accelerated color framebuffer.
6441.55Spkcgsix0		at sbus? slot ? offset ?
6451.55Spkcgsix*		at sbus? slot ? offset ?
6461.55Spkcgsix0		at obio0 addr 0xfb000000 level 4	# sun4/300 P4
6471.55Spkcgsix0		at obio0 addr 0x0b000000 level 4	# sun4/100 P4
6481.55Spk
6491.55Spk## Sun "cgeight" 24-bit framebuffer
6501.55Spkcgeight0 	at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6511.55Spkcgeight0	at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6521.55Spk
6531.55Spk## Sun "tcx" accelerated color framebuffer.
6541.55Spktcx0		at sbus? slot ? offset ?
6551.55Spktcx*		at sbus? slot ? offset ?
6561.33Sabrown
6571.33Sabrown# Sun "cgfourteen" accelerated 24-bit framebuffer.
6581.33Sabrowncgfourteen0	at obio0			# sun4m
6591.1Sderaadt
6601.106Smatt# P9100-based display on Tadpole SPARCbook 3.
6611.106Smattpnozz0		at sbus? slot ? offset ?
6621.136Sad
6631.136Sad# Sun ZX/Leo 24-bit framebuffer
6641.136Sadzx*		at sbus? slot ? offset ?
6651.1Sderaadt
6661.55Spk#### Other device configuration
6671.106Smatt
6681.106Smatt# Tadpole microcontroller
6691.106Smatttctrl0 at obio0
6701.24Sthorpej
6711.55Spk## Pseudo ttys, required for network logins and programs like screen.
6721.24Sthorpej
6731.117Sjdolecekpseudo-device	pty			# pseudo-terminals
6741.55Spk
6751.55Spk## Random device, used to implement /dev/random (a source of random noise),
6761.55Spk## and generate randomness for some kernel formulae.
6771.55Spk
6781.84Smrgpseudo-device	rnd
6791.91Sphil
6801.91Sphil# a pseudo device needed for Coda	# also needs CODA (above)
6811.91Sphilpseudo-device	vcoda		4	# coda minicache <-> venus comm.
6821.135Slukem
6831.135Slukempseudo-device	clockctl		# user control of clock subsystem
6841.147Sraggepseudo-device	ksyms			# /dev/ksyms
6851.155Sitojun#pseudo-device	pf			# PF packet filter
6861.155Sitojun#pseudo-device	pflog			# PF log if
6871.167Shannkenpseudo-device	fss		4	# file system snapshot device
688