# 	$NetBSD: GENERIC32,v 1.39.4.4 2002/11/30 14:01:10 he Exp $

include "arch/sparc64/conf/std.sparc64"

options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary

#ident 		"GENERIC-$Revision: 1.1.1.4 $"

maxusers	64

## System kernel configuration.  See options(4) for more detail.


# Options for variants of the Sun SPARC architecure.
# We currently support three architecture types; at least one is required.
options 	SUN4U		# sun4u - UltraSPARC
#options 	BLINK		# blink the system LED

## System options specific to the sparc machine type

## Use a faster console than the PROM's slow drawing routines.  Not needed
## for headless (no framebuffer) machines.
# XXX borken on sparc64
#options 	RASTERCONSOLE		# fast rasterop console
#options 	FONT_GALLANT12x22	# the console font
#options 	FONT_BOLD8x16		# a somewhat smaller font

#### System options that are the same for all ports

## Root device configuration: change the ?'s if you are going to use a
## nonstandard root partition (other than where the kernel is booted from)
## and/or nonstandard root type (not ffs or nfs).  Normally this can be
## automagically determined at boot time.

config		netbsd	root on ? type ?

## UVM options.
#options 	UVM_PAGE_TRKOWN
#options 	UVMHIST
#options 	UVMHIST_PRINT	# Loud!

## System call tracing (see ktrace(1)).
options 	KTRACE

## Collect statistics on kernel malloc's and free's.  This does have a
## significant performance hit on slower machines, so it is intended for
## diagnostic use only.
#options 	KMEMSTATS

## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
options 	SYSVMSG		# System V message queues
options 	SYSVSEM		# System V semaphores
options 	SYSVSHM		# System V shared memory
#options 	SHMMAXPGS=1024	# 1024 pages is the default

## Loadable kernel module support; still under development.
options 	LKM

#options 	USERCONF	# userconf(4) support
#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)

## NFS boot options; default on sparc is the bootparam protocol
options 	NFS_BOOT_BOOTPARAM
#options 	NFS_BOOT_BOOTP
#options 	NFS_BOOT_DHCP

#### Debugging options

## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
## serial console break or keyboard reset, where the PROM would normally
## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
# we enable DDB in GENERIC for now.
options 	DDB			# kernel dynamic debugger
options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
#options 	DDB_ONPANIC		# see also sysctl(8): `ddb.onpanic'

## You may also use gdb, on another computer connected to this machine over
## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
## KGDB_DEV is a dev_t encoded device number of the serial port to use.
## (0xc01 = ttya, 0xc02 = ttyb.)
#options 	KGDB			# support for kernel gdb
#options 	KGDB_DEV=0xc01		# kgdb device number (this is `ttyb')
#options 	KGDB_DEVRATE=38400	# baud rate


## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
## such that gdb(1) can be used on a kernel coredump.

#makeoptions	DEBUG="-g"


## Adds code to the kernel that does internal consistency checks, and will
## cause the kernel to panic if corruption of internal data structures
## is detected.
#options 	DIAGNOSTIC	# extra kernel sanity checking

## Enable (possibly expensive) debugging code that may also display messages
## on the system console
#options 	DEBUG

## Make SCSI error messages more verbose when explaining their meanings.
options 	SCSIVERBOSE
options 	PCIVERBOSE
options 	MIIVERBOSE	# verbose PHY autoconfig messages
#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space

## `INSECURE' turns off the kernel security level (securelevel = 0 always).
## This allows writing to /dev/mem, loading kernel modules while multi-user,
## and other insecurities good only for development work.  Do not use this
## option on a production machine.
#options 	INSECURE

## Allow non-root users to grab /dev/console with programs such as xconsole.
## `xconsole' therefore does not need setuid root with this option enabled.
#options 	UCONSOLE

## `FDSCRIPTS' allows non-readable but executable scripts by providing a
## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
## opaque file mechanism.  Perl calls this "secure setuid scripts."

#options 	FDSCRIPTS
#options 	SETUIDSCRIPTS

## Options for compatibility with previous releases foreign system binaries.
## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up
## additional user-level utilities or system configuration files. See
## compat_sunos(8) and compat_svr4(8).

options 	COMPAT_43	# 4.3BSD system interfaces
options 	COMPAT_09	# NetBSD 0.9 binary compatibility
options 	COMPAT_10	# NetBSD 1.0 binary compatibility
options 	COMPAT_11	# NetBSD 1.1 binary compatibility
options 	COMPAT_12	# NetBSD 1.2 binary compatibility
options 	COMPAT_13	# NetBSD 1.3 binary compatibility
options 	COMPAT_14	# NetBSD 1.4 binary compatibility
options 	COMPAT_SUNOS	# SunOS 4.x binary compatibility
options 	COMPAT_SVR4	# SunOS 5.x binary compatibility
#options 	COMPAT_SVR4_32	# SunOS 5.x 32-bit binary compatibility -- 64-bit only
#options 	COMPAT_NETBSD32	# NetBSD/sparc binary compatibility -- 64-bit only
options 	EXEC_AOUT	# execve(2) support for a.out binaries
options 	EXEC_ELF32	# Exec module for SunOS 5.x binaries.
#options 	SYSCALL_DEBUG

#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.

## File systems.  You probably need at least one of FFS or NFS.
file-system	FFS		# Berkeley Fast Filesystem
file-system	NFS		# Sun NFS-compatible filesystem client
file-system	KERNFS		# kernel data-structure filesystem
file-system	NULLFS		# NULL layered filesystem
file-system 	OVERLAY		# overlay file system
file-system	MFS		# memory-based filesystem
file-system	FDESC		# user file descriptor filesystem
file-system	UMAPFS		# uid/gid remapping filesystem
file-system	LFS		# Log-based filesystem (still experimental)
file-system	PORTAL		# portal filesystem (still experimental)
file-system	PROCFS		# /proc
file-system	CD9660		# ISO 9660 + Rock Ridge file system
file-system	UNION		# union file system
file-system	MSDOSFS		# MS-DOS FAT filesystem(s).

## File system options.
options 	NFSSERVER	# Sun NFS-compatible filesystem server
options 	QUOTA		# FFS quotas
#options 	FFS_EI		# FFS Endian Independent support
options 	SOFTDEP		# FFS soft updates support.

## Network protocol support.  In most environments, INET is required.
options 	INET		# IP (Internet Protocol) v4
options 	INET6		# IPV6
#options 	IPSEC		# IP security
#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
#options 	IPSEC_DEBUG	# debug for IP security
#options 	GATEWAY		# packet forwarding ("router switch")
options 	MROUTING	# packet forwarding of multicast packets
#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
options 	NS		# Xerox NS networking
#options 	NSIP		# Xerox NS tunneling over IP
options 	ISO,TPIP	# OSI networking
options 	EON		# OSI tunneling over IP
#options 	CCITT,LLC,HDLC	# X.25 packet switched protocol
options 	NETATALK	# AppleTalk (over Ethernet) protocol
options 	NTP		# Network Time Protocol in-kernel support
#options 	PPS_SYNC	# Add serial line synchronization for NTP
options 	PFIL_HOOKS	# Add pfil(9) hooks, intended for custom LKMs.
options 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
options 	PPP_BSDCOMP	# Add BSD compression to ppp device
options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
options 	PPP_FILTER	# Add active filters for ppp (via bpf)
#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG


#### Main bus and CPU .. all systems.
mainbus0 at root
cpu0	at mainbus0

#### Bus types found on SPARC systems.

sbus0	at mainbus0				# Ultra 1
#upa0	at mainbus0				# Ultra 1E, Ultra 2, Ex0000
psycho*	at mainbus0				# Darwin, Ultra5
pci*	at psycho?
pci*	at ppb?
ppb*	at pci?					# `APB' support.
ebus*	at pci?					# ebus devices
# XXX 'puc's aren't really bridges, but there's no better place for them here
puc*	at pci? dev ? function ?		# PCI "universal" comm. cards

#### Standard system devices -- all required for a given architecture

## PROM console driver -- if all else fails
pcons0	at mainbus0				# PROM console

## Auxiliary system registers -- We use the OBP for power management
auxio*	at ebus?				# auxio registers
auxio*	at sbus? slot ? offset ?		# auxio registers

# We also need:
bpp*	at sbus? slot ? offset ?		# parallel port
lpt*	at ebus?				# parallel port

## Mostek clock found on 4/300, sun4c, sun4m and sun4u systems.
## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
clock*	at sbus? slot ? offset ?
clock*	at ebus?
rtc*	at ebus?

## Timer chip found on 4/300, sun4c, sun4m and (some) sun4u systems.
timer*	at mainbus0				# sun4c

#### Serial port configuration

## Zilog 8530 serial chips.  Each has two-channels.
## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
zs*	at sbus? slot ? offset ?
zstty*	at zs? channel ?			# ttya
kbd0	at zstty?
ms0	at zstty?

## PCI machines have serial ports:
##	Siemens SAB82532 controller: ttya and ttyb (`su'; sab)
##	Part of NS PC87332VLJ Super I/O controller: kbd/mouse (`se'; com)

## The SAB82532 controller has two serial ports
#sab*	at ebus?				# ttya/ttyb
#sabtty*	at sab? channel ?

## Part of a PC87332VLJ
com*	at ebus?				# `com' driver for `su'
kbd0	at com?					# keyboard
ms0	at com?					# mouse

# PCI serial interfaces
com*	at puc? port ?			# 16x50s on "universal" comm boards
cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
cz*	at pci? dev ? function ?	# Cyclades-Z multi-port serial boards

#### Disk controllers and disks

## The following flags may be set for the NCR53c94 based esp driver:
##	bits 0-7:  disable disconnect/reselect for the corresponding target
##	bits 8-15: disable synchronous negotiation for target [bit-8]

## sun4u on-board SCSI, and FSBE/S SBus SCSI cards, an NCR53c94 or
## equivalent behind an LSI Logic DMA controller

dma*	at sbus? slot ? offset ?		# SBus
esp*	at dma? flags 0x0000			# SBus

## FAS supported by esp driver
esp*	at sbus? slot ? offset ?

scsibus* at esp?

## Qlogic ISP SBus or PCI SCSI Card
isp*	at sbus? slot ? offset ?
isp*	at pci?
scsibus* at isp?

## GLM support
siop*	at pci?					# 53C875 "glm" compatible
scsibus* at siop?

# PCI SCSI controllers
# 	UT marks untested.
adv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI UT
adw*	at pci? dev ? function ?	# AdvanSys 9x0UW[D], 3940U[2,3]W SCSI UT
ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI UT
bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI UT
dpt*	at pci? dev ? function ?	# DPT SmartCache/SmartRAID UT
iha*	at pci? dev ? function ?	# Initio INIC-940/950 SCSI
pcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI UT
trm*	at pci? dev ? function ?	# Tekram DC-395U/UW/F, DC-315/U SCSI

scsibus* at scsi?

## These entries find devices on all SCSI busses and assign
## unit numbers dynamically.
sd*	at scsibus? target ? lun ?		# SCSI disks
st*	at scsibus? target ? lun ?		# SCSI tapes
cd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
ch*	at scsibus? target ? lun ?		# SCSI changer devices
ss*	at scsibus? target ? lun ?		# SCSI scanners
ses*	at scsibus? target ? lun ?		# SCSI SES/SAF-TE devices
uk*	at scsibus? target ? lun ?		# unknown SCSI

# PCI IDE.
pciide* at pci ? dev ? function ? flags 0x0000
atapibus* at pciide? channel ?

## Disable UDMA 4 which causes data corruption on the Acer Labs
## chipset on Sun Blade 100 and Netra X1 machines.
wd*	at pciide? channel ? drive ? flags 0x0a00 # Disable UDMA 4


cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown

# RAID controllers and devices (untested)
cac*	at pci? dev ? function ?	# Compaq PCI array controllers
mlx*	at pci? dev ? function ?	# Mylex DAC960 & DEC SWXCR family
twe*	at pci? dev ? function ?	# 3ware Escalade RAID controllers

ld*	at cac? unit ?			# logical disk devices
ld*	at twe? unit ?
ld*	at mlx? unit ?

## Floppy controller and drive found on SPARCstations.

# need share with the sparc, and everyone else.  needs to use auxio.
# actually, the ebus version has (will have) direct access to it's AUXIO
# register space (it is mapped in to fdthree not auxio).
#fdc0	at sbus? slot ? offset ?		# SUNW,fdtwo
#fdc0	at ebus?				# fdthree
#fd*	at fdc0 	 			# the drive itself

## A disk-like interface to files.  Can be used to create floppy, CD,
## miniroot images, etc.

pseudo-device	vnd	4

## Concatenated and striped disks; with this, you can create a software-based
## disk array similar to a "RAID 0" setup.  See ccd(4).

pseudo-device	ccd	4

## RAIDframe disk driver: software RAID driver.  See raid(4).

pseudo-device	raid	8
options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
# Options to enable various other RAIDframe RAID types.
# options	RF_INCLUDE_EVENODD=1
# options	RF_INCLUDE_RAID5_RS=1
# options	RF_INCLUDE_PARITYLOGGING=1
# options	RF_INCLUDE_CHAINDECLUSTER=1
# options	RF_INCLUDE_INTERDECLUSTER=1
# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
# options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1


## Memory disk device, used on boot floppies with compressed
## kernel-plus-root-disk images.

pseudo-device	md	1


#### Network interfaces

## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue
## Three flavors of additional SBus ethernets are available.  One attaches
## directly like the sun4c on-board, one uses the ledma device like the
## sun4m on-board, and one uses the lebuffer device.

ledma0		at sbus? slot ? offset ?	# sun4m on-board
le0		at ledma0			# sun4m on-board
le*		at sbus? slot ? offset ?	# SBus
ledma*		at sbus? slot ? offset ?	# SBus
le*		at ledma?			# SBus
lebuffer0	at sbus? slot ? offset ?	# SBus
le0		at lebuffer?			# SBus
lebuffer*	at sbus? slot ? offset ?	# SBus
le*		at lebuffer?			# SBus

## Happy Meal Ethernet
hme*		at sbus? slot ? offset ?
hme*		at pci?	dev ? function ?	# network "hme" compatible

## qec/be, qec/hme
qec*		at sbus? slot ? offset ?
be*		at qec?
qe*		at qec?

# PCI network interfaces
# 	UT marks untested.
an*	at pci? dev ? function ?	# Aironet PC4500/PC4800 (802.11) UT
en*	at pci? dev ? function ?	# ENI/Adaptec ATM UT
# XXX causes ICE
#ep*	at pci? dev ? function ?	# 3Com 3c59x
ex*	at pci? dev ? function ?	# 3Com 90x[B] UT
epic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet UT
esh*	at pci? dev ? function ?	# Essential HIPPI card UT
fpa*	at pci? dev ? function ?	# DEC DEFPA FDDI UT
fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B UT
gem*	at pci? dev ? function ?	# Apple GMAC and Sun ERI gigabit enet
le*	at pci? dev ? function ?	# PCnet-PCI Ethernet UT
# XXX uses vtophys()
#lmc*	at pci? dev ? function ?	# Lan Media Corp SSI/HSSI/DS3
ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet UT
ntwoc*	at pci? dev ? function ?	# Riscom/N2 PCI Sync Serial UT
rtk*	at pci? dev ? function ?	# Realtek 8129/8139 UT
sip*	at pci? dev ? function ?	# SiS 900 Ethernet UT
ti*	at pci? dev ? function ?	# Alteon ACEnic gigabit Ethernet UT
tl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
vr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet

# MII/PHY support
# XXX: only nsphy "tested"
dmphy*	at mii? phy ?			# Davicom DM9101 PHYs
exphy*	at mii? phy ?			# 3Com internal PHYs
icsphy*	at mii? phy ?			# Integrated Circuit Systems ICS189x
inphy*	at mii? phy ?			# Intel 82555 PHYs
iophy*	at mii? phy ?			# Intel 82553 PHYs
lxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
nsphy*	at mii? phy ?			# NS83840 PHYs
nsphyter* at mii? phy ?			# NS83843 PHYs
qsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
sqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
tlphy*	at mii? phy ?			# ThunderLAN PHYs
tqphy*	at mii? phy ?			# TDK Semiconductor PHYs
ukphy*	at mii? phy ?			# generic unknown PHYs

# PCI USB controllers
ohci*	at pci? dev ? function ?			# Open Host Controller

usb*	at ohci?					# USB bus support
uhub*	at usb?						# USB Hubs
uhub*	at uhub? port ? configuration ? interface ?

uhidev*	at uhub? port ? configuration ? interface ?	# USB HID
uhid*	at uhidev? reportid ?				# USB Generic HID

ulpt*	at uhub? port ? configuration ? interface ?	# USB Printer

umodem*	at uhub? port ? configuration ?			# USB Modem
ucom*	at umodem?

umass*	at uhub? port ? configuration ? interface ?	# USB Mass Storage
atapibus* at umass? channel ?
scsibus* at umass? channel ?

uaudio*	at uhub? port ? configuration ?			# USB audio

# USB Ethernet adapters
aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters

uscanner* at uhub? port ?				# USB scanners
uyap* at uhub? port ?					# Y@P firmware loader
ugen*	at uhub? port ? configuration ? interface ?	# USB Generic driver

# PCI IEEE1394 controllers
fwohci*	at pci? dev ? function ?	# IEEE1394 Open Host Controller
#fwlynx* at pci? dev ? function ?	# IEEE1394 TI Lynx Controller
fw*	at fwbus?			# IP over 1394

# IEEE1394 nodes
#fwnode* at fwbus? oui ? devhi ? devlo ?
#scsibus* at fwnode?

## Loopback network interface; required
pseudo-device	loop

## SLIP and CSLIP interfaces, for IP over a serial line.
pseudo-device	sl		2

## PPP, the successor to SLIP.  See pppd(8).
pseudo-device	ppp		2

## PPP over Ethernet (RFC 2516)
pseudo-device	pppoe

## Starmode Radio IP, a special hardware network device.
pseudo-device	strip		1

## Network "tunnel" device, allowing protocol stacks to run in the userland.
## This is used by the third-party user-mode "ppp" program, and others.
pseudo-device	tun		4

## Generic L3 over IP tunnel
#pseudo-device	gre		2	# generic L3 over IP tunnel

## Berkeley Packet Filter, required to run RARPD.  A generic C-language
## interface that allows selective examining of incoming packets.
pseudo-device	bpfilter	8

## Simple inter-network traffic bridging
pseudo-device	bridge

## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
## one example of the use of the IP Filter.
pseudo-device	ipfilter

## for IPv6
pseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation


#### Audio and video devices

## /dev/audio support (`audiocs' plus `audio')
##
audiocs*	at sbus? slot ? offset ?	# SUNW,CS4231
audiocs*	at ebus?			# SUNW,CS4231 in U5/U10
autri*		at pci? dev ? function ?	# Blade 100 'sound'

audio*		at audiocs?
audio*		at autri?
audio*		at uaudio?

#midi*		at autri?


## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
## systems.  If your sun4 system has a cgfour installed in the P4 slot,
## the P4 entries for "bwtwo" will attach to the overlay plane of the
## "cgfour".

#bwtwo0		at sbus? slot ? offset ?	# sun4c and sun4m
#bwtwo*		at sbus? slot ? offset ?

## Sun "cgthree" Sbus color framebuffer
#cgthree0	at sbus? slot ? offset ?
#cgthree*	at sbus? slot ? offset ?

## Sun "cgsix" accelerated color framebuffer.
cgsix0		at sbus? slot ? offset ?
cgsix*		at sbus? slot ? offset ?

## Sun FFB not supported
#ffb*		at upa?

#### Other device configuration

## Pseudo ttys, required for network logins and programs like screen.

pseudo-device	pty			# pseudo-ttys (for network, etc.)

## Random device, used to implement /dev/random (a source of random noise),
## and generate randomness for some kernel formulae.

pseudo-device	rnd

pseudo-device	clockctl		# user control of clock subsystem
