GENERIC revision 1.16
11.16Seeh# 	$NetBSD: GENERIC,v 1.16 1999/06/05 20:38:24 eeh Exp $
21.1Seeh
31.1Seehinclude "arch/sparc64/conf/std.sparc64"
41.1Seeh
51.1Seehmaxusers	32
61.1Seeh
71.1Seeh## System kernel configuration.  See options(4) for more detail.
81.1Seeh
91.1Seeh
101.1Seeh# Options for variants of the Sun SPARC architecure.
111.1Seeh# We currently support three architecture types; at least one is required.
121.1Seehoptions		SUN4U		# sun4u - Ultra 140 and 170
131.1Seehoptions		TRAPWIN
141.10Seehoptions		__ELF__		# we use elf 
151.10Seeh#options		_LP64		# we're using a 64-bit compiler
161.1Seeh
171.1Seeh## System options specific to the sparc machine type
181.1Seeh
191.1Seeh## Use a faster console than the PROM's slow drawing routines.  Not needed
201.1Seeh## for headless (no framebuffer) machines.
211.3Smrg# XXX broken on sparc64
221.14Sad#options 	RASTERCONSOLE		# fast rasterop console
231.1Seeh
241.1Seeh#### System options that are the same for all ports
251.1Seeh
261.1Seeh## Root device configuration: change the ?'s if you are going to use a
271.1Seeh## nonstandard root partition (other than where the kernel is booted from)
281.1Seeh## and/or nonstandard root type (not ffs or nfs).  Normally this can be
291.1Seeh## automagically determined at boot time.
301.1Seeh
311.1Seehconfig		netbsd	root on ? type ?
321.1Seeh
331.4Smrg## UVM options.
341.10Seeh#options	UVM_PAGE_TRKOWN
351.6Smrg#options 	UVMHIST
361.4Smrg#options 	UVMHIST_PRINT	# Loud!
371.10Seehoptions 	PMAP_NEW
381.1Seeh
391.1Seeh## System call tracing (see ktrace(1)).
401.1Seehoptions 	KTRACE
411.1Seeh
421.1Seeh## Collect statistics on kernel malloc's and free's.  This does have a
431.1Seeh## significant performance hit on slower machines, so it is intended for
441.1Seeh## diagnostic use only.
451.1Seeh#options 	KMEMSTATS
461.1Seeh
471.1Seeh## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
481.1Seehoptions 	SYSVMSG		# System V message queues
491.1Seehoptions 	SYSVSEM		# System V semaphores
501.1Seehoptions 	SYSVSHM		# System V shared memory
511.1Seeh#options 	SHMMAXPGS=1024	# 1024 pages is the default
521.1Seeh
531.1Seeh## Loadable kernel module support; still under development.
541.1Seehoptions 	LKM
551.1Seeh
561.1Seeh## NFS boot options; default on sparc is the bootparam protocol
571.1Seehoptions 	NFS_BOOT_BOOTPARAM
581.1Seeh#options 	NFS_BOOT_BOOTP
591.1Seeh#options 	NFS_BOOT_DHCP
601.1Seeh
611.1Seeh#### Debugging options
621.1Seeh
631.1Seeh## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
641.1Seeh## serial console break or keyboard reset, where the PROM would normally
651.1Seeh## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
661.9Smrg# we enable DDB in GENERIC for now.
671.9Smrgoptions 	DDB			# kernel dynamic debugger
681.16Seehoptions 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
691.1Seeh#options 	DDB_ONPANIC		# see also sysctl(8): `ddb.onpanic'
701.1Seeh
711.1Seeh## You may also use gdb, on another computer connected to this machine over
721.1Seeh## a serial port.  Both KGDBDEV and KGDBRATE should be specified; KGDBDEV is
731.1Seeh## a dev_t encoded device number of the serial port to use.
741.1Seeh## (0xc01 = ttya, 0xc02 = ttyb.)
751.1Seeh#options 	KGDB		# support for kernel gdb
761.1Seeh#options 	KGDBDEV=0xc01	# kgdb device number (this sample is `ttyb')
771.1Seeh#options 	KGDBRATE=38400	# baud rate
781.1Seeh
791.1Seeh
801.1Seeh## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
811.1Seeh## such that gdb(1) can be used on a kernel coredump.
821.1Seeh
831.1Seeh#makeoptions 	DEBUG="-g"
841.1Seeh
851.1Seeh
861.1Seeh## Adds code to the kernel that does internal consistency checks, and will
871.1Seeh## cause the kernel to panic if corruption of internal data structures
881.1Seeh## is detected.
891.1Seeh#options 	DIAGNOSTIC	# extra kernel sanity checking
901.1Seeh
911.1Seeh## Enable (possibly expensive) debugging code that may also display messages
921.1Seeh## on the system console
931.1Seeh#options 	DEBUG
941.1Seeh
951.1Seeh## Make SCSI error messages more verbose when explaining their meanings.
961.1Seehoptions 	SCSIVERBOSE
971.16Seehoptions 	PCIVERBOSE
981.1Seeh
991.1Seeh## `INSECURE' turns off the kernel security level (securelevel = 0 always).
1001.1Seeh## This allows writing to /dev/mem, loading kernel modules while multi-user,
1011.1Seeh## and other insecurities good only for development work.  Do not use this
1021.1Seeh## option on a production machine.
1031.1Seeh#options 	INSECURE
1041.1Seeh
1051.1Seeh## Allow non-root users to grab /dev/console with programs such as xconsole.
1061.1Seeh## `xconsole' therefore does not need setuid root with this option enabled.
1071.1Seeh#options 	UCONSOLE
1081.1Seeh
1091.1Seeh## `FDSCRIPTS' allows non-readable but executable scripts by providing a
1101.1Seeh## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
1111.1Seeh## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
1121.1Seeh## opaque file mechanism.  Perl calls this "secure setuid scripts."
1131.1Seeh
1141.1Seeh#options 	FDSCRIPTS
1151.1Seeh#options 	SETUIDSCRIPTS
1161.1Seeh
1171.1Seeh## Options for compatibility with previous releases foreign system binaries.
1181.1Seeh## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up
1191.1Seeh## additional user-level utilities or system configuration files. See
1201.1Seeh## compat_sunos(8) and compat_svr4(8).
1211.1Seeh
1221.1Seehoptions 	COMPAT_43	# 4.3BSD system interfaces
1231.1Seehoptions 	COMPAT_10	# NetBSD 1.0 binary compatibility
1241.1Seehoptions 	COMPAT_11	# NetBSD 1.1 binary compatibility
1251.1Seehoptions 	COMPAT_12	# NetBSD 1.2 binary compatibility
1261.1Seehoptions 	COMPAT_13	# NetBSD 1.3 binary compatibility
1271.12Seeh#options 	COMPAT_NETBSD32	# NetBSD/sparc binary compatibility -- 64-bit only
1281.1Seehoptions 	COMPAT_SUNOS	# SunOS 4.x binary compatibility
1291.1Seehoptions 	COMPAT_SVR4	# SunOS 5.x binary compatibility
1301.1Seehoptions 	EXEC_ELF32	# Exec module for SunOS 5.x binaries.
1311.11Seeh#options		EXEC_ELF64	# Exec module for sparc64 & SunOs 5.x binaries. -- 64-bit only
1321.10Seeh#options		SYSCALL_DEBUG
1331.13Seeh#options		COMPAT_AOUT	# NetBSD/sparc compat support
1341.13Seehoptions 	EXEC_AOUT	# execve(2) support for a.out binaries
1351.1Seeh
1361.1Seeh## File systems.  You probably need at least one of FFS or NFS.
1371.1Seehfile-system	FFS		# Berkeley Fast Filesystem
1381.1Seehfile-system	NFS		# Sun NFS-compatible filesystem client
1391.1Seehfile-system	KERNFS		# kernel data-structure filesystem
1401.1Seehfile-system	NULLFS		# NULL layered filesystem
1411.1Seehfile-system	MFS		# memory-based filesystem
1421.1Seehfile-system	FDESC		# user file descriptor filesystem
1431.1Seehfile-system	UMAPFS		# uid/gid remapping filesystem
1441.1Seehfile-system	LFS		# Log-based filesystem (still experimental)
1451.1Seehfile-system	PORTAL		# portal filesystem (still experimental)
1461.1Seehfile-system	PROCFS		# /proc
1471.1Seehfile-system	CD9660		# ISO 9660 + Rock Ridge file system
1481.1Seehfile-system	UNION		# union file system
1491.1Seehfile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
1501.1Seeh
1511.1Seeh## File system options.
1521.1Seehoptions 	NFSSERVER	# Sun NFS-compatible filesystem server
1531.1Seehoptions 	QUOTA		# FFS quotas
1541.1Seeh#options 	FFS_EI		# FFS Endian Independent support
1551.1Seeh
1561.1Seeh## Network protocol support.  In most environments, INET is required.
1571.1Seehoptions 	INET		# IP (Internet Protocol) v4
1581.1Seehoptions 	TCP_COMPAT_42	# 4.2BSD IP implementation compatibility
1591.1Seeh#options 	GATEWAY		# packet forwarding ("router switch")
1601.9Smrgoptions 	MROUTING	# packet forwarding of multicast packets
1611.1Seeh#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
1621.1Seehoptions 	NS		# Xerox NS networking
1631.1Seeh#options 	NSIP		# Xerox NS tunneling over IP
1641.1Seehoptions 	ISO,TPIP	# OSI networking
1651.1Seehoptions 	EON		# OSI tunneling over IP
1661.1Seeh#options 	CCITT,LLC,HDLC	# X.25 packet switched protocol
1671.1Seehoptions 	NETATALK	# AppleTalk (over Ethernet) protocol
1681.9Smrgoptions 	NTP		# Network Time Protocol in-kernel support
1691.1Seeh#options 	PPS_SYNC	# Add serial line synchronization for NTP
1701.9Smrgoptions 	PFIL_HOOKS	# Add pfil(9) hooks, intended for custom LKMs.
1711.9Smrgoptions 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
1721.9Smrgoptions 	PPP_BSDCOMP	# Add BSD compression to ppp device
1731.9Smrgoptions 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
1741.9Smrgoptions 	PPP_FILTER	# Add active filters for ppp (via bpf)
1751.1Seeh
1761.1Seeh
1771.1Seeh#### Main bus and CPU .. all systems.
1781.1Seehmainbus0 at root
1791.1Seehcpu0	at mainbus0
1801.1Seeh
1811.1Seeh#### Bus types found on SPARC systems.
1821.1Seeh
1831.10Seehsbus0	at mainbus0				# Ultra 1
1841.1Seeh#upa0	at mainbus0				# Ultra 1E, Ultra 2, Ex0000
1851.16Seehpsycho*	at mainbus0				# Darwin, Ultra5
1861.16Seehpci*	at psycho?
1871.16Seehpci*	at simba?
1881.16Seehsimba*	at pci? dev ? function ?		# `APB' support.
1891.16Seehebus*	at pci?					# ebus devices
1901.1Seeh
1911.1Seeh#### Standard system devices -- all required for a given architecture
1921.1Seeh
1931.10Seeh## Auxiliary system registers -- We use the OBP for power management
1941.3Smrg#auxreg0 at sbus0
1951.10Seeh#auxreg0 at pci0
1961.1Seeh
1971.1Seeh# We also need:
1981.1Seeh# bpp0 at sbus0					# parallel port
1991.10Seeh# ecpp0 at pci0					# parallel port ?
2001.16Seehlpt*	at ebus?				# parallel port
2011.1Seeh
2021.9Smrg## Mostek clock found on 4/300, sun4c, sun4m and sun4u systems.
2031.1Seeh## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
2041.3Smrgclock0	at sbus0 slot ? offset ?
2051.16Seehclock0	at ebus?
2061.1Seeh
2071.9Smrg## Timer chip found on 4/300, sun4c, sun4m and sun4u systems.
2081.1Seehtimer0	at mainbus0				# sun4c
2091.1Seeh
2101.1Seeh#### Serial port configuration
2111.1Seeh
2121.1Seeh## Zilog 8530 serial chips.  Each has two-channels.
2131.1Seeh## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
2141.3Smrgzs0	at sbus0 slot ? offset ?
2151.1Seehzstty0	at zs0 channel 0	# ttya
2161.1Seehzstty1	at zs0 channel 1	# ttyb
2171.1Seeh
2181.3Smrgzs1	at sbus0 slot ? offset ?
2191.1Seehkbd0	at zs1 channel 0	# keyboard
2201.1Seehms0	at zs1 channel 1	# mouse
2211.1Seeh
2221.10Seeh## PCI machines apparently have serial ports
2231.16Seeh##	Siemens SAB82532 controller: ttya and ttyb (sab)
2241.16Seeh##	Part of NS PC87332VLJ Super I/O controller: kbd/mouse (com)
2251.16Seeh
2261.16Seeh## These are two SAB82532 controllers
2271.16Seeh#sab0	at ebus?			# ttya/ttyb
2281.16Seeh#sabtty0	at sab0 channel 0	# ttya
2291.16Seeh#sabtty1	at sab0 channel 1	# ttyb
2301.10Seeh
2311.10Seeh## Part of a PC87332VLJ?
2321.16Seeh#ucom0	at ebus? addr 0x3083f8		# `com' driver
2331.16Seeh#ucom1	at ebus? addr 0x3062f8		# 
2341.16Seeh#ucom0	at ebus?			# `com' driver
2351.16Seeh#ucom1	at ebus?			# 
2361.16Seeh#kbd0	at ucom0 channel 0		# keyboard
2371.16Seeh#ms0	at ucom1 channel 1		# mouse
2381.10Seeh
2391.1Seeh#### Disk controllers and disks
2401.1Seeh
2411.1Seeh## The following flags may be set for the NCR53c94 based esp driver:
2421.1Seeh##	bits 0-7:  disable disconnect/reselect for the corresponding target
2431.1Seeh##	bits 8-15: disable synchronous negotiation for target [bit-8]
2441.1Seeh
2451.9Smrg## sun4/300, sun4c, sun4m and sun4u on-board SCSI, and FSBE/S SBus SCSI cards.
2461.1Seeh## Both `dma' and `esp' are needed in all cases.
2471.1Seeh## Two kinds of additional SBus SCSI interfaces are available.  One uses
2481.1Seeh## "esp at sbus" like the sun4c on-board; the other uses "esp at dma".
2491.1Seeh
2501.1Seeh## sun4/300 SCSI - an NCR53c94 or equivalent behind
2511.1Seeh## an LSI Logic DMA controller
2521.1Seeh
2531.9Smrgdma0	at sbus0 slot ? offset ?			# sun4c/sun4m/sun4u
2541.9Smrgesp0	at dma0 flags 0x0000				# sun4m/sun4u
2551.10Seehscsibus* at esp?
2561.1Seeh
2571.1Seeh# FSBE/S SCSI
2581.1Seehdma*	at sbus? slot ? offset ?			# SBus
2591.1Seehesp*	at dma? flags 0x0000				# SBus
2601.1Seeh
2611.1Seehscsibus* at esp?
2621.1Seeh
2631.1Seeh## Qlogic ISP SBus SCSI Card
2641.5Smrgisp*	at sbus? slot ? offset ?
2651.5Smrgscsibus* at isp?
2661.1Seeh
2671.9Smrg## FAS support missing
2681.9Smrg#fas*	at sbus? slot ? offset ?
2691.9Smrg#scsibus* at fas?
2701.9Smrg
2711.10Seeh## GLM support is missing
2721.10Seeh#scsi*	at pci?						# 53C875 "glm" compatible
2731.10Seeh
2741.1Seeh## These entries find devices on all SCSI busses and assign
2751.1Seeh## unit numbers dynamically.
2761.1Seehsd*	at scsibus? target ? lun ?		# SCSI disks
2771.1Seehst*	at scsibus? target ? lun ?		# SCSI tapes
2781.1Seehcd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
2791.1Seehch*	at scsibus? target ? lun ?		# SCSI changer devices
2801.1Seehss*	at scsibus? target ? lun ?		# SCSI scanners
2811.1Seehuk*	at scsibus? target ? lun ?		# unknown SCSI
2821.16Seeh
2831.16Seeh# PCI IDE.
2841.16Seehpciide* at pci ? dev ? function ? flags 0x0000
2851.16Seehwd*     at pciide? channel ? drive ? flags 0x0000
2861.16Seehatapibus* at pciide? channel ?
2871.16Seeh
2881.16Seehcd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
2891.16Seehsd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
2901.16Seehuk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
2911.1Seeh
2921.1Seeh## Floppy controller and drive found on SPARCstations.
2931.1Seeh
2941.9Smrg# need share with the sparc...uses auxreg.  what is this on sparc64?
2951.3Smrg#fdc0	at sbus0 slot ? offset ?
2961.10Seeh#fdc0	at pci?					# Called fdthree?
2971.9Smrg#fd*	at fdc0 	 			# the drive itself
2981.1Seeh
2991.1Seeh## A disk-like interface to files.  Can be used to create floppy, CD,
3001.1Seeh## miniroot images, etc.
3011.1Seeh
3021.1Seehpseudo-device	vnd	4
3031.1Seeh
3041.1Seeh## Concatenated and striped disks; with this, you can create a software-based
3051.1Seeh## disk array similar to a "RAID 0" setup.  See ccd(4).
3061.1Seeh
3071.1Seehpseudo-device	ccd	4
3081.7Soster
3091.7Soster## RAIDframe disk driver: software RAID driver.  See raid(4).
3101.7Soster
3111.9Smrgpseudo-device	raid	4
3121.1Seeh
3131.1Seeh## Memory disk device, used on boot floppies with compressed
3141.1Seeh## kernel-plus-root-disk images.
3151.1Seeh
3161.9Smrgpseudo-device	md	1
3171.1Seeh
3181.1Seeh
3191.1Seeh#### Network interfaces
3201.1Seeh
3211.1Seeh## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue
3221.1Seeh## Three flavors of additional SBus ethernets are available.  One attaches
3231.1Seeh## directly like the sun4c on-board, one uses the ledma device like the
3241.1Seeh## sun4m on-board, and one uses the lebuffer device.
3251.1Seeh
3261.1Seehledma0		at sbus0 slot ? offset ?		# sun4m on-board
3271.1Seehle0		at ledma0				# sun4m on-board
3281.1Seehle*		at sbus? slot ? offset ?		# SBus
3291.1Seehledma*		at sbus? slot ? offset ?		# SBus
3301.1Seehle*		at ledma?				# SBus
3311.1Seehlebuffer0	at sbus? slot ? offset ?		# SBus
3321.1Seehle0		at lebuffer?				# SBus
3331.1Seehlebuffer*	at sbus? slot ? offset ?		# SBus
3341.1Seehle*		at lebuffer?				# SBus
3351.1Seeh
3361.10Seeh## HME not supported yet
3371.10Seeh#hme*		at sbus0 slot ? offset ?
3381.10Seeh#network*	at pci?					# "hme" compatible
3391.10Seeh
3401.9Smrg## qec/be, qec/hme
3411.9Smrgqec*		at sbus? slot ? offset ?
3421.9Smrgbe*		at qec?
3431.9Smrgqe*		at qec?
3441.1Seeh
3451.1Seeh## Loopback network interface; required
3461.1Seehpseudo-device	loop
3471.1Seeh
3481.1Seeh## SLIP and CSLIP interfaces, for IP over a serial line.
3491.1Seehpseudo-device	sl		2
3501.1Seeh
3511.1Seeh## PPP, the successor to SLIP.  See pppd(8).
3521.1Seehpseudo-device	ppp		2
3531.1Seeh
3541.1Seeh## Starmode Radio IP, a special hardware network device.
3551.9Smrgpseudo-device	strip		1
3561.1Seeh
3571.1Seeh## Network "tunnel" device, allowing protocol stacks to run in the userland.
3581.1Seeh## This is used by the third-party user-mode "ppp" program, and others.
3591.1Seehpseudo-device	tun		4
3601.8Shwr
3611.8Shwr## Generic L3 over IP tunnel
3621.8Shwr#pseudo-device	gre		2	# generic L3 over IP tunnel
3631.1Seeh
3641.1Seeh## Berkeley Packet Filter, required to run RARPD.  A generic C-language
3651.1Seeh## interface that allows selective examining of incoming packets.
3661.1Seehpseudo-device	bpfilter	8
3671.1Seeh
3681.1Seeh## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
3691.1Seeh## one example of the use of the IP Filter.
3701.1Seehpseudo-device	ipfilter
3711.1Seeh
3721.1Seeh
3731.1Seeh#### Audio and video devices
3741.1Seeh
3751.9Smrg## /dev/audio support (`audiocs' plus `audio')
3761.1Seeh##
3771.9Smrgaudiocs0	at sbus0 slot ? offset ?		# SUNW,CS4231
3781.9Smrgaudio*		at audiocs0
3791.1Seeh
3801.1Seeh
3811.1Seeh## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
3821.1Seeh## systems.  If your sun4 system has a cgfour installed in the P4 slot,
3831.1Seeh## the P4 entries for "bwtwo" will attach to the overlay plane of the
3841.1Seeh## "cgfour".
3851.1Seeh
3861.3Smrg#bwtwo0		at sbus0 slot ? offset ?		# sun4c and sun4m
3871.3Smrg#bwtwo*		at sbus? slot ? offset ?		#
3881.1Seeh
3891.1Seeh## Sun "cgthree" Sbus color framebuffer
3901.3Smrg#cgthree0	at sbus? slot ? offset ?
3911.3Smrg#cgthree*	at sbus? slot ? offset ?
3921.1Seeh
3931.1Seeh## Sun "cgsix" accelerated color framebuffer.
3941.1Seehcgsix0		at sbus? slot ? offset ?
3951.1Seehcgsix*		at sbus? slot ? offset ?
3961.1Seeh
3971.1Seeh## Sun "tcx" accelerated color framebuffer.
3981.3Smrg#tcx0		at sbus? slot ? offset ?
3991.3Smrg#tcx*		at sbus? slot ? offset ?
4001.1Seeh
4011.1Seeh# Sun "cgfourteen" accelerated 24-bit framebuffer.
4021.3Smrg#cgfourteen0	at obio0			# sun4m
4031.1Seeh
4041.10Seeh## Sun FFB not supported
4051.10Seeh#ffb*		at upa?
4061.1Seeh
4071.1Seeh#### Other device configuration
4081.1Seeh
4091.1Seeh## Pseudo ttys, required for network logins and programs like screen.
4101.1Seeh## 32 is a good number for average systems; you may have as many as you
4111.1Seeh## like, though 256 is more or less the upper limit.  Increasing this
4121.1Seeh## number still requires you to run /dev/MAKEDEV to create the files
4131.1Seeh## for the ptys.
4141.1Seeh
4151.9Smrgpseudo-device	pty		64	# pseudo-ttys (for network, etc.)
4161.1Seeh
4171.1Seeh## Random device, used to implement /dev/random (a source of random noise),
4181.1Seeh## and generate randomness for some kernel formulae.
4191.1Seeh## THIS DEVICE IS EXPERIMENTAL; use at your own risk.
4201.1Seeh
4211.9Smrgpseudo-device	rnd
422