GENERIC32 revision 1.96
11.95Sdsl# 	$NetBSD: GENERIC32,v 1.96 2005/02/11 18:26:59 jdc Exp $
21.1Seeh
31.1Seehinclude "arch/sparc64/conf/std.sparc64"
41.1Seeh
51.36Satatatoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
61.36Satatat
71.95Sdsl#ident 		"GENERIC-$Revision: 1.96 $"
81.1Seeh
91.8Seehmaxusers	64
101.1Seeh
111.1Seeh## System kernel configuration.  See options(4) for more detail.
121.1Seeh
131.1Seeh
141.1Seeh# Options for variants of the Sun SPARC architecure.
151.1Seeh# We currently support three architecture types; at least one is required.
161.14Smrgoptions 	SUN4U		# sun4u - UltraSPARC
171.26Smrg#options 	BLINK		# blink the system LED
181.1Seeh
191.1Seeh## System options specific to the sparc machine type
201.1Seeh
211.1Seeh## Use a faster console than the PROM's slow drawing routines.  Not needed
221.1Seeh## for headless (no framebuffer) machines.
231.96Sjdc# XXX broken on sparc64
241.1Seeh#options 	RASTERCONSOLE		# fast rasterop console
251.1Seeh#options 	FONT_GALLANT12x22	# the console font
261.1Seeh#options 	FONT_BOLD8x16		# a somewhat smaller font
271.1Seeh
281.1Seeh#### System options that are the same for all ports
291.1Seeh
301.1Seeh## Root device configuration: change the ?'s if you are going to use a
311.1Seeh## nonstandard root partition (other than where the kernel is booted from)
321.1Seeh## and/or nonstandard root type (not ffs or nfs).  Normally this can be
331.1Seeh## automagically determined at boot time.
341.1Seeh
351.1Seehconfig		netbsd	root on ? type ?
361.1Seeh
371.1Seeh## UVM options.
381.1Seeh#options 	UVM_PAGE_TRKOWN
391.1Seeh#options 	UVMHIST
401.1Seeh#options 	UVMHIST_PRINT	# Loud!
411.1Seeh
421.1Seeh## System call tracing (see ktrace(1)).
431.1Seehoptions 	KTRACE
441.50Sprovosoptions 	SYSTRACE		# system call vetting via systrace(1)
451.1Seeh
461.1Seeh## Collect statistics on kernel malloc's and free's.  This does have a
471.1Seeh## significant performance hit on slower machines, so it is intended for
481.1Seeh## diagnostic use only.
491.1Seeh#options 	KMEMSTATS
501.1Seeh
511.1Seeh## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
521.1Seehoptions 	SYSVMSG		# System V message queues
531.1Seehoptions 	SYSVSEM		# System V semaphores
541.1Seehoptions 	SYSVSHM		# System V shared memory
551.1Seeh#options 	SHMMAXPGS=1024	# 1024 pages is the default
561.74Schristosoptions 	P1003_1B_SEMAPHORE	# p1003.1b semaphore support 
571.74Schristos
581.1Seeh
591.1Seeh## Loadable kernel module support; still under development.
601.1Seehoptions 	LKM
611.30Sjdolecek
621.45Slukemoptions 	USERCONF	# userconf(4) support
631.69Snakayama#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
641.85Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
651.54Sjunyoung
661.55Swiz# Enable experimental buffer queue strategy for better responsiveness under 
671.54Sjunyoung# high disk I/O load. Use it with caution - it's not proven to be stable yet.
681.54Sjunyoung#options 	NEW_BUFQ_STRATEGY
691.1Seeh
701.48Schs## NFS boot options; tries DHCP/BOOTP then BOOTPARAM
711.1Seehoptions 	NFS_BOOT_BOOTPARAM
721.1Seeh#options 	NFS_BOOT_BOOTP
731.48Schsoptions 	NFS_BOOT_DHCP
741.1Seeh
751.1Seeh#### Debugging options
761.1Seeh
771.1Seeh## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
781.1Seeh## serial console break or keyboard reset, where the PROM would normally
791.1Seeh## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
801.1Seeh# we enable DDB in GENERIC for now.
811.1Seehoptions 	DDB			# kernel dynamic debugger
821.1Seehoptions 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
831.1Seeh#options 	DDB_ONPANIC		# see also sysctl(8): `ddb.onpanic'
841.1Seeh
851.1Seeh## You may also use gdb, on another computer connected to this machine over
861.67Smartin## a serial port.
871.67Smartin# ttyb on an Ultra5 is aliased to: "/pci@1f,0/pci@1,1/ebus@1/se:b", which is
881.67Smartin# "/pci@1f,0/pci@1,1/ebus@1/se@14,400000", port b.
891.68Smartin# options 	KGDB			# support for kernel gdb
901.69Snakayama# options 	KGDB_DEVNAME="\"sab\""	# driver name for the kgdb serial chip
911.69Snakayama# options 	KGDB_DEVADDR=0x400000	# physical address of the chip
921.69Snakayama# options 	KGDB_DEVPORT=1		# port b
931.69Snakayama# options 	KGDB_DEVRATE=38400	# baud rate
941.1Seeh
951.1Seeh
961.1Seeh## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
971.1Seeh## such that gdb(1) can be used on a kernel coredump.
981.1Seeh
991.25Slukem#makeoptions	DEBUG="-g"
1001.1Seeh
1011.1Seeh
1021.1Seeh## Adds code to the kernel that does internal consistency checks, and will
1031.1Seeh## cause the kernel to panic if corruption of internal data structures
1041.1Seeh## is detected.
1051.1Seeh#options 	DIAGNOSTIC	# extra kernel sanity checking
1061.1Seeh
1071.1Seeh## Enable (possibly expensive) debugging code that may also display messages
1081.1Seeh## on the system console
1091.6Seeh#options 	DEBUG
1101.1Seeh
1111.1Seeh## Make SCSI error messages more verbose when explaining their meanings.
1121.1Seehoptions 	SCSIVERBOSE
1131.1Seehoptions 	PCIVERBOSE
1141.1Seehoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1151.1Seeh#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1161.1Seeh
1171.1Seeh## `INSECURE' turns off the kernel security level (securelevel = 0 always).
1181.1Seeh## This allows writing to /dev/mem, loading kernel modules while multi-user,
1191.1Seeh## and other insecurities good only for development work.  Do not use this
1201.1Seeh## option on a production machine.
1211.1Seeh#options 	INSECURE
1221.1Seeh
1231.1Seeh## `FDSCRIPTS' allows non-readable but executable scripts by providing a
1241.1Seeh## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
1251.1Seeh## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
1261.1Seeh## opaque file mechanism.  Perl calls this "secure setuid scripts."
1271.1Seeh
1281.1Seeh#options 	FDSCRIPTS
1291.1Seeh#options 	SETUIDSCRIPTS
1301.1Seeh
1311.1Seeh## Options for compatibility with previous releases foreign system binaries.
1321.1Seeh## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up
1331.1Seeh## additional user-level utilities or system configuration files. See
1341.1Seeh## compat_sunos(8) and compat_svr4(8).
1351.1Seeh
1361.1Seehoptions 	COMPAT_43	# 4.3BSD system interfaces
1371.12Seehoptions 	COMPAT_09	# NetBSD 0.9 binary compatibility
1381.1Seehoptions 	COMPAT_10	# NetBSD 1.0 binary compatibility
1391.1Seehoptions 	COMPAT_11	# NetBSD 1.1 binary compatibility
1401.1Seehoptions 	COMPAT_12	# NetBSD 1.2 binary compatibility
1411.1Seehoptions 	COMPAT_13	# NetBSD 1.3 binary compatibility
1421.1Seehoptions 	COMPAT_14	# NetBSD 1.4 binary compatibility
1431.67Smartinoptions 	COMPAT_15	# NetBSD 1.5 binary compatibility
1441.67Smartinoptions 	COMPAT_16	# NetBSD 1.6 binary compatibility
1451.80Schristosoptions 	COMPAT_20	# NetBSD 2.0 binary compatibility
1461.1Seehoptions 	COMPAT_SUNOS	# SunOS 4.x binary compatibility
1471.1Seehoptions 	COMPAT_SVR4	# SunOS 5.x binary compatibility
1481.14Smrg#options 	COMPAT_SVR4_32	# SunOS 5.x 32-bit binary compatibility -- 64-bit only
1491.1Seeh#options 	COMPAT_NETBSD32	# NetBSD/sparc binary compatibility -- 64-bit only
1501.1Seehoptions 	EXEC_AOUT	# execve(2) support for a.out binaries
1511.1Seehoptions 	EXEC_ELF32	# Exec module for SunOS 5.x binaries.
1521.1Seeh#options 	SYSCALL_DEBUG
1531.1Seeh
1541.16Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
1551.90Schristosoptions		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
1561.16Sabs
1571.1Seeh## File systems.  You probably need at least one of FFS or NFS.
1581.1Seehfile-system	FFS		# Berkeley Fast Filesystem
1591.1Seehfile-system	NFS		# Sun NFS-compatible filesystem client
1601.1Seehfile-system	KERNFS		# kernel data-structure filesystem
1611.1Seehfile-system	NULLFS		# NULL layered filesystem
1621.1Seehfile-system 	OVERLAY		# overlay file system
1631.1Seehfile-system	MFS		# memory-based filesystem
1641.1Seehfile-system	FDESC		# user file descriptor filesystem
1651.1Seehfile-system	UMAPFS		# uid/gid remapping filesystem
1661.1Seehfile-system	LFS		# Log-based filesystem (still experimental)
1671.1Seehfile-system	PORTAL		# portal filesystem (still experimental)
1681.1Seehfile-system	PROCFS		# /proc
1691.1Seehfile-system	CD9660		# ISO 9660 + Rock Ridge file system
1701.1Seehfile-system	UNION		# union file system
1711.1Seehfile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
1721.1Seeh
1731.1Seeh## File system options.
1741.1Seehoptions 	NFSSERVER	# Sun NFS-compatible filesystem server
1751.1Seehoptions 	QUOTA		# FFS quotas
1761.1Seeh#options 	FFS_EI		# FFS Endian Independent support
1771.25Slukemoptions 	SOFTDEP		# FFS soft updates support.
1781.95Sdsloptions 	FFS_SNAPSHOT	# ffs snapshots
1791.1Seeh
1801.1Seeh## Network protocol support.  In most environments, INET is required.
1811.1Seehoptions 	INET		# IP (Internet Protocol) v4
1821.1Seehoptions 	INET6		# IPV6
1831.1Seeh#options 	IPSEC		# IP security
1841.1Seeh#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
1851.1Seeh#options 	IPSEC_DEBUG	# debug for IP security
1861.1Seeh#options 	GATEWAY		# packet forwarding ("router switch")
1871.1Seehoptions 	MROUTING	# packet forwarding of multicast packets
1881.88Smanuoptions 	PIM		# Protocol Independent Multicast
1891.1Seeh#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
1901.1Seehoptions 	NS		# Xerox NS networking
1911.1Seeh#options 	NSIP		# Xerox NS tunneling over IP
1921.1Seehoptions 	ISO,TPIP	# OSI networking
1931.6Seehoptions 	EON		# OSI tunneling over IP
1941.1Seeh#options 	CCITT,LLC,HDLC	# X.25 packet switched protocol
1951.1Seehoptions 	NETATALK	# AppleTalk (over Ethernet) protocol
1961.1Seehoptions 	NTP		# Network Time Protocol in-kernel support
1971.1Seeh#options 	PPS_SYNC	# Add serial line synchronization for NTP
1981.1Seehoptions 	PFIL_HOOKS	# Add pfil(9) hooks, intended for custom LKMs.
1991.1Seehoptions 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
2001.47Smartti#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
2011.1Seehoptions 	PPP_BSDCOMP	# Add BSD compression to ppp device
2021.1Seehoptions 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
2031.1Seehoptions 	PPP_FILTER	# Add active filters for ppp (via bpf)
2041.16Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
2051.1Seeh
2061.84Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
2071.84Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
2081.84Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
2091.84Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
2101.84Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
2111.84Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
2121.84Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
2131.84Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
2141.84Sabs#options 	ALTQ_PRIQ	# Priority Queueing
2151.84Sabs#options 	ALTQ_RED	# Random Early Detection
2161.84Sabs#options 	ALTQ_RIO	# RED with IN/OUT
2171.84Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
2181.84Sabs
2191.1Seeh
2201.1Seeh#### Main bus and CPU .. all systems.
2211.1Seehmainbus0 at root
2221.1Seehcpu0	at mainbus0
2231.1Seeh
2241.1Seeh#### Bus types found on SPARC systems.
2251.1Seeh
2261.1Seehsbus0	at mainbus0				# Ultra 1
2271.1Seeh#upa0	at mainbus0				# Ultra 1E, Ultra 2, Ex0000
2281.14Smrgpsycho*	at mainbus0				# Darwin, Ultra5
2291.39Sthorpejpci*	at psycho?
2301.39Sthorpejpci*	at ppb?
2311.39Sthorpejppb*	at pci?					# `APB' support.
2321.39Sthorpejebus*	at pci?					# ebus devices
2331.18Seeh# XXX 'puc's aren't really bridges, but there's no better place for them here
2341.39Sthorpejpuc*	at pci? dev ? function ?		# PCI "universal" comm. cards
2351.1Seeh
2361.1Seeh#### Standard system devices -- all required for a given architecture
2371.1Seeh
2381.1Seeh## PROM console driver -- if all else fails
2391.1Seehpcons0	at mainbus0				# PROM console
2401.1Seeh
2411.1Seeh## Auxiliary system registers -- We use the OBP for power management
2421.1Seehauxio*	at ebus?				# auxio registers
2431.1Seehauxio*	at sbus? slot ? offset ?		# auxio registers
2441.1Seeh
2451.1Seeh# We also need:
2461.1Seehbpp*	at sbus? slot ? offset ?		# parallel port
2471.1Seehlpt*	at ebus?				# parallel port
2481.1Seeh
2491.1Seeh## Mostek clock found on 4/300, sun4c, sun4m and sun4u systems.
2501.1Seeh## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
2511.1Seehclock*	at sbus? slot ? offset ?
2521.1Seehclock*	at ebus?
2531.38Seehrtc*	at ebus?
2541.1Seeh
2551.1Seeh## Timer chip found on 4/300, sun4c, sun4m and (some) sun4u systems.
2561.1Seehtimer*	at mainbus0				# sun4c
2571.1Seeh
2581.1Seeh#### Serial port configuration
2591.1Seeh
2601.1Seeh## Zilog 8530 serial chips.  Each has two-channels.
2611.1Seeh## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
2621.8Seehzs*	at sbus? slot ? offset ?
2631.8Seehzstty*	at zs? channel ?			# ttya
2641.8Seehkbd0	at zstty?
2651.8Seehms0	at zstty?
2661.8Seeh
2671.1Seeh## PCI machines have serial ports:
2681.1Seeh##	Siemens SAB82532 controller: ttya and ttyb (`su'; sab)
2691.1Seeh##	Part of NS PC87332VLJ Super I/O controller: kbd/mouse (`se'; com)
2701.1Seeh
2711.14Smrg## The SAB82532 controller has two serial ports
2721.43Spetrovsab*	at ebus?				# ttya/ttyb
2731.43Spetrovsabtty*	at sab? channel ?
2741.1Seeh
2751.9Smrg## Part of a PC87332VLJ
2761.8Seehcom*	at ebus?				# `com' driver for `su'
2771.8Seehkbd0	at com?					# keyboard
2781.8Seehms0	at com?					# mouse
2791.1Seeh
2801.86Smrg## Magma Serial/Parallel driver (not tested)
2811.86Smrg#magma*	at sbus? slot ? offset ?
2821.86Smrg#mtty*	at magma?
2831.86Smrg#mbpp*	at magma?
2841.86Smrg
2851.86Smrg## SUNW,spif Serial/Parallel driver (not tested)
2861.86Smrg#spif*  at sbus? slot ? offset ?
2871.86Smrg#stty*  at spif?
2881.86Smrg#sbpp*  at spif?
2891.86Smrg
2901.86Smrg## PCI serial interfaces
2911.18Seehcom*	at puc? port ?			# 16x50s on "universal" comm boards
2921.39Sthorpejcy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
2931.39Sthorpejcz*	at pci? dev ? function ?	# Cyclades-Z multi-port serial boards
2941.18Seeh
2951.86Smrg
2961.1Seeh#### Disk controllers and disks
2971.1Seeh
2981.1Seeh## The following flags may be set for the NCR53c94 based esp driver:
2991.1Seeh##	bits 0-7:  disable disconnect/reselect for the corresponding target
3001.1Seeh##	bits 8-15: disable synchronous negotiation for target [bit-8]
3011.1Seeh
3021.1Seeh## sun4u on-board SCSI, and FSBE/S SBus SCSI cards, an NCR53c94 or
3031.1Seeh## equivalent behind an LSI Logic DMA controller
3041.1Seeh
3051.49Smartin# XXX - the esp driver has problems with tagged queueing.
3061.49Smartin# To avoid these, tagged queueing has been disabled for the first 8 targets
3071.49Smartin# by setting those bits to 1 (starting at bit 16, see esp(4) for details).
3081.49Smartin# If you want tagged queueing, and are sure it works for you, set the flags
3091.49Smartin# value to 0. CAVEAT: using tagged queueing currently can cause data loss!
3101.49Smartin
3111.8Seehdma*	at sbus? slot ? offset ?		# SBus
3121.49Smartinesp*	at dma? flags 0x00ff0000		# SBus
3131.1Seeh
3141.49Smartinesp*	at sbus? slot ? offset ? flags 0x00ff0000
3151.1Seehisp*	at sbus? slot ? offset ?
3161.42Smrgisp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
3171.70Sbouyersiop*	at pci? 			# 53C8xx ("glm" compatible)
3181.70Sbouyeresiop*	at pci? 			# 53C875 and newer ("glm" compatible)
3191.1Seeh
3201.78Sjonathan# PCI cryptographic devices
3211.78Sjonathanhifn*	at pci? dev ? function ?	# Hifn 7755/7811/795x
3221.78Sjonathanubsec*	at pci? dev ? function ?	# Broadcom 5501/5601/580x/582x
3231.78Sjonathan
3241.23Stsutsui# PCI SCSI controllers
3251.23Stsutsui# 	UT marks untested.
3261.39Sthorpejadv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI UT
3271.39Sthorpejadw*	at pci? dev ? function ?	# AdvanSys 9x0UW[D], 3940U[2,3]W SCSI UT
3281.61Stsutsuiahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
3291.39Sthorpejbha*	at pci? dev ? function ?	# BusLogic 9xx SCSI UT
3301.39Sthorpejdpt*	at pci? dev ? function ?	# DPT SmartCache/SmartRAID UT
3311.39Sthorpejiha*	at pci? dev ? function ?	# Initio INIC-940/950 SCSI
3321.87Sitohynjs*	at pci? dev ? function ?	# Workbit NinjaSCSI-32
3331.61Stsutsuipcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI
3341.39Sthorpejtrm*	at pci? dev ? function ?	# Tekram DC-395U/UW/F, DC-315/U SCSI
3351.18Seeh
3361.18Seehscsibus* at scsi?
3371.18Seeh
3381.1Seeh## These entries find devices on all SCSI busses and assign
3391.1Seeh## unit numbers dynamically.
3401.1Seehsd*	at scsibus? target ? lun ?		# SCSI disks
3411.1Seehst*	at scsibus? target ? lun ?		# SCSI tapes
3421.1Seehcd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
3431.1Seehch*	at scsibus? target ? lun ?		# SCSI changer devices
3441.1Seehss*	at scsibus? target ? lun ?		# SCSI scanners
3451.13Smjacobses*	at scsibus? target ? lun ?		# SCSI SES/SAF-TE devices
3461.1Seehuk*	at scsibus? target ? lun ?		# unknown SCSI
3471.1Seeh
3481.52Sgrant# IDE and related devices
3491.52Sgrant# PCI IDE controllers - see pciide(4) for supported hardware.
3501.52Sgrant# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
3511.52Sgrant# how to set up DMA modes for this chip. This may work, or may cause
3521.52Sgrant# a machine hang with some controllers.
3531.72Sbouyerpciide* at pci? dev ? function ? flags 0x0000	# GENERIC pciide driver
3541.72Sbouyeracardide* at pci? dev ? function ?	# Acard IDE controllers
3551.72Sbouyeraceride* at pci? dev ? function ?	# Acer Lab IDE controllers
3561.77Sthorpejartsata* at pci? dev ? function ?	# Intel i31244 SATA controller
3571.72Sbouyercmdide* at pci? dev ? function ?	# CMD tech IDE controllers
3581.72Sbouyercypide* at pci? dev ? function ?	# Cypress IDE controllers
3591.72Sbouyerhptide* at pci? dev ? function ?	# Triones/HighPoint IDE controllers
3601.72Sbouyeroptiide* at pci? dev ? function ?	# Opti IDE controllers
3611.72Sbouyerpiixide* at pci? dev ? function ?	# Intel IDE controllers
3621.72Sbouyerpdcide* at pci? dev ? function ?	# Promise IDE controllers
3631.91Sbouyerpdcsata* at pci? dev ? function ?	# Promise SATA150 controllers
3641.76Sthorpejsatalink* at pci? dev ? function ?	# SiI SATALink controllers
3651.72Sbouyersiside* at pci? dev ? function ?	# SiS IDE controllers
3661.72Sbouyerslide*  at pci? dev ? function ?	# Symphony Labs IDE controllers
3671.72Sbouyerviaide* at pci? dev ? function ?	# VIA/AMD/Nvidia IDE controllers
3681.96Sjdc
3691.96Sjdc# ATA (IDE) bus support
3701.73Slukematabus* at ata?
3711.73Slukematapibus* at atapi?
3721.21Seeh
3731.52Sgrant# IDE drives
3741.52Sgrant# Flags are used only with controllers that support DMA operations
3751.52Sgrant# and mode settings (e.g. some pciide controllers)
3761.52Sgrant# The lowest order four bits (rightmost digit) of the flags define the PIO
3771.52Sgrant# mode to use, the next set of four bits the DMA mode and the third set the
3781.52Sgrant# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
3791.52Sgrant# to use, and the last bit must be 1 for this setting to be used.
3801.52Sgrant# For DMA and UDMA, 0xf (1111) means 'disable'.
3811.52Sgrant# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
3821.52Sgrant# (0xc=1100, 0xa=1010, 0xf=1111)
3831.52Sgrant# 0x0000 means "use whatever the drive claims to support".
3841.52Sgrant
3851.21Seeh## Disable UDMA 4 which causes data corruption on the Acer Labs
3861.21Seeh## chipset on Sun Blade 100 and Netra X1 machines.
3871.71Sbouyerwd*     at atabus? drive ? flags 0x0000
3881.1Seeh
3891.1Seehcd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
3901.1Seehsd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
3911.1Seehuk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
3921.1Seeh
3931.18Seeh# RAID controllers and devices (untested)
3941.39Sthorpejcac*	at pci? dev ? function ?	# Compaq PCI array controllers
3951.39Sthorpejmlx*	at pci? dev ? function ?	# Mylex DAC960 & DEC SWXCR family
3961.39Sthorpejtwe*	at pci? dev ? function ?	# 3ware Escalade RAID controllers
3971.18Seeh
3981.18Seehld*	at cac? unit ?			# logical disk devices
3991.18Seehld*	at twe? unit ?
4001.18Seehld*	at mlx? unit ?
4011.18Seeh
4021.1Seeh## Floppy controller and drive found on SPARCstations.
4031.1Seeh
4041.1Seeh# need share with the sparc, and everyone else.  needs to use auxio.
4051.1Seeh# actually, the ebus version has (will have) direct access to it's AUXIO
4061.1Seeh# register space (it is mapped in to fdthree not auxio).
4071.1Seeh#fdc0	at sbus? slot ? offset ?		# SUNW,fdtwo
4081.1Seeh#fdc0	at ebus?				# fdthree
4091.1Seeh#fd*	at fdc0 	 			# the drive itself
4101.1Seeh
4111.1Seeh## A disk-like interface to files.  Can be used to create floppy, CD,
4121.1Seeh## miniroot images, etc.
4131.1Seeh
4141.1Seehpseudo-device	vnd	4
4151.1Seeh
4161.1Seeh## Concatenated and striped disks; with this, you can create a software-based
4171.1Seeh## disk array similar to a "RAID 0" setup.  See ccd(4).
4181.1Seeh
4191.1Seehpseudo-device	ccd	4
4201.51Selric
4211.51Selric## Cryptographic disk devices.  See cgd(4).
4221.51Selric
4231.51Selric#pseudo-device	cgd	4
4241.1Seeh
4251.1Seeh## RAIDframe disk driver: software RAID driver.  See raid(4).
4261.1Seeh
4271.29Sosterpseudo-device	raid	8
4281.29Sosteroptions 	RAID_AUTOCONFIG		# auto-configuration of RAID components
4291.29Soster# Options to enable various other RAIDframe RAID types.
4301.69Snakayama# options 	RF_INCLUDE_EVENODD=1
4311.69Snakayama# options 	RF_INCLUDE_RAID5_RS=1
4321.69Snakayama# options 	RF_INCLUDE_PARITYLOGGING=1
4331.69Snakayama# options 	RF_INCLUDE_CHAINDECLUSTER=1
4341.69Snakayama# options 	RF_INCLUDE_INTERDECLUSTER=1
4351.29Soster# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
4361.69Snakayama# options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
4371.29Soster
4381.1Seeh
4391.1Seeh## Memory disk device, used on boot floppies with compressed
4401.1Seeh## kernel-plus-root-disk images.
4411.1Seeh
4421.1Seehpseudo-device	md	1
4431.1Seeh
4441.1Seeh
4451.1Seeh#### Network interfaces
4461.1Seeh
4471.1Seeh## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue
4481.1Seeh## Three flavors of additional SBus ethernets are available.  One attaches
4491.1Seeh## directly like the sun4c on-board, one uses the ledma device like the
4501.1Seeh## sun4m on-board, and one uses the lebuffer device.
4511.1Seeh
4521.8Seehledma0		at sbus? slot ? offset ?	# sun4m on-board
4531.8Seehle0		at ledma0			# sun4m on-board
4541.8Seehle*		at sbus? slot ? offset ?	# SBus
4551.8Seehledma*		at sbus? slot ? offset ?	# SBus
4561.8Seehle*		at ledma?			# SBus
4571.8Seehlebuffer0	at sbus? slot ? offset ?	# SBus
4581.8Seehle0		at lebuffer?			# SBus
4591.8Seehlebuffer*	at sbus? slot ? offset ?	# SBus
4601.8Seehle*		at lebuffer?			# SBus
4611.1Seeh
4621.1Seeh## Happy Meal Ethernet
4631.1Seehhme*		at sbus? slot ? offset ?
4641.39Sthorpejhme*		at pci?	dev ? function ?	# network "hme" compatible
4651.17Smatt
4661.18Seeh## qec/be, qec/hme
4671.18Seehqec*		at sbus? slot ? offset ?
4681.18Seehbe*		at qec?
4691.18Seehqe*		at qec?
4701.18Seeh
4711.18Seeh# PCI network interfaces
4721.18Seeh# 	UT marks untested.
4731.39Sthorpejan*	at pci? dev ? function ?	# Aironet PC4500/PC4800 (802.11) UT
4741.39Sthorpejen*	at pci? dev ? function ?	# ENI/Adaptec ATM UT
4751.18Seeh# XXX causes ICE
4761.39Sthorpej#ep*	at pci? dev ? function ?	# 3Com 3c59x
4771.61Stsutsuiex*	at pci? dev ? function ?	# 3Com 90x[B]
4781.61Stsutsuiepic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet
4791.39Sthorpejesh*	at pci? dev ? function ?	# Essential HIPPI card UT
4801.39Sthorpejfpa*	at pci? dev ? function ?	# DEC DEFPA FDDI UT
4811.53Sgrantfxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
4821.39Sthorpejgem*	at pci? dev ? function ?	# Apple GMAC and Sun ERI gigabit enet
4831.62Stsutsui# XXX lacks bus_dmamap_sync()
4841.62Stsutsui#le*	at pci? dev ? function ?	# PCnet-PCI Ethernet
4851.18Seeh# XXX uses vtophys()
4861.39Sthorpej#lmc*	at pci? dev ? function ?	# Lan Media Corp SSI/HSSI/DS3
4871.39Sthorpejne*	at pci? dev ? function ?	# NE2000-compatible Ethernet UT
4881.39Sthorpejntwoc*	at pci? dev ? function ?	# Riscom/N2 PCI Sync Serial UT
4891.61Stsutsui# XXX cause uncorrectable DMA error
4901.61Stsutsui#pcn*	at pci? dev ? function ?	# PCnet-PCI Ethernet
4911.53Sgrantrtk*	at pci? dev ? function ?	# Realtek 8129/8139
4921.61Stsutsui# XXX cause uncorrectable DMA error
4931.61Stsutsui#sip*	at pci? dev ? function ?	# SiS 900 Ethernet
4941.39Sthorpejti*	at pci? dev ? function ?	# Alteon ACEnic gigabit Ethernet UT
4951.39Sthorpejtl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
4961.39Sthorpejtlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
4971.39Sthorpejvr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
4981.56Sgrantwi*	at pci? dev ? function ?	# Lucent/Intersil WaveLAN/IEEE
4991.1Seeh
5001.1Seeh# MII/PHY support
5011.1Seeh# XXX: only nsphy "tested"
5021.18Seehdmphy*	at mii? phy ?			# Davicom DM9101 PHYs
5031.18Seehexphy*	at mii? phy ?			# 3Com internal PHYs
5041.32Swizicsphy*	at mii? phy ?			# Integrated Circuit Systems ICS189x
5051.18Seehinphy*	at mii? phy ?			# Intel 82555 PHYs
5061.18Seehiophy*	at mii? phy ?			# Intel 82553 PHYs
5071.18Seehlxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
5081.18Seehnsphy*	at mii? phy ?			# NS83840 PHYs
5091.18Seehnsphyter* at mii? phy ?			# NS83843 PHYs
5101.18Seehqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
5111.18Seehsqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
5121.18Seehtlphy*	at mii? phy ?			# ThunderLAN PHYs
5131.18Seehtqphy*	at mii? phy ?			# TDK Semiconductor PHYs
5141.18Seehukphy*	at mii? phy ?			# generic unknown PHYs
5151.18Seeh
5161.18Seeh# PCI USB controllers
5171.66Snakayamaehci*	at pci? dev ? function ?	# Enhanced Host Controller
5181.66Snakayamaohci*	at pci? dev ? function ?	# Open Host Controller
5191.94Smartinuhci*	at pci?	dev ? function ?	# Universal Host Controller (Intel)
5201.66Snakayama
5211.66Snakayamausb*	at ehci?			# USB bus support
5221.66Snakayamausb*	at ohci?
5231.94Smartinusb*	at uhci?
5241.18Seeh
5251.20Seehuhub*	at usb?						# USB Hubs
5261.20Seehuhub*	at uhub? port ? configuration ? interface ?
5271.18Seeh
5281.28Saugustssuhidev*	at uhub? port ? configuration ? interface ?	# USB HID
5291.28Saugustssuhid*	at uhidev? reportid ?				# USB Generic HID
5301.28Saugustss
5311.20Seehulpt*	at uhub? port ? configuration ? interface ?	# USB Printer
5321.18Seeh
5331.20Seehumodem*	at uhub? port ? configuration ?			# USB Modem
5341.20Seehucom*	at umodem?
5351.18Seeh
5361.20Seehumass*	at uhub? port ? configuration ? interface ?	# USB Mass Storage
5371.18Seeh
5381.20Seehuaudio*	at uhub? port ? configuration ?			# USB audio
5391.18Seeh
5401.18Seeh# USB Ethernet adapters
5411.20Seehaue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
5421.89Saugustssaxe*	at uhub? port ?		# ASIX AX88172 based adapters
5431.20Seehcue*	at uhub? port ?		# CATC USB-EL1201A based adapters
5441.20Seehkue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
5451.57Saugustssurl*	at uhub? port ?		# Realtek RTL8150L based adapters
5461.20Seeh
5471.20Seehuscanner* at uhub? port ?				# USB scanners
5481.53Sgrantuyap*	at uhub? port ?					# Y@P firmware loader
5491.20Seehugen*	at uhub? port ? configuration ? interface ?	# USB Generic driver
5501.20Seeh
5511.20Seeh# PCI IEEE1394 controllers
5521.39Sthorpejfwohci*	at pci? dev ? function ?	# IEEE1394 Open Host Controller
5531.39Sthorpej#fwlynx* at pci? dev ? function ?	# IEEE1394 TI Lynx Controller
5541.25Slukemfw*	at fwbus?			# IP over 1394
5551.20Seeh
5561.20Seeh# IEEE1394 nodes
5571.66Snakayama#fwnode* at fwbus? idhi ? idlo ?
5581.66Snakayama#sbpscsi* at fwnode?
5591.1Seeh
5601.1Seeh## Loopback network interface; required
5611.1Seehpseudo-device	loop
5621.1Seeh
5631.1Seeh## SLIP and CSLIP interfaces, for IP over a serial line.
5641.1Seehpseudo-device	sl		2
5651.1Seeh
5661.1Seeh## PPP, the successor to SLIP.  See pppd(8).
5671.1Seehpseudo-device	ppp		2
5681.27Smartin
5691.27Smartin## PPP over Ethernet (RFC 2516)
5701.27Smartinpseudo-device	pppoe
5711.1Seeh
5721.1Seeh## Starmode Radio IP, a special hardware network device.
5731.1Seehpseudo-device	strip		1
5741.1Seeh
5751.1Seeh## Network "tunnel" device, allowing protocol stacks to run in the userland.
5761.1Seeh## This is used by the third-party user-mode "ppp" program, and others.
5771.1Seehpseudo-device	tun		4
5781.92Scubepseudo-device	tap			# virtual Ethernet
5791.1Seeh
5801.1Seeh## Generic L3 over IP tunnel
5811.1Seeh#pseudo-device	gre		2	# generic L3 over IP tunnel
5821.1Seeh
5831.1Seeh## Berkeley Packet Filter, required to run RARPD.  A generic C-language
5841.1Seeh## interface that allows selective examining of incoming packets.
5851.1Seehpseudo-device	bpfilter	8
5861.58Sseb
5871.58Sseb## IEEE 802.1q encapsulation
5881.58Ssebpseudo-device	vlan
5891.19Satatat
5901.19Satatat## Simple inter-network traffic bridging
5911.19Satatatpseudo-device	bridge
5921.69Snakayama#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
5931.1Seeh
5941.1Seeh## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
5951.1Seeh## one example of the use of the IP Filter.
5961.1Seehpseudo-device	ipfilter
5971.1Seeh
5981.1Seeh## for IPv6
5991.1Seehpseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
6001.1Seeh#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
6011.1Seeh#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
6021.60Snakayama
6031.60Snakayama
6041.60Snakayama#### CardBus and PCMCIA devices
6051.60Snakayama
6061.60Snakayama# PCI CardBus bridge support
6071.60Snakayama#cbb*	at pci? dev ? function ?
6081.60Snakayama#cardslot* at cbb?
6091.60Snakayama
6101.60Snakayama# CardBus bus support
6111.60Snakayama#cardbus* at cardslot?
6121.60Snakayama#pcmcia* at cardslot?
6131.60Snakayama
6141.96Sjdc## SBus to PCMCIA bridge
6151.96Sjdc#nell*	at sbus? slot ? offset ?		# PCMCIA bridge
6161.96Sjdc#pcmcia*	at nell?
6171.96Sjdc
6181.60Snakayama## CardBus cards; UT marks untested.
6191.60Snakayama
6201.60Snakayama# CardBus serial interfaces
6211.60Snakayama#com*	at cardbus? dev ? function ?	# Modems and serial cards UT
6221.60Snakayama
6231.60Snakayama# CardBus SCSI controllers
6241.60Snakayama#adv*	at cardbus? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI UT
6251.60Snakayama#ahc*	at cardbus? dev ? function ?	# Adaptec ADP-1480 UT
6261.87Sitohy#njs*	at cardbus? dev ? function ?	# Workbit NinjaSCSI-32
6271.60Snakayama
6281.60Snakayama# CardBus network interfaces
6291.96Sjdc#ath*	at cardbus? dev ? function ?	# Atheros 5210/5211/5212 802.11 UT
6301.96Sjdc#atw*	at cardbus? dev ? function ?	# ADMtek ADM8211 (802.11) UT
6311.60Snakayama#ex*	at cardbus? dev ? function ?	# 3Com 3C575TX UT
6321.60Snakayama#fxp*	at cardbus? dev ? function ?	# Intel i8255x UT
6331.60Snakayama#rtk*	at cardbus? dev ? function ?	# Realtek 8129/8139 UT
6341.60Snakayama#tlp*	at cardbus? dev ? function ?	# DECchip 21143 UT
6351.60Snakayama
6361.60Snakayama# CardBus USB controllers
6371.60Snakayama#ehci*	at cardbus? dev ? function ?	# Enhanced Host Controller
6381.60Snakayama#ohci*	at cardbus? dev ? function ?	# Open Host Controller
6391.60Snakayama
6401.60Snakayama# CardBus IEEE1394 controllers
6411.60Snakayama#fwohci* at cardbus? dev ? function ?	# IEEE1394 Open Host Controller UT
6421.60Snakayama
6431.60Snakayama## PCMCIA cards; UT marks untested.
6441.60Snakayama
6451.60Snakayama# PCMCIA serial interfaces
6461.60Snakayama#com*	at pcmcia? function ?		# Modems and serial cards
6471.60Snakayama
6481.60Snakayama#pcmcom* at pcmcia? function ?		# PCMCIA multi-port serial cards UT
6491.60Snakayama#com*	at pcmcom? slave ?		# ...and the slave devices
6501.60Snakayama
6511.60Snakayama# PCMCIA SCSI controllers
6521.60Snakayama#aic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI UT
6531.60Snakayama#esp*	at pcmcia? function ?		# Qlogic ESP406/FAS408 SCSI UT
6541.60Snakayama
6551.60Snakayama# PCMCIA IDE controllers
6561.60Snakayama#wdc*	at pcmcia? function ?
6571.60Snakayama
6581.60Snakayama# PCMCIA network interfaces
6591.60Snakayama#an*	at pcmcia? function ?		# Aironet PC4500/PC4800 (802.11) UT
6601.60Snakayama#awi*	at pcmcia? function ?		# BayStack 650/660 (802.11FH/DS) UT
6611.60Snakayama#cnw*	at pcmcia? function ?		# Xircom/Netwave AirSurfer UT
6621.96Sjdc#cs*	at pcmcia? function ?		# CS89xx Ethernet UT
6631.60Snakayama#ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
6641.60Snakayama#mbe*	at pcmcia? function ?		# MB8696x based Ethernet UT
6651.60Snakayama#ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
6661.60Snakayama#ray*	at pcmcia? function ?		# Raytheon Raylink (802.11) UT
6671.60Snakayama#sm*	at pcmcia? function ?		# Megahertz Ethernet UT
6681.60Snakayama# tr at pcmcia has problems with Cardbus bridges
6691.60Snakayama#tr*	at pcmcia? function ?		# TROPIC based Token-Ring UT
6701.60Snakayama#wi*	at pcmcia? function ?		# Lucent/Intersil WaveLan IEEE (802.11)
6711.96Sjdc#xirc*	at pcmcia? function ?		# Xircom CreditCard Ethernet UT
6721.96Sjdc#com*	at xirc?
6731.96Sjdc#xi*	at xirc?
6741.96Sjdc#mhzc*	at pcmcia? function ?		# Megahertz Ethernet/Modem combo cards UT
6751.60Snakayama#com*	at mhzc?
6761.60Snakayama#sm*	at mhzc?
6771.1Seeh
6781.96Sjdc# PCMCIA audio devices
6791.96Sjdc#esl*	at pcmcia? function ?			# ESS 1688 AudioDrive UT
6801.1Seeh
6811.1Seeh#### Audio and video devices
6821.1Seeh
6831.1Seeh## /dev/audio support (`audiocs' plus `audio')
6841.1Seeh##
6851.8Seehaudiocs*	at sbus? slot ? offset ?	# SUNW,CS4231
6861.40Smartinaudiocs*	at ebus?			# SUNW,CS4231 in U5/U10
6871.39Sthorpejautri*		at pci? dev ? function ?	# Blade 100 'sound'
6881.31Seeh
6891.65Snakayamaaudio*		at audiobus?
6901.38Seeh
6911.65Snakayama#midi*		at midibus?
6921.1Seeh
6931.1Seeh
6941.1Seeh## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
6951.1Seeh## systems.  If your sun4 system has a cgfour installed in the P4 slot,
6961.1Seeh## the P4 entries for "bwtwo" will attach to the overlay plane of the
6971.1Seeh## "cgfour".
6981.1Seeh
6991.8Seeh#bwtwo0		at sbus? slot ? offset ?	# sun4c and sun4m
7001.8Seeh#bwtwo*		at sbus? slot ? offset ?
7011.1Seeh
7021.1Seeh## Sun "cgthree" Sbus color framebuffer
7031.1Seeh#cgthree0	at sbus? slot ? offset ?
7041.1Seeh#cgthree*	at sbus? slot ? offset ?
7051.1Seeh
7061.1Seeh## Sun "cgsix" accelerated color framebuffer.
7071.1Seehcgsix0		at sbus? slot ? offset ?
7081.1Seehcgsix*		at sbus? slot ? offset ?
7091.1Seeh
7101.1Seeh## Sun FFB not supported
7111.79Spetrov#ffb*		at mainbus0
7121.79Spetrov#wsdisplay*	at ffb?
7131.1Seeh
7141.1Seeh#### Other device configuration
7151.1Seeh
7161.78Sjonathan### Other pseudo-devices
7171.78Sjonathan
7181.78Sjonathanpseudo-device 	crypto			# opencrypto framework
7191.78Sjonathan
7201.1Seeh## Pseudo ttys, required for network logins and programs like screen.
7211.1Seeh
7221.7Sjdolecekpseudo-device	pty			# pseudo-ttys (for network, etc.)
7231.1Seeh
7241.1Seeh## Random device, used to implement /dev/random (a source of random noise),
7251.1Seeh## and generate randomness for some kernel formulae.
7261.1Seeh
7271.1Seehpseudo-device	rnd
7281.41Slukem
7291.41Slukempseudo-device	clockctl		# user control of clock subsystem
7301.64Sraggepseudo-device	ksyms			# /dev/ksyms
7311.83Sitojun#pseudo-device	pf			# PF packet filter
7321.83Sitojun#pseudo-device	pflog			# PF log if
7331.93Shannkenpseudo-device	fss		4	# file system snapshot device
734