GENERIC revision 1.247
11.247Smanu# $NetBSD: GENERIC,v 1.247 2014/11/12 10:47:24 manu 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.247Smanu#ident 		"GENERIC-$Revision: 1.247 $"
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.246Sjnemethoptions 	MODULAR_DEFAULT_AUTOLOAD
961.130Sjdolecek
971.137Slukemoptions 	USERCONF	# userconf(4) support
981.160Suwe#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
991.161Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
1001.143Sjunyoung
1011.144Swiz# Enable experimental buffer queue strategy for better responsiveness under 
1021.143Sjunyoung# high disk I/O load. Use it with caution - it's not proven to be stable yet.
1031.170Stsutsui#options 	BUFQ_READPRIO
1041.170Stsutsui#options 	BUFQ_PRIOCSCAN
1051.55Spk
1061.134Slukem## NFS boot options; tries DHCP/BOOTP then BOOTPARAM
1071.59Spkoptions 	NFS_BOOT_BOOTPARAM
1081.59Spk#options 	NFS_BOOT_BOOTP
1091.134Slukemoptions 	NFS_BOOT_DHCP
1101.55Spk
1111.55Spk#### Debugging options
1121.55Spk
1131.55Spk## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
1141.55Spk## serial console break or keyboard reset, where the PROM would normally
1151.55Spk## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
1161.214Stsutsuioptions 	DDB			# kernel dynamic debugger
1171.214Stsutsuioptions 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
1181.243Sszptvlfn#options 	DDB_ONPANIC=1		# see also sysctl(7): `ddb.onpanic'
1191.55Spk
1201.55Spk## You may also use gdb, on another computer connected to this machine over
1211.124Slukem## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
1221.124Slukem## KGDB_DEV is a dev_t encoded device number of the serial port to use, where
1231.124Slukem## the minor device number encodes the PROM enumeration of the serial ports,
1241.124Slukem## i.e.:
1251.124Slukem## 0xc00 = ttya, 0xc01 = ttyb, 0xc02 = ttyc, 0xc03 = ttyd.
1261.124Slukem## (Note: ttyc and ttyd are available only on some sun4 models)
1271.124Slukem#options 	KGDB			# support for kernel gdb
1281.124Slukem#options 	KGDB_DEV=0xc01		# kgdb device number (this is `ttyb')
1291.124Slukem#options 	KGDB_DEVRATE=38400	# baud rate
1301.24Sthorpej
1311.55Spk
1321.55Spk## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
1331.55Spk## such that gdb(1) can be used on a kernel coredump.
1341.55Spk
1351.125Slukem#makeoptions	DEBUG="-g"
1361.55Spk
1371.55Spk
1381.55Spk## Adds code to the kernel that does internal consistency checks, and will
1391.55Spk## cause the kernel to panic if corruption of internal data structures
1401.55Spk## is detected.
1411.55Spk#options 	DIAGNOSTIC	# extra kernel sanity checking
1421.55Spk
1431.55Spk## Enable (possibly expensive) debugging code that may also display messages
1441.55Spk## on the system console
1451.55Spk#options 	DEBUG
1461.226Sjdc#options 	LOCKDEBUG
1471.226Sjdc#options 	SYSCALL_DEBUG
1481.55Spk
1491.55Spk## Make SCSI error messages more verbose when explaining their meanings.
1501.55Spkoptions 	SCSIVERBOSE
1511.105Saugustss
1521.105Saugustssoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1531.55Spk
1541.55Spk## `INSECURE' turns off the kernel security level (securelevel = 0 always).
1551.55Spk## This allows writing to /dev/mem, loading kernel modules while multi-user,
1561.55Spk## and other insecurities good only for development work.  Do not use this
1571.55Spk## option on a production machine.
1581.55Spk#options 	INSECURE
1591.55Spk
1601.55Spk## `FDSCRIPTS' allows non-readable but executable scripts by providing a
1611.55Spk## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
1621.55Spk## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
1631.55Spk## opaque file mechanism.  Perl calls this "secure setuid scripts."
1641.55Spk
1651.55Spk#options 	FDSCRIPTS
1661.55Spk#options 	SETUIDSCRIPTS
1671.55Spk
1681.55Spk## Options for compatibility with previous releases foreign system binaries.
1691.55Spk## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up
1701.55Spk## additional user-level utilities or system configuration files. See
1711.55Spk## compat_sunos(8) and compat_svr4(8).
1721.55Spk
1731.43Slukemoptions 	COMPAT_43	# 4.3BSD system interfaces
1741.245Sdhollandoptions 	COMPAT_10	# NetBSD 1.0,
1751.245Sdhollandoptions 	COMPAT_11	# NetBSD 1.1,
1761.245Sdhollandoptions 	COMPAT_12	# NetBSD 1.2,
1771.245Sdhollandoptions 	COMPAT_13	# NetBSD 1.3,
1781.245Sdhollandoptions 	COMPAT_14	# NetBSD 1.4,
1791.245Sdhollandoptions 	COMPAT_15	# NetBSD 1.5,
1801.245Sdhollandoptions 	COMPAT_16	# NetBSD 1.6,
1811.245Sdhollandoptions 	COMPAT_20	# NetBSD 2.0,
1821.245Sdhollandoptions 	COMPAT_30	# NetBSD 3.0,
1831.245Sdhollandoptions 	COMPAT_40	# NetBSD 4.0,
1841.245Sdhollandoptions 	COMPAT_50	# NetBSD 5.0,
1851.245Sdhollandoptions 	COMPAT_60	# NetBSD 6.0, and
1861.245Sdhollandoptions 	COMPAT_70	# NetBSD 7.0 binary compatibility
1871.43Slukemoptions 	COMPAT_SUNOS	# SunOS 4.x binary compatibility
1881.43Slukemoptions 	COMPAT_SVR4	# SunOS 5.x binary compatibility
1891.211Sjdcoptions 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
1901.1Sderaadt
1911.55Spk## File systems.  You probably need at least one of FFS or NFS.
1921.43Slukemfile-system	FFS		# Berkeley Fast Filesystem
1931.43Slukemfile-system	NFS		# Sun NFS-compatible filesystem client
1941.43Slukemfile-system	KERNFS		# kernel data-structure filesystem
1951.43Slukemfile-system	NULLFS		# NULL layered filesystem
1961.95Swrstudenfile-system 	OVERLAY		# overlay file system
1971.43Slukemfile-system	MFS		# memory-based filesystem
1981.43Slukemfile-system	FDESC		# user file descriptor filesystem
1991.43Slukemfile-system	UMAPFS		# uid/gid remapping filesystem
2001.43Slukemfile-system	LFS		# Log-based filesystem (still experimental)
2011.218Spookafile-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
2021.43Slukemfile-system	PROCFS		# /proc
2031.43Slukemfile-system	CD9660		# ISO 9660 + Rock Ridge file system
2041.43Slukemfile-system	UNION		# union file system
2051.43Slukemfile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
2061.91Sphilfile-system	CODA		# Coda File System; also needs vcoda (below)
2071.179Schristosfile-system	PTYFS		# /dev/pts/N support
2081.223Schsfile-system	TMPFS		# Efficient memory file-system
2091.183Sreinoud#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
2101.43Slukem
2111.55Spk## File system options.
2121.43Slukemoptions 	NFSSERVER	# Sun NFS-compatible filesystem server
2131.43Slukemoptions 	QUOTA		# FFS quotas
2141.63Spk#options 	FFS_EI		# FFS Endian Independent support
2151.229Sdhollandoptions 	WAPBL		# File system journaling support
2161.211Sjdc#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
2171.181Stsutsui#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
2181.247Smanuoptions 	UFS_EXTATTR	# Extended attribute support for UFS1
2191.247Smanuoptions 	UFS_EXTATTR_AUTOSTART
2201.247Smanuoptions 	UFS_EXTATTR_AUTOCREATE=1024
2211.94Sitojun
2221.55Spk## Network protocol support.  In most environments, INET is required.
2231.57Spkoptions 	INET		# IP (Internet Protocol) v4
2241.94Sitojunoptions 	INET6		# IPV6
2251.94Sitojun#options 	IPSEC		# IP security
2261.94Sitojun#options 	IPSEC_DEBUG	# debug for IP security
2271.57Spk#options 	GATEWAY		# packet forwarding ("router switch")
2281.57Spk#options 	MROUTING	# packet forwarding of multicast packets
2291.163Smanu#options 	PIM		# Protocol Independent Multicast
2301.57Spk#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
2311.75Spk#options 	NETATALK	# AppleTalk (over Ethernet) protocol
2321.67Spkoptions 	NTP		# Network Time Protocol in-kernel support
2331.57Spk#options 	PPS_SYNC	# Add serial line synchronization for NTP
2341.86Schristosoptions 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
2351.192Schristosoptions 	IPFILTER_LOOKUP	# ippool(8) support
2361.224Smrgoptions 	IPFILTER_COMPAT # Compat for IP-Filter
2371.139Smartti#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
2381.86Schristosoptions 	PPP_BSDCOMP	# Add BSD compression to ppp device
2391.86Schristosoptions 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
2401.86Schristosoptions 	PPP_FILTER	# Add active filters for ppp (via bpf)
2411.1Sderaadt
2421.156Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
2431.156Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
2441.156Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
2451.156Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
2461.156Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
2471.156Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
2481.156Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
2491.156Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
2501.156Sabs#options 	ALTQ_PRIQ	# Priority Queueing
2511.156Sabs#options 	ALTQ_RED	# Random Early Detection
2521.156Sabs#options 	ALTQ_RIO	# RED with IN/OUT
2531.156Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
2541.156Sabs
2551.1Sderaadt
2561.55Spk
2571.57Spk#### Main bus and CPU .. all systems.
2581.1Sderaadtmainbus0 at root
2591.1Sderaadtcpu0	at mainbus0
2601.150Schscpuunit0	at mainbus0			# sun4d
2611.150Schscpuunit*	at mainbus0			# sun4d
2621.150Schscpu0	at cpuunit0				# sun4d
2631.1Sderaadt
2641.236Smacallan#### SX rendering engine found in SS20 and SS10SX
2651.236Smacallansx0	at mainbus0
2661.236Smacallan
2671.55Spk#### Bus types found on SPARC systems.
2681.55Spk
2691.24Sthorpejsbus0	at mainbus0				# sun4c
2701.24Sthorpejobio0	at mainbus0				# sun4 and sun4m
2711.150Schssparcvme0	at mainbus0			# sun4
2721.22Spkiommu0	at mainbus0				# sun4m
2731.22Spksbus0	at iommu0				# sun4m
2741.150Schssparcvme0	at iommu0			# sun4m
2751.150Schsvme0	at sparcvme0				# MI VME attachment
2761.150Schsbootbus0	at cpuunit0			# sun4d
2771.150Schsbootbus*	at cpuunit?			# sun4d
2781.64Spk
2791.64Spk## SBus expander box
2801.64Spkxbox*	at sbus? slot ? offset ?
2811.64Spksbus*	at xbox?
2821.72Spk
2831.72Spk## SBus to PCMCIA bridge
2841.159Spknell*	at sbus? slot ? offset ?		# PCMCIA bridge
2851.159Spkpcmcia*	at nell?
2861.173Smacallantslot*	at sbus? slot ? offset ?		# PCMCIA bridge (tadpole 3gx)
2871.173Smacallanpcmcia*	at tslot?
2881.1Sderaadt
2891.55Spk#### Standard system devices -- all required for a given architecture
2901.24Sthorpej
2911.55Spk## Auxiliary system registers on sun4c and sun4m
2921.24Sthorpejauxreg0	at mainbus0				# sun4c
2931.22Spkauxreg0	at obio0				# sun4m
2941.106Smattauxiotwo0 at obio0				# only on Tadpole SPARCbook.
2951.27Sabrown
2961.55Spk## Power status and control register on Sun4m systems
2971.27Sabrownpower0	at obio0
2981.24Sthorpej
2991.150Schs## Mostek clock found on 4/300, sun4c, sun4m and sun4d systems.
3001.55Spk## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
3011.24Sthorpejclock0	at mainbus0				# sun4c
3021.22Spkclock0	at obio0				# sun4m
3031.24Sthorpejclock0	at obio0 addr 0xf2000000		# sun4/300
3041.150Schsclock0	at bootbus0				# sun4d
3051.24Sthorpej
3061.55Spk## Intersil clock found on 4/100 and 4/200 systems.
3071.24Sthorpejoclock0	at obio0 addr 0xf3000000		# sun4/200
3081.24Sthorpejoclock0	at obio0 addr 0x03000000		# sun4/100
3091.24Sthorpej
3101.55Spk## Memory error registers.
3111.24Sthorpejmemreg0	at mainbus0				# sun4c
3121.22Spkmemreg0	at obio0				# sun4m
3131.24Sthorpejmemreg0	at obio0 addr 0xf4000000		# sun4/200 and sun4/300
3141.24Sthorpejmemreg0	at obio0 addr 0x04000000		# sun4/100
3151.74Spk
3161.74Spk## ECC memory control
3171.74Spkeccmemctl0 at mainbus0				# sun4m
3181.24Sthorpej
3191.55Spk## Timer chip found on 4/300, sun4c, and sun4m systems.
3201.24Sthorpejtimer0	at mainbus0				# sun4c
3211.22Spktimer0	at obio0				# sun4m
3221.24Sthorpejtimer0	at obio0 addr 0xef000000		# sun4/300
3231.24Sthorpej
3241.55Spk## EEPROM found on 4/100 and 4/200 systems.  Note that the 4/300
3251.55Spk## doesn't use this driver; the `EEPROM' is in the NVRAM on the
3261.55Spk## Mostek clock chip on 4/300 systems.
3271.24Sthorpejeeprom0	at obio0 addr 0xf2000000		# sun4/200
3281.24Sthorpejeeprom0	at obio0 addr 0x02000000		# sun4/100
3291.24Sthorpej
3301.55Spk
3311.55Spk#### Serial port configuration
3321.55Spk
3331.55Spk## Zilog 8530 serial chips.  Each has two-channels.
3341.55Spk## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
3351.24Sthorpejzs0	at mainbus0					# sun4c
3361.24Sthorpejzs0	at obio0					# sun4m
3371.100Spkzs0	at obio0 addr 0xf1000000 level 12		# sun4/200 and sun4/300
3381.100Spkzs0	at obio0 addr 0x01000000 level 12		# sun4/100
3391.150Schszs0	at bootbus0					# sun4d
3401.212Stsutsuizstty0	at zs0 channel 0				# ttya
3411.212Stsutsuizstty1	at zs0 channel 1				# ttyb
3421.50Sgwr
3431.24Sthorpejzs1	at mainbus0					# sun4c
3441.24Sthorpejzs1	at obio0					# sun4m
3451.100Spkzs1	at obio0 addr 0xf0000000 level 12		# sun4/200 and sun4/300
3461.100Spkzs1	at obio0 addr 0x00000000 level 12		# sun4/100
3471.150Schszs1	at bootbus0					# sun4d
3481.208Smacallan
3491.208Smacallan# old kbd and mouse attachments
3501.208Smacallan#kbd0	at zs1 channel 0				# keyboard
3511.208Smacallan#ms0	at zs1 channel 1				# mouse
3521.208Smacallanzstty*	at zs?
3531.208Smacallan
3541.208Smacallan# these are for wscons
3551.208Smacallankbd0	at zstty?
3561.208Smacallanms0	at zstty?
3571.208Smacallanwskbd*	at wskbddev?
3581.208Smacallanwsmouse* 	at wsmousedev?
3591.100Spk
3601.100Spkzs2	at obio0 addr 0xe0000000 level 12		# sun4/300
3611.100Spkzstty2	at zs2 channel 0				# ttyc
3621.100Spkzstty3	at zs2 channel 1				# ttyd
3631.113Smatt
3641.150Schszs*	at bootbus?					# sun4d
3651.150Schszstty*	at zs?
3661.150Schs
3671.125Slukem## NS16x50 serial chips and clones.  Present on the
3681.113Smatt## Sun JavaStation-1 and Tadpole SPARCbook 3
3691.113Smattcom*	at obio0					# sun4m
3701.66Spk
3711.97Scjs# Parallel port.
3721.97Scjsbpp*	at sbus? slot? offset ?
3731.66Spk
3741.66Spk## Magma Serial/Parallel driver
3751.66Spkmagma*	at sbus? slot ? offset ?
3761.66Spkmtty*	at magma?
3771.66Spkmbpp*	at magma?
3781.66Spk
3791.162Smrg## SUNW,spif Serial/Parallel driver
3801.162Smrgspif*  at sbus? slot ? offset ?
3811.162Smrgstty*  at spif?
3821.162Smrgsbpp*  at spif?
3831.162Smrg
3841.75Spk## PCMCIA serial interfaces
3851.80Sabs#com*	at pcmcia?
3861.80Sabs#pcmcom*	at pcmcia?
3871.80Sabs#com*	at pcmcom?
3881.24Sthorpej
3891.55Spk#### Disk controllers and disks
3901.55Spk
3911.26Spk#
3921.26Spk
3931.55Spk## The following flags may be set for the NCR53c94 based esp driver:
3941.55Spk##	bits 0-7:  disable disconnect/reselect for the corresponding target
3951.55Spk##	bits 8-15: disable synchronous negotiation for target [bit-8]
3961.55Spk
3971.55Spk## sun4/300, sun4c, sun4m on-board SCSI, and FSBE/S SBus SCSI cards.
3981.55Spk## Both `dma' and `esp' are needed in all cases.
3991.55Spk## Two kinds of additional SBus SCSI interfaces are available.  One uses
4001.55Spk## "esp at sbus" like the sun4c on-board; the other uses "esp at dma".
4011.55Spk
4021.55Spk## sun4/300 SCSI - an NCR53c94 or equivalent behind
4031.55Spk## an LSI Logic DMA controller
4041.55Spk
4051.24Sthorpejdma0	at obio0 addr 0xfa001000 level 4		# sun4/300
4061.55Spkesp0	at obio0 addr 0xfa000000 level 4 flags 0x0000	# sun4/300
4071.1Sderaadt
4081.55Spkdma0	at sbus0 slot ? offset ?			# sun4c/sun4m
4091.51Spkesp0	at sbus0 slot ? offset ? flags 0x0000		# sun4c
4101.51Spkesp0	at dma0 flags 0x0000				# sun4m
4111.24Sthorpej
4121.151Sfair# FSBE/S SCSI & SunSwift Sbus FAS366
4131.55Spkdma*	at sbus? slot ? offset ?			# SBus
4141.151Sfairesp*	at sbus? slot ? offset ? flags 0x0000		# SBus
4151.55Spkesp*	at dma? flags 0x0000				# SBus
4161.24Sthorpej
4171.55Spkscsibus* at esp?
4181.55Spk
4191.55Spk## Qlogic ISP SBus SCSI Card
4201.42Scgdisp*	at sbus? slot ? offset ?
4211.55Spkscsibus* at isp?
4221.42Scgd
4231.55Spk## NCR5380-based "Sun SCSI 3" VME SCSI controller.
4241.55Spk## This driver has several flags which may be enabled by OR'ing
4251.55Spk## the values and using the "flags" directive.
4261.55Spk## Valid flags are:
4271.55Spk##
4281.55Spk##	0x01		Use DMA (may be polled)
4291.55Spk##	0x02		Use DMA completion interrupts
4301.55Spk##	0x04		Allow disconnect/reselect
4311.55Spk##
4321.55Spk## E.g. the following would enable DMA, interrupts, and reselect:
4331.88Sdrochner## si0	at vme0 addr 0x200000 irq 3 vect 0x40 flags 0x07
4341.55Spk##
4351.55Spk## By default, DMA is enabled in the driver.
4361.25Spk
4371.88Sdrochnersi0	at vme0 addr 0x200000 irq 2 vect 0x40
4381.55Spkscsibus* at si?
4391.24Sthorpej
4401.55Spk## NCR5380-based "SCSI Weird" on-board SCSI interface found
4411.55Spk## on sun4/100 systems.  The flags are the same as the "si"
4421.55Spk## controller.  Note, while DMA is enabled by default, only
4431.55Spk## polled DMA works at this time, and reselects do not work
4441.55Spk## on this particular controller.
4451.1Sderaadt
4461.55Spksw0	at obio0 addr 0x0a000000 level 3
4471.55Spkscsibus* at sw?
4481.24Sthorpej
4491.75Spk## PCMCIA SCSI controllers
4501.80Sabs#aic*	at pcmcia?
4511.189Shubertf#spc*	at pcmcia?
4521.80Sabs#scsibus* at aic?
4531.189Shubertf#scsibus* at spc?
4541.75Spk
4551.75Spk
4561.55Spk## These entries find devices on all SCSI busses and assign
4571.55Spk## unit numbers dynamically.
4581.55Spksd*	at scsibus? target ? lun ?		# SCSI disks
4591.55Spkst*	at scsibus? target ? lun ?		# SCSI tapes
4601.55Spkcd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
4611.55Spkch*	at scsibus? target ? lun ?		# SCSI changer devices
4621.55Spkss*	at scsibus? target ? lun ?		# SCSI scanners
4631.118Smjacobses*	at scsibus? target ? lun ?		# SCSI SES/SAF-TE
4641.55Spkuk*	at scsibus? target ? lun ?		# unknown SCSI
4651.23Spk
4661.9Spk
4671.55Spk## Xylogics 753 or 7053 VME SMD disk controllers and disks, found
4681.55Spk## on sun4 systems.
4691.88Sdrochnerxdc0	at vme0 addr 0xee80 irq 3 vect 0x44
4701.88Sdrochnerxdc1	at vme0 addr 0xee90 irq 3 vect 0x45
4711.88Sdrochnerxdc2	at vme0 addr 0xeea0 irq 3 vect 0x46
4721.88Sdrochnerxdc3	at vme0 addr 0xeeb0 irq 3 vect 0x47
4731.9Spkxd*	at xdc? drive ?
4741.16Schuck
4751.55Spk## Xylogics 451 or 451 VME SMD disk controllers and disks, found
4761.55Spk## on sun4 systems.
4771.88Sdrochnerxyc0	at vme0 addr 0xee40 irq 3 vect 0x48
4781.88Sdrochnerxyc1	at vme0 addr 0xee48 irq 3 vect 0x49
4791.16Schuckxy*	at xyc? drive ?
4801.10Spk
4811.24Sthorpej
4821.55Spk## Floppy controller and drive found on SPARCstations.
4831.55Spk
4841.55Spkfdc0	at mainbus0				# sun4c controller
4851.55Spkfdc0	at obio0				# sun4m controller
4861.55Spkfd*	at fdc0					# the drive itself
4871.55Spk
4881.75Spk## PCMCIA IDE controllers
4891.80Sabs#wdc*	at pcmcia?
4901.149Smartin#atabus* at ata?
4911.149Smartin#wd*	at atabus? drive ? flags 0x0000
4921.149Smartin
4931.55Spk## A disk-like interface to files.  Can be used to create floppy, CD,
4941.55Spk## miniroot images, etc.
4951.55Spk
4961.185Scubepseudo-device	vnd	
4971.175Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
4981.55Spk
4991.55Spk## Concatenated and striped disks; with this, you can create a software-based
5001.55Spk## disk array similar to a "RAID 0" setup.  See ccd(4).
5011.55Spk
5021.239Schristospseudo-device	ccd
5031.141Selric
5041.141Selric## Cryptographic disk devices;  See cgd(4)
5051.141Selric
5061.239Schristos#pseudo-device	cgd
5071.71Soster
5081.71Soster## RAIDframe disk driver: software RAID driver.  See raid(4).
5091.71Soster
5101.240Schristospseudo-device	raid	
5111.129Sosteroptions 	RAID_AUTOCONFIG		# auto-configuration of RAID components
5121.129Soster# Options to enable various other RAIDframe RAID types.
5131.160Suwe# options 	RF_INCLUDE_EVENODD=1
5141.160Suwe# options 	RF_INCLUDE_RAID5_RS=1
5151.160Suwe# options 	RF_INCLUDE_PARITYLOGGING=1
5161.160Suwe# options 	RF_INCLUDE_CHAINDECLUSTER=1
5171.160Suwe# options 	RF_INCLUDE_INTERDECLUSTER=1
5181.129Soster# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
5191.160Suwe# options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
5201.129Soster
5211.55Spk
5221.55Spk## Memory disk device, used on boot floppies with compressed
5231.55Spk## kernel-plus-root-disk images.
5241.55Spk
5251.225Shannken#pseudo-device	md	
5261.55Spk
5271.55Spk
5281.55Spk#### Network interfaces
5291.55Spk
5301.55Spk## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue
5311.55Spk## Three flavors of additional SBus ethernets are available.  One attaches
5321.55Spk## directly like the sun4c on-board, one uses the ledma device like the
5331.55Spk## sun4m on-board, and one uses the lebuffer device.
5341.55Spk
5351.56Spkle0		at obio0 addr 0xf9000000 level 6	# sun4/300
5361.56Spkle0		at sbus0 slot ? offset ?		# sun4c on-board
5371.56Spkledma0		at sbus0 slot ? offset ?		# sun4m on-board
5381.56Spkle0		at ledma0				# sun4m on-board
5391.56Spkle*		at sbus? slot ? offset ?		# SBus
5401.56Spkledma*		at sbus? slot ? offset ?		# SBus
5411.56Spkle*		at ledma?				# SBus
5421.56Spklebuffer0	at sbus? slot ? offset ?		# SBus
5431.56Spkle0		at lebuffer?				# SBus
5441.55Spklebuffer*	at sbus? slot ? offset ?		# SBus
5451.56Spkle*		at lebuffer?				# SBus
5461.55Spk
5471.55Spk
5481.55Spk## sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board
5491.55Spk## or on a Multibus/VME card.
5501.55Spkie0	at obio0 addr 0xf6000000 level 6		# sun4/200 on-board
5511.55Spkie0	at obio0 addr 0x06000000 level 6		# sun4/100 on-board
5521.108Spk## VME: the first [addr,len] pair specifies the device registers;
5531.108Spk##	the second pair specifies the on-board memory buffer
5541.108Spkie1	at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75
5551.108Spkie2	at vme0 addr 0x31ff02,0x300000 len -1,0x40000 irq 3 vect 0x76
5561.108Spkie3	at vme0 addr 0x35ff02,0x300000 len -1,0x40000 irq 3 vect 0x77
5571.108Spkie4	at vme0 addr 0x2dff02,0x200000 len -1,0x40000 irq 3 vect 0x7c
5581.55Spk
5591.90Shubertf## Quad Ethernet Controller with BigMac (be, 10/100MBd) and Mace Ethernet
5601.90Shubertf## (qe, 10MBd) attached.
5611.90Shubertfqec*	at sbus? slot ? offset ?		# Quad Ethernet Controller
5621.90Shubertfbe*	at qec?					# BigMac Ethernet (10/100MBd)
5631.90Shubertfqe*	at qec?					# Mace Ethernet (10MBd)
5641.85Spk
5651.98Spk## Happy Meal Ethernet
5661.98Spkhme*	at sbus? slot ? offset ?
5671.70Spk
5681.70Spk# midway ATM
5691.70Spken0	at sbus? slot ? offset ?
5701.75Spk
5711.75Spk# PCMCIA ethernet devices
5721.80Sabs#ep*	at pcmcia?
5731.80Sabs#mbe*	at pcmcia?
5741.80Sabs#ne*	at pcmcia?
5751.80Sabs#sm*	at pcmcia?
5761.75Spk
5771.217Stsutsui## PCMCIA wavelan card
5781.217Stsutsui#wi*	at pcmcia? function ?		# Lucent WaveLan IEEE (802.11)
5791.217Stsutsui
5801.75Spk# MII/PHY support
5811.81Spkexphy*	at mii? phy ?			# 3Com internal PHYs
5821.131Swizicsphy*	at mii? phy ?			# Integrated Circuit Systems ICS189x
5831.81Spkinphy*	at mii? phy ?			# Intel 82555 PHYs
5841.81Spklxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
5851.81Spknsphy*	at mii? phy ?			# NS83840 PHYs
5861.81Spkqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
5871.81Spksqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
5881.81Spktlphy*	at mii? phy ?			# ThunderLAN PHYs
5891.81Spkukphy*	at mii? phy ?			# generic unknown PHYs
5901.70Spk
5911.55Spk## Loopback network interface; required
5921.55Spkpseudo-device	loop
5931.55Spk
5941.55Spk## SLIP and CSLIP interfaces, for IP over a serial line.
5951.185Scubepseudo-device	sl		
5961.55Spk
5971.55Spk## PPP, the successor to SLIP.  See pppd(8).
5981.185Scubepseudo-device	ppp		
5991.128Smartin
6001.128Smartin## PPP over Ethernet (RFC 2516)
6011.128Smartinpseudo-device	pppoe
6021.55Spk
6031.55Spk## Starmode Radio IP, a special hardware network device.
6041.185Scube#pseudo-device	strip		
6051.55Spk
6061.55Spk## Network "tunnel" device, allowing protocol stacks to run in the userland.
6071.55Spk## This is used by the third-party user-mode "ppp" program, and others.
6081.185Scubepseudo-device	tun		
6091.165Scubepseudo-device	tap			# virtual Ethernet
6101.73Shwr
6111.73Shwr## Generic L3 over IP tunnel
6121.185Scube#pseudo-device	gre			# generic L3 over IP tunnel
6131.55Spk
6141.55Spk## Berkeley Packet Filter, required to run RARPD.  A generic C-language
6151.55Spk## interface that allows selective examining of incoming packets.
6161.184Srpaulopseudo-device	bpfilter
6171.55Spk
6181.188Sliamjfoy#pseudo-device	carp			# Common Address Redundancy Protocol
6191.188Sliamjfoy
6201.55Spk## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
6211.55Spk## one example of the use of the IP Filter.
6221.55Spkpseudo-device	ipfilter
6231.55Spk
6241.94Sitojun## for IPv6
6251.185Scubepseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
6261.185Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
6271.187Spavelpseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
6281.120Shubertf
6291.120Shubertf## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
6301.120Shubertfpseudo-device	vlan
6311.122Satatat
6321.122Satatat## Simple inter-network traffic bridging
6331.126Satatatpseudo-device	bridge
6341.160Suwe#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
6351.199Smartinpseudo-device	agr			# IEEE 802.3ad link aggregation
6361.55Spk
6371.217Stsutsui## accept filters
6381.217Stsutsuipseudo-device   accf_data		# "dataready" accept filter
6391.217Stsutsuipseudo-device   accf_http		# "httpready" accept filter
6401.217Stsutsui
6411.55Spk#### Audio and video devices
6421.55Spk
6431.55Spk## /dev/audio support (`audioamd' plus `audio')
6441.55Spk##
6451.55Spkaudioamd0	at mainbus0				# sun4c
6461.142Sjdcaudioamd0	at obio0				# sun4m
6471.55Spkaudioamd0	at sbus0 slot ? offset ?		# sun4m
6481.70Spk
6491.70Spkaudiocs0	at sbus0 slot ? offset ?		# SUNW,CS4231
6501.55Spk
6511.211Sjdc#options 	DBRI_DEBUG	# noisy debug output from the dbri driver
6521.211Sjdc#options 	DBRI_BIG_BUFFER	# use bigger DMA buffers, for slow CPUs
6531.186Smacallandbri*		at sbus? slot ? offset ?		# SUNW,DBRI[s3|e]
6541.174Smacallan
6551.174Smacallanaudio*		at audiobus?
6561.55Spk
6571.55Spk## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
6581.55Spk## systems.  If your sun4 system has a cgfour installed in the P4 slot,
6591.55Spk## the P4 entries for "bwtwo" will attach to the overlay plane of the
6601.55Spk## "cgfour".
6611.1Sderaadt
6621.55Spkbwtwo0		at sbus0 slot ? offset ?		# sun4c and sun4m
6631.55Spkbwtwo*		at sbus? slot ? offset ?		#
6641.55Spkbwtwo0		at obio0 addr 0xfd000000 level 4	# sun4/200
6651.55Spkbwtwo0		at obio0 addr 0xfb300000 level 4	# sun4/300 in P4 slot
6661.55Spkbwtwo0		at obio0 addr 0x0b300000 level 4	# sun4/100 in P4 slot
6671.21Sthorpej
6681.55Spk## Sun "cgtwo" VME color framebuffer
6691.208Smacallan# XXX no wsdisplay support
6701.208Smacallan#cgtwo0		at vme0 addr 0x400000 irq ? vect 0xa8
6711.21Sthorpej
6721.55Spk## Sun "cgthree" Sbus color framebuffer
6731.55Spkcgthree0	at sbus? slot ? offset ?
6741.55Spkcgthree*	at sbus? slot ? offset ?
6751.55Spk
6761.55Spk## Sun "cgfour" color framebuffer with overlay plane.  See above comment
6771.55Spk## regarding overlay plane.
6781.208Smacallan# XXX no wsdisplay support
6791.208Smacallan#cgfour0		at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6801.208Smacallan#cgfour0		at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6811.55Spk
6821.55Spk## Sun "cgsix" accelerated color framebuffer.
6831.55Spkcgsix0		at sbus? slot ? offset ?
6841.55Spkcgsix*		at sbus? slot ? offset ?
6851.55Spkcgsix0		at obio0 addr 0xfb000000 level 4	# sun4/300 P4
6861.55Spkcgsix0		at obio0 addr 0x0b000000 level 4	# sun4/100 P4
6871.55Spk
6881.55Spk## Sun "cgeight" 24-bit framebuffer
6891.208Smacallan# XXX no wsdisplay support
6901.208Smacallan#cgeight0 	at obio0 addr 0xfb300000 level 4	# sun4/300 P4
6911.208Smacallan#cgeight0	at obio0 addr 0x0b300000 level 4	# sun4/100 P4
6921.55Spk
6931.55Spk## Sun "tcx" accelerated color framebuffer.
6941.215Smacallan# there can be only one
6951.215Smacallantcx0		at sbus? slot ? offset ?
6961.33Sabrown
6971.221Smacallan## Sun CG12 / Matrox SG3 accelerated 24bit framebuffer
6981.221Smacallan## runs monochrome only for now
6991.221Smacallancgtwelve*	at sbus? slot ? offset ?
7001.221Smacallan
7011.33Sabrown# Sun "cgfourteen" accelerated 24-bit framebuffer.
7021.208Smacallancgfourteen*	at obio0			# sun4m
7031.1Sderaadt
7041.106Smatt# P9100-based display on Tadpole SPARCbook 3.
7051.106Smattpnozz0		at sbus? slot ? offset ?
7061.220Smacallan# the SPARCbook 3 hardware docs say that accesses to P9100 registers need to be
7071.220Smacallan# 'latched in' but at least my 3GX works happily without
7081.220Smacallan# Enable it by default since we don't know which hardware really needs it.
7091.220Smacallanoptions PNOZZ_USE_LATCH
7101.136Sad
7111.136Sad# Sun ZX/Leo 24-bit framebuffer
7121.213Smacallanzx*		at sbus? slot ? offset ?
7131.208Smacallan
7141.208Smacallan# Fujitsu AG-10e accelerated graphics 8/24-bit board
7151.208Smacallanagten*	at sbus? slot ? offset ?
7161.208Smacallan
7171.213Smacallan# generic framebuffer console
7181.213Smacallangenfb*	at sbus? slot ? offset ?
7191.213Smacallan
7201.208Smacallan# make sure wsdisplay0 is the console
7211.208Smacallanwsdisplay0	at wsemuldisplaydev? console 1
7221.208Smacallanwsdisplay*	at wsemuldisplaydev?
7231.1Sderaadt
7241.55Spk#### Other device configuration
7251.106Smatt
7261.106Smatt# Tadpole microcontroller
7271.106Smatttctrl0 at obio0
7281.24Sthorpej
7291.219Sbouyer# Aurora Personality Chip (APC) on SPARCstation-4/5
7301.219Sbouyer# Not enabled by default as it may hang some systems
7311.219Sbouyer#apc*		at sbus? slot ? offset ?
7321.219Sbouyer
7331.55Spk## Pseudo ttys, required for network logins and programs like screen.
7341.24Sthorpej
7351.117Sjdolecekpseudo-device	pty			# pseudo-terminals
7361.55Spk
7371.55Spk## Random device, used to implement /dev/random (a source of random noise),
7381.55Spk## and generate randomness for some kernel formulae.
7391.55Spk
7401.91Sphil
7411.91Sphil# a pseudo device needed for Coda	# also needs CODA (above)
7421.240Schristospseudo-device	vcoda			# coda minicache <-> venus comm.
7431.135Slukem
7441.135Slukempseudo-device	clockctl		# user control of clock subsystem
7451.147Sraggepseudo-device	ksyms			# /dev/ksyms
7461.155Sitojun#pseudo-device	pf			# PF packet filter
7471.155Sitojun#pseudo-device	pflog			# PF log if
7481.222Spookapseudo-device	fss			# file system snapshot device
7491.208Smacallanpseudo-device	wsmux			# mouse and keyboard multiplexor
7501.208Smacallanpseudo-device	wsfont
7511.218Spookapseudo-device	putter			# for puffs and pud
7521.182Selad
7531.211Sjdc#options 	FILEASSOC		# fileassoc(9)
7541.197Selad
7551.182Selad# Veriexec
7561.182Selad#
7571.182Selad# a pseudo device needed for veriexec
7581.240Schristos#pseudo-device	veriexec
7591.182Selad#
7601.182Selad# Uncomment the fingerprint methods below that are desired. Note that
7611.182Selad# removing fingerprint methods will have almost no impact on the kernel
7621.182Selad# code size.
7631.182Selad#
7641.182Selad#options VERIFIED_EXEC_FP_RMD160
7651.182Selad#options VERIFIED_EXEC_FP_SHA256
7661.182Selad#options VERIFIED_EXEC_FP_SHA384
7671.182Selad#options VERIFIED_EXEC_FP_SHA512
7681.182Selad#options VERIFIED_EXEC_FP_SHA1
7691.182Selad#options VERIFIED_EXEC_FP_MD5
7701.193Selad
7711.194Selad#options PAX_MPROTECT=0			# PaX mprotect(2) restrictions
7721.197Selad					# (for static binaries only for now)
773