GENERIC revision 1.238
11.238Stron#	$NetBSD: GENERIC,v 1.238 1999/07/03 12:09:52 tron Exp $
21.1Smycroft#
31.1Smycroft#	GENERIC -- everything that's currently supported
41.1Smycroft#
51.1Smycroft
61.61Sfvdlinclude "arch/i386/conf/std.i386"
71.14Scgd
81.110Sthorpejmaxusers	32		# estimated number of users
91.150Sthorpej
101.110Sthorpej# CPU support.  At least one is REQUIRED.
111.110Sthorpejoptions 	I386_CPU
121.82Smellonoptions 	I486_CPU
131.82Smellonoptions 	I586_CPU
141.154Senamioptions 	I686_CPU
151.110Sthorpej
161.110Sthorpej# CPU-related options.
171.82Smellonoptions 	MATH_EMULATE	# floating point emulation
181.102Smycroft#options 	VM86		# virtual 8086 emulation
191.102Smycroftoptions 	USER_LDT	# user-settable LDT; used by WINE
201.112Sperry# eliminate delay no-ops in I/O; recommended on all but very old machines
211.112Sperry#options 	DUMMY_NOPS
221.191Sbouyer
231.197Slukem# delay between "rebooting ..." message and hardware reset, in milliseconds
241.191Sbouyer#options 	CPURESET_DELAY=2000
251.110Sthorpej
261.110Sthorpej# Misc. i386-specific options
271.110Sthorpejoptions 	XSERVER		# X server support in console drivers
281.177Smycroft#options 	XSERVER_DDB	# PF12 gets you into DDB when X is running
291.110Sthorpej
301.110Sthorpej# This option allows you to force a serial console at the specified
311.121Sdrochner# I/O address.   see console(4) for details.
321.175Srvb#options 	"CONSDEVNAME=\"com\"",CONADDR=0x2f8,CONSPEED=57600
331.175Srvb#	you don't want the option below ON iff you are using the
341.184Sdrochner#	serial console option of the new boot strap code.
351.175Srvb#options	CONS_OVERRIDE	# Always use above! independent of boot info
361.32Sthorpej
371.101Smycroft# The following options override the memory sizes passed in from the boot
381.101Smycroft# block.  Use them *only* if the boot block is unable to determine the correct
391.111Sperry# values.  Note that the BIOS may *correctly* report less than 640k of base
401.101Smycroft# memory if the extended BIOS data area is located at the top of base memory
411.101Smycroft# (as is the case on most recent systems).
421.185Smycroft#options 	REALBASEMEM=639		# size of base memory (in KB)
431.185Smycroft#options 	REALEXTMEM=15360	# size of extended memory (in KB)
441.1Smycroft
451.110Sthorpej# Standard system options
461.110Sthorpej
471.110Sthorpejoptions 	UCONSOLE	# users can use TIOCCONS (for xconsole)
481.110Sthorpejoptions 	INSECURE	# disable kernel security levels
491.1Smycroft
501.82Smellonoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
511.216Scjsoptions 	NTP		# NTP phase/frequency locked loop
521.1Smycroft
531.98Smikeloptions 	KTRACE		# system call tracing via ktrace(1)
541.1Smycroft
551.82Smellonoptions 	SYSVMSG		# System V-like message queues
561.82Smellonoptions 	SYSVSEM		# System V-like semaphores
571.82Smellonoptions 	SYSVSHM		# System V-like memory sharing
581.82Smellon#options 	SHMMAXPGS=1024	# 1024 pages is the default
591.82Smellon
601.110Sthorpejoptions 	LKM		# loadable kernel modules
611.110Sthorpej
621.110Sthorpej# Diagnostic/debugging support options
631.110Sthorpejoptions 	DIAGNOSTIC	# cheap kernel consistency checks
641.110Sthorpej#options 	DEBUG		# expensive debugging checks/support
651.127Stv#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
661.110Sthorpejoptions 	DDB		# in-kernel debugger
671.122Slukem#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
681.110Sthorpej#options 	KGDB		# remote debugger
691.110Sthorpej#options 	"KGDB_DEVNAME=\"com\"",KGDBADDR=0x3f8,KGDBRATE=9600
701.110Sthorpej#makeoptions	DEBUG="-g"	# compile full symbol table
711.110Sthorpej
721.116Smikel# Compatibility options
731.82Smellonoptions 	COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
741.82Smellonoptions 	COMPAT_09	# NetBSD 0.9,
751.82Smellonoptions 	COMPAT_10	# NetBSD 1.0,
761.82Smellonoptions 	COMPAT_11	# NetBSD 1.1,
771.55Smycroftoptions 	COMPAT_12	# NetBSD 1.2,
781.125Skleinkoptions 	COMPAT_13	# NetBSD 1.3,
791.82Smellonoptions 	COMPAT_43	# and 4.3BSD
801.139Smycroftoptions 	COMPAT_386BSD_MBRPART # recognize old partition ID
811.1Smycroft
821.82Smellonoptions 	COMPAT_SVR4	# binary compatibility with SVR4
831.82Smellonoptions 	COMPAT_IBCS2	# binary compatibility with SCO and ISC
841.82Smellonoptions 	COMPAT_LINUX	# binary compatibility with Linux
851.82Smellonoptions 	COMPAT_FREEBSD	# binary compatibility with FreeBSD
861.59Smycroft
871.110Sthorpej# Executable format options
881.82Smellonoptions 	EXEC_ELF32	# 32-bit ELF executables (SVR4, Linux)
891.1Smycroft
901.110Sthorpej# File systems
911.71Sthorpejfile-system 	FFS		# UFS
921.80Sperryfile-system 	EXT2FS		# second extended file system (linux)
931.71Sthorpejfile-system 	LFS		# log-structured file system
941.71Sthorpejfile-system 	MFS		# memory file system
951.71Sthorpejfile-system 	NFS		# Network File System client
961.234Schristosfile-system 	NTFS		# Windows/NT file system
971.71Sthorpejfile-system 	CD9660		# ISO 9660 + Rock Ridge file system
981.71Sthorpejfile-system 	MSDOSFS		# MS-DOS file system
991.71Sthorpejfile-system 	FDESC		# /dev/fd
1001.71Sthorpejfile-system 	KERNFS		# /kern
1011.71Sthorpejfile-system 	NULLFS		# loopback file system
1021.71Sthorpejfile-system 	PORTAL		# portal filesystem (still experimental)
1031.71Sthorpejfile-system 	PROCFS		# /proc
1041.71Sthorpejfile-system 	UMAPFS		# NULLFS + uid and gid remapping
1051.71Sthorpejfile-system 	UNION		# union file system
1061.187Srvbfile-system	CODA		# Coda File System; also needs vcoda (below)
1071.71Sthorpej
1081.110Sthorpej# File system options
1091.82Smellonoptions 	QUOTA		# UFS quotas
1101.141Sbouyer#options 	FFS_EI		# FFS Endian Independant support
1111.82Smellonoptions 	NFSSERVER	# Network File System server
1121.81Sveego#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
1131.80Sperry				# immutable) behave as system flags.
1141.116Smikel
1151.110Sthorpej# Networking options
1161.82Smellon#options 	GATEWAY		# packet forwarding
1171.82Smellonoptions 	INET		# IP + ICMP + TCP + UDP
1181.82Smellon#options 	MROUTING	# IP multicast routing
1191.82Smellonoptions 	NS		# XNS
1201.82Smellon#options 	NSIP		# XNS tunneling over IP
1211.82Smellonoptions 	ISO,TPIP	# OSI
1221.82Smellonoptions 	EON		# OSI tunneling over IP
1231.82Smellonoptions 	CCITT,LLC,HDLC	# X.25
1241.110Sthorpejoptions 	NETATALK	# AppleTalk networking protocols
1251.110Sthorpej#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1261.110Sthorpej#options 	PPP_DEFLATE	# Deflate compression support for PPP
1271.110Sthorpej#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1281.82Smellon#options 	PFIL_HOOKS	# pfil(9) packet filter hooks
1291.133Stron#options 	IPFILTER_LOG	# ipmon(8) log support
1301.1Smycroft
1311.116Smikel# Compatibility with 4.2BSD implementation of TCP/IP.  Not recommended.
1321.110Sthorpej#options 	TCP_COMPAT_42
1331.1Smycroft
1341.112Sperry# These options enable verbose messages for several subsystems.
1351.112Sperry# Warning, these may compile large string tables into the kernel!
1361.112Sperryoptions 	EISAVERBOSE	# verbose EISA device autoconfig messages
1371.112Sperryoptions 	PCIVERBOSE	# verbose PCI device autoconfig messages
1381.110Sthorpej#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
1391.112Sperryoptions 	SCSIVERBOSE	# human readable SCSI error messages
1401.162Saugustssoptions 	USBVERBOSE	# verbose USB device autoconfig messages
1411.128Sdrochner
1421.128Sdrochneroptions 	NFS_BOOT_BOOTP,NFS_BOOT_BOOTPARAM
1431.110Sthorpej
1441.221Sdrochner#
1451.217Sdrochner# wscons options
1461.221Sdrochner#
1471.221Sdrochner# builtin terminal emulations
1481.217Sdrochner#options 	WSEMUL_SUN		# sun terminal emulation
1491.217Sdrochneroptions 	WSEMUL_VT100		# VT100 / VT220 emulation
1501.217Sdrochner# different kernel output - see dev/wscons/wsdisplayvar.h
1511.217Sdrochneroptions 	WS_KERNEL_FG=WSCOL_GREEN
1521.230Sdrochner#options 	WS_KERNEL_BG=WSCOL_BLACK
1531.221Sdrochner# compatibility to other console drivers
1541.217Sdrochneroptions 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
1551.217Sdrochneroptions 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
1561.217Sdrochneroptions 	WSDISPLAY_COMPAT_USL		# VT handling
1571.218Scjsoptions 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
1581.217Sdrochner# see dev/pckbc/wskbdmap_mfii.c for implemented layouts
1591.217Sdrochner#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
1601.221Sdrochner# allocate a number of virtual screens at autoconfiguration time
1611.221Sdrochner#options 	WSDISPLAY_DEFAULTSCREENS=4
1621.217Sdrochner
1631.110Sthorpej# Kernel root file system and dump configuration.
1641.110Sthorpejconfig		netbsd	root on ? type ?
1651.110Sthorpej#config		netbsd	root on sd0a type ffs
1661.110Sthorpej#config		netbsd	root on ? type nfs
1671.110Sthorpej
1681.110Sthorpej#
1691.110Sthorpej# Device configuration
1701.110Sthorpej#
1711.63Sthorpej
1721.31Scgdmainbus0 at root
1731.31Scgd
1741.110Sthorpej#apm0	at mainbus0			# Advanced power management
1751.1Smycroft
1761.112Sperry
1771.112Sperry# Basic Bus Support
1781.112Sperry
1791.110Sthorpej# PCI bus support
1801.110Sthorpejpci*	at mainbus? bus ?
1811.110Sthorpejpci*	at pchb? bus ?
1821.30Scgdpci*	at ppb? bus ?
1831.110Sthorpej
1841.112Sperry# PCI bridges
1851.63Sthorpejpchb*	at pci? dev ? function ?	# PCI-Host bridges
1861.135Sthorpejpceb*	at pci? dev ? function ?	# PCI-EISA bridges
1871.63Sthorpejpcib*	at pci? dev ? function ?	# PCI-ISA bridges
1881.110Sthorpejppb*	at pci? dev ? function ?	# PCI-PCI bridges
1891.160Scgd# XXX 'puc's aren't really bridges, but there's no better place for them here
1901.160Scgdpuc*	at pci? dev ? function ?	# PCI "universal" comm. cards
1911.110Sthorpej
1921.110Sthorpej# EISA bus support
1931.110Sthorpejeisa*	at mainbus?
1941.135Sthorpejeisa*	at pceb?
1951.110Sthorpej
1961.110Sthorpej# ISA bus support
1971.110Sthorpejisa*	at mainbus?
1981.135Sthorpejisa*	at pceb?
1991.110Sthorpejisa*	at pcib?
2001.63Sthorpej
2011.112Sperry# PCMCIA bus support
2021.112Sperrypcmcia*	at pcic? controller ? socket ?
2031.223Sbadpcmcia*	at tcic? controller ? socket ?
2041.112Sperry
2051.112Sperry# ISA PCMCIA controllers
2061.112Sperrypcic0	at isa? port 0x3e0 iomem 0xd0000 iosiz 0x4000
2071.112Sperrypcic1	at isa? port 0x3e2 iomem 0xd4000 iosiz 0x4000
2081.223Sbadtcic0	at isa? port 0x240 iomem 0xd0000 iosiz 0x4000
2091.211Snathanw
2101.211Snathanw# PCI PCMCIA controllers
2111.211Snathanwpcic0	at pci? dev? function ?
2121.112Sperry
2131.112Sperry# ISA Plug-and-Play bus support
2141.112Sperryisapnp0	at isa?
2151.112Sperry
2161.156Ssommerfe# ISA Plug-and-Play PCMCIA controllers
2171.156Ssommerfepcic*	at isapnp?
2181.112Sperry
2191.112Sperry# Coprocessor Support
2201.112Sperry
2211.112Sperry# Math Coprocessor support
2221.112Sperrynpx0	at isa? port 0xf0 irq 13	# x86 math coprocessor
2231.112Sperry
2241.112Sperry
2251.112Sperry# Console Devices
2261.112Sperry
2271.112Sperry# ISA console.  You can only configure one of these!
2281.217Sdrochner#pc0	at isa? port 0x60 irq 1		# pccons generic PC console driver
2291.112Sperry#vt0	at isa? port 0x60 irq 1		# PCVT console driver
2301.165Sbouyer
2311.165Sbouyer# Keyboard layout configuration for pccons
2321.167Sbouyer#options 	FRENCH_KBD
2331.166Sbouyer#options 	FINNISH_KBD
2341.167Sbouyer#options 	GERMAN_KBD
2351.168Sperry#options 	NORWEGIAN_KBD
2361.110Sthorpej
2371.217Sdrochner# wscons
2381.238Stronpckbc0		at isa?			# pc keyboard controller
2391.238Stronpckbd*		at pckbc?		# PC keyboard
2401.217Sdrochner# "opms" should not be enabled together with "pms" or "pmsi"
2411.217Sdrochner#pms*		at pckbc?		# PS/2 mouse for wsmouse
2421.217Sdrochner#pmsi*		at pckbc?	# PS/2 "Intelli"mouse for wsmouse
2431.217Sdrochneropms*		at pckbc?		# backwards compatible PS/2 mouse
2441.217Sdrochnervga0		at isa?
2451.217Sdrochnervga*		at pci?
2461.217Sdrochnerpcdisplay0	at isa?			# CGA, MDA, EGA, HGA
2471.217Sdrochnerwsdisplay*	at vga? console ?
2481.217Sdrochnerwsdisplay*	at pcdisplay? console ?
2491.238Stronwskbd* 		at pckbd? console ?
2501.217Sdrochner#wsmouse*	at pms?
2511.217Sdrochner#wsmouse*	at pmsi?
2521.217Sdrochner
2531.146Sdrochnerpcppi0	at isa?
2541.146Sdrochnersysbeep0	at pcppi?
2551.110Sthorpej
2561.112Sperry# Serial Devices
2571.63Sthorpej
2581.112Sperry# PCI serial interfaces
2591.160Scgdcom*	at puc? port ?			# 16x450s on "universal" comm boards
2601.112Sperrycy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
2611.30Scgd
2621.112Sperry# ISA Plug-and-Play serial interfaces
2631.112Sperrycom*	at isapnp?			# Modems and serial boards
2641.1Smycroft
2651.112Sperry# PCMCIA serial interfaces
2661.112Sperrycom*	at pcmcia? function ?		# Modems and serial cards
2671.188Sthorpej
2681.188Sthorpejpcmcom*	at pcmcia? function ?		# PCMCIA multi-port serial cards
2691.188Sthorpejcom*	at pcmcom? slave ?		# ...and the slave devices
2701.1Smycroft
2711.110Sthorpej# ISA serial interfaces
2721.89Sperry#options 	COM_HAYESP		# adds Hayes ESP serial board support
2731.112Sperrycom0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
2741.2Smycroftcom1	at isa? port 0x2f8 irq 3
2751.2Smycroftcom2	at isa? port 0x3e8 irq 5
2761.2Smycroft#com3	at isa? port 0x2e8 irq 9
2771.8Smycroft#ast0	at isa? port 0x1a0 irq 5	# AST 4-port serial cards
2781.34Scgd#com*	at ast? slave ?
2791.8Smycroft#boca0	at isa? port 0x100 irq 5	# BOCA 8-port serial cards
2801.8Smycroft#com*	at boca? slave ?
2811.210Schristos#tcom0	at isa? port 0x100 irq 7	# TC-800 8-port serial cards
2821.210Schristos#com*	at tcom? slave ?
2831.1Smycroft#rtfps0	at isa? port 0x1230 irq 10	# RT 4-port serial cards
2841.1Smycroft#com*	at rtfps? slave ?
2851.58Schristos#cy0	at isa? iomem 0xd4000 irq 12	# Cyclades serial cards
2861.88Smikel
2871.1Smycroft
2881.112Sperry# Parallel Printer Interfaces
2891.160Scgd
2901.160Scgd# PCI parallel printer interfaces
2911.160Scgdlpt*	at puc? port ?			# || ports on "universal" comm boards
2921.110Sthorpej
2931.112Sperry# ISA parallel printer interfaces
2941.110Sthorpejlpt0	at isa? port 0x378 irq 7	# standard PC parallel ports
2951.110Sthorpejlpt1	at isa? port 0x278
2961.110Sthorpejlpt2	at isa? port 0x3bc
2971.1Smycroft
2981.40Sperry
2991.112Sperry# SCSI Controllers and Devices
3001.68Schristos
3011.112Sperry# PCI SCSI controllers
3021.186Sdanteadv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
3031.186Sdanteadw*	at pci? dev ? function ?	# AdvanSys 9xxUW SCSI
3041.112Sperryahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
3051.112Sperrybha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
3061.112Sperryisp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
3071.112Sperryncr*	at pci? dev ? function ?	# NCR 53c8xx SCSI
3081.212Sthorpejpcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI
3091.110Sthorpej
3101.112Sperry# EISA SCSI controllers
3111.112Sperryahb*	at eisa? slot ?			# Adaptec 174[02] SCSI
3121.112Sperryahc*	at eisa? slot ?			# Adaptec 274x, aic7770 SCSI
3131.112Sperrybha*	at eisa? slot ?			# BusLogic 7xx SCSI
3141.112Sperryuha*	at eisa? slot ?			# UltraStor 24f SCSI
3151.105Sthorpej
3161.112Sperry# PCMCIA SCSI controllers
3171.110Sthorpejaic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI
3181.145Senami
3191.145Senami# ISA Plug-and-Play SCSI controllers
3201.205Schristosaha*	at isapnp? 			# Adaptec AHA-154[02
3211.145Senamiaic*	at isapnp?			# Adaptec AHA-1520B
3221.110Sthorpej
3231.112Sperry# ISA SCSI controllers
3241.236Sdanteadv0	at isa? port ? irq ? drq ?	# AdvanSys APB-514[02]
3251.112Sperryaha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI
3261.112Sperryaha1	at isa? port 0x334 irq ? drq ?
3271.112Sperryahc0	at isa? port ? irq ?		# Adaptec 284x SCSI
3281.112Sperryaic0	at isa? port 0x340 irq 11	# Adaptec 152[02] SCSI
3291.116Smikelbha0	at isa? port 0x330 irq ? drq ?	# BusLogic [457]4X SCSI
3301.112Sperrybha1	at isa? port 0x334 irq ? drq ?
3311.196Schristosnca0	at isa? port 0x360 irq 15	# Port-mapped NCR 53C80 contoller
3321.196Schristosnca1	at isa? iomem 0xd8000 irq 5	# Memory-mapped controller (T128, etc.)
3331.112Sperrysea0	at isa? iomem 0xc8000 irq 5	# Seagate/Future Domain SCSI
3341.112Sperryuha0	at isa? port 0x330 irq ? drq ?	# UltraStor [13]4f SCSI
3351.129Sdrochneruha1	at isa? port 0x340 irq ? drq ?
3361.112Sperrywds0	at isa? port 0x350 irq 15 drq 6	# WD7000 and TMC-7000 controllers
3371.112Sperrywds1	at isa? port 0x358 irq 11 drq 5
3381.110Sthorpej
3391.110Sthorpej# SCSI bus support
3401.179Sdantescsibus* at adv?
3411.186Sdantescsibus* at adw?
3421.110Sthorpejscsibus* at aha?
3431.110Sthorpejscsibus* at ahb?
3441.110Sthorpejscsibus* at ahc?
3451.110Sthorpejscsibus* at aic?
3461.110Sthorpejscsibus* at bha?
3471.110Sthorpejscsibus* at isp?
3481.196Schristosscsibus* at nca?
3491.110Sthorpejscsibus* at ncr?
3501.212Sthorpejscsibus* at pcscp?
3511.110Sthorpejscsibus* at sea?
3521.110Sthorpejscsibus* at uha?
3531.110Sthorpejscsibus* at wds?
3541.110Sthorpej
3551.110Sthorpej# SCSI devices
3561.110Sthorpejsd*	at scsibus? target ? lun ?	# SCSI disk drives
3571.110Sthorpejst*	at scsibus? target ? lun ?	# SCSI tape drives
3581.110Sthorpejcd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
3591.110Sthorpejch*	at scsibus? target ? lun ?	# SCSI autochangers
3601.110Sthorpejss*	at scsibus? target ? lun ?	# SCSI scanners
3611.110Sthorpejuk*	at scsibus? target ? lun ?	# SCSI unknown
3621.110Sthorpej
3631.112Sperry
3641.220Sabs# IDE and related devices
3651.228Skleink# PCI IDE controllers - see pciide(4) for supported hardware.
3661.194Sbouyer# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
3671.194Sbouyer# how to set up DMA modes for this chip. This may work, or may cause
3681.194Sbouyer# a machine hang with some controllers.
3691.202Sbouyerpciide* at pci ? dev ? function ? flags 0x0000
3701.132Smycroft
3711.132Smycroft# ISA Plug-and-Play IDE controllers
3721.192Sbouyerwdc*	at isapnp? 
3731.131Smycroft
3741.131Smycroft# PCMCIA IDE controllers
3751.190Senamiwdc*	at pcmcia? function ?
3761.112Sperry
3771.189Sbouyer# ISA ST506, ESDI, and IDE controllers
3781.235Sbouyer# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
3791.235Sbouyer# fall back to 16bits I/O if 32bits I/O are not functionnal).
3801.235Sbouyer# Some controllers pass the initial 32bit test, but will fail later.
3811.235Sbouyerwdc0	at isa? port 0x1f0 irq 14 flags 0x00
3821.235Sbouyerwdc1	at isa? port 0x170 irq 15 flags 0x00
3831.112Sperry
3841.220Sabs# IDE drives
3851.220Sabs# Flags are used only with controllers that support DMA operations
3861.206Sbouyer# and mode settings (e.g. some pciide controllers)
3871.220Sabs# The lowest order four bits (rightmost digit) of the flags define the PIO
3881.220Sabs# mode to use, the next set of four bits the DMA mode and the third set the
3891.220Sabs# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
3901.220Sabs# to use, and the last bit must be 1 for this setting to be used.
3911.220Sabs# For DMA and UDMA, 0xf (1111) means 'disable'.
3921.220Sabs# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
3931.220Sabs# (0xc=1100, 0xa=1010, 0xf=1111)
3941.220Sabs# 0x0000 means "use whatever the drive claims to support".
3951.206Sbouyerwd*	at wdc? channel ? drive ? flags 0x0000
3961.206Sbouyerwd*	at pciide? channel ? drive ? flags 0x0000
3971.112Sperry
3981.110Sthorpej# ATAPI bus support
3991.189Sbouyeratapibus* at wdc? channel ?
4001.202Sbouyeratapibus* at pciide? channel ?
4011.110Sthorpej
4021.110Sthorpej# ATAPI devices
4031.206Sbouyer# flags have the same meaning as for IDE drives.
4041.206Sbouyercd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
4051.206Sbouyersd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
4061.206Sbouyeruk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
4071.110Sthorpej
4081.112Sperry
4091.112Sperry# Miscellaneous mass storage devices
4101.112Sperry
4111.112Sperry# ISA floppy
4121.112Sperryfdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
4131.112Sperry#fdc1	at isa? port 0x370 irq ? drq ?
4141.112Sperryfd*	at fdc? drive ?			# the drives themselves
4151.112Sperry# some machines need you to do this instead of fd*
4161.112Sperry#fd0	at fdc0 drive 0
4171.112Sperry
4181.112Sperry# ISA CD-ROM devices
4191.112Sperry#mcd0	at isa? port 0x300 irq 10	# Mitsumi CD-ROM drives
4201.112Sperry
4211.112Sperry# ISA tape devices
4221.157Sbouyer# note: the wt driver conflicts unpleasantly with SMC boards at the
4231.116Smikel# same I/O address. The probe reprograms their EEPROMs. Don't
4241.112Sperry# uncomment it unless you are actually using it.
4251.129Sdrochner#wt0	at isa? port 0x308 irq 5 drq 1	# Archive and Wangtek QIC tape drives
4261.112Sperry
4271.112Sperry
4281.112Sperry# Network Interfaces
4291.112Sperry
4301.112Sperry# PCI network interfaces
4311.112Sperryde*	at pci? dev ? function ?	# DEC 21x4x-based Ethernet
4321.112Sperryen*	at pci? dev ? function ?	# ENI/Adaptec ATM
4331.200Sfvdlep*	at pci? dev ? function ?	# 3Com 3c59x
4341.200Sfvdlex*	at pci? dev ? function ?	# 3Com 90x[B]
4351.150Sthorpejepic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet
4361.152Smjacobesh*	at pci? dev ? function ?	# Essential HIPPI card
4371.112Sperryfpa*	at pci? dev ? function ?	# DEC DEFPA FDDI
4381.112Sperryfxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
4391.112Sperryle*	at pci? dev ? function ?	# PCnet-PCI Ethernet
4401.112Sperryne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
4411.115Sbouyertl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
4421.213Ssakamotovr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
4431.225Sexplorerlmc*	at pci? dev ? function ?	# Lan Media Corp SSI/HSSI/DS3
4441.112Sperry
4451.112Sperry# EISA network interfaces
4461.112Sperryep*	at eisa? slot ?			# 3Com 3c579 Ethernet
4471.112Sperryfea*	at eisa? slot ?			# DEC DEFEA FDDI
4481.112Sperry
4491.112Sperry# ISA Plug-and-Play network interfaces
4501.112Sperryep*	at isapnp?			# 3Com 3c509 Ethernet
4511.112Sperryne*	at isapnp?			# NE2000-compatible Ethernet
4521.222Sbadtr*	at isapnp?			# IBM/3COM TROPIC Token-Ring
4531.112Sperry
4541.112Sperry# PCMCIA network interfaces
4551.112Sperryep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
4561.144Senamimbe*	at pcmcia? function ?		# MB8696x based Ethernet
4571.112Sperryne*	at pcmcia? function ?		# NE2000-compatible Ethernet
4581.112Sperrysm*	at pcmcia? function ?		# Megahertz Ethernet
4591.112Sperry
4601.112Sperry# ISA network interfaces
4611.143Senamiate0	at isa? port 0x2a0 irq ?		# AT1700
4621.164Sthorpejcs0	at isa? port 0x300 iomem ? irq ? drq ?	# CS8900 Ethernet
4631.117Sthorpejec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
4641.120Sthorpejeg0	at isa? port 0x280 irq 9		# 3C505 ethernet cards
4651.112Sperryel0	at isa? port 0x300 irq 9		# 3C501 ethernet cards
4661.112Sperryep0	at isa? port ? irq ?			# 3C509 ethernet cards
4671.140Spkef0	at isa? port 0x360 iomem 0xd0000 irq 7	# 3C507
4681.140Spkai0	at isa? port 0x360 iomem 0xd0000 irq 7	# StarLAN
4691.143Senamifmv0	at isa? port 0x2a0 irq ?		# FMV-180 series
4701.140Spkix0	at isa? port 0x300 irq 10		# EtherExpress/16
4711.121Sdrochneriy0	at isa? port 0x360 irq ?		# EtherExpress PRO 10 ISA
4721.123Sthorpejlc0	at isa? port 0x320 iomem ? irq ?	# DEC EtherWORKS III (LEMAC)
4731.146Sdrochner#depca0	at isa? port 0x300 iomem 0xc8000 iosiz 0x8000 irq 5	# DEPCA
4741.146Sdrochner#le*	at depca?
4751.147Sdrochnernele0	at isa? port 0x320 irq 9 drq 7		# NE2100
4761.146Sdrochnerle*	at nele?
4771.146Sdrochnerbicc0	at isa? port 0x320 irq 10 drq 7		# BICC IsoLan
4781.146Sdrochnerle*	at bicc?
4791.112Sperryne0	at isa? port 0x280 irq 9		# NE[12]000 ethernet cards
4801.112Sperryne1	at isa? port 0x300 irq 10
4811.119Sthorpejsm0	at isa? port 0x300 irq 10		# SMC91C9x Ethernet
4821.222Sbadtr0	at isa? port 0xa20 iomem 0xd8000 irq ?  # IBM TROPIC based Token-Ring
4831.222Sbadtr1	at isa? port 0xa24 iomem 0xd0000 irq ?  # IBM TROPIC based Token-Ring
4841.222Sbadtr*	at isa? port ? irq ?			# 3COM TROPIC based Token-Ring
4851.118Sthorpejwe0	at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
4861.118Sthorpejwe1	at isa? port 0x300 iomem 0xcc000 irq 10
4871.112Sperry
4881.172Sthorpej# MII/PHY support
4891.195Sthorpejexphy*	at mii? phy ?			# 3Com internal PHYs
4901.198Sthorpejicsphy*	at mii? phy ?			# Integrated Circuit Systems ICS1890
4911.172Sthorpejinphy*	at mii? phy ?			# Intel 82555 PHYs
4921.195Sthorpejlxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
4931.172Sthorpejnsphy*	at mii? phy ?			# NS83840 PHYs
4941.172Sthorpejqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
4951.199Sthorpejsqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
4961.172Sthorpejtlphy*	at mii? phy ?			# ThunderLAN PHYs
4971.201Sthorpejukphy*	at mii? phy ?			# generic unknown PHYs
4981.112Sperry
4991.162Saugustss# USB Controller and Devices
5001.162Saugustss
5011.162Saugustss# PCI USB controllers
5021.162Saugustssuhci*	at pci?				# Universal Host Controller (Intel)
5031.162Saugustssohci*	at pci?				# Open Host Controller
5041.162Saugustss
5051.162Saugustss# USB bus support
5061.162Saugustssusb*	at uhci?
5071.162Saugustssusb*	at ohci?
5081.162Saugustss
5091.162Saugustss# USB Hubs
5101.162Saugustssuhub*	at usb?
5111.207Saugustssuhub*	at uhub? port ? configuration ? interface ?
5121.162Saugustss
5131.162Saugustss# USB Mice
5141.207Saugustssums*	at uhub? port ? configuration ? interface ?
5151.163Saugustsswsmouse*	at ums?
5161.162Saugustss
5171.162Saugustss# USB Keyboards
5181.207Saugustssukbd*	at uhub? port ? configuration ? interface ?
5191.163Saugustsswskbd*	at ukbd? console ?
5201.162Saugustss
5211.162Saugustss# USB Generic HID devices
5221.207Saugustssuhid*	at uhub? port ? configuration ? interface ?
5231.162Saugustss
5241.162Saugustss# USB Printer
5251.207Saugustssulpt*	at uhub? port ? configuration ? interface ?
5261.162Saugustss
5271.162Saugustss# USB Generic driver
5281.207Saugustssugen*	at uhub? port ? configuration ? interface ?
5291.162Saugustss
5301.112Sperry# Audio Devices
5311.112Sperry
5321.148Saugustss# PCI audio devices
5331.148Saugustsseap*	at pci? dev ? function ?	# Ensoniq AudioPCI
5341.209Saugustsssv*	at pci? dev ? function ?	# S3 SonicVibes
5351.148Saugustss
5361.112Sperry# ISA Plug-and-Play audio devices
5371.173Saugustssess*	at isapnp?			# ESS Tech ES1887, ES1888, ES888 audio
5381.112Sperryguspnp*	at isapnp?			# Gravis Ultra Sound PnP audio
5391.112Sperrysb*	at isapnp?			# SoundBlaster-compatible audio
5401.169Saugustsswss*	at isapnp?			# Windows Sound System
5411.149Saugustssym*	at isapnp?			# Yamaha OPL3-SA3 audio
5421.112Sperry
5431.112Sperry# ISA audio devices
5441.232Sdrochner# the "aria" probe might give false hits
5451.232Sdrochner#aria0	at isa? port 0x290 irq 10 		# Aria
5461.237Saugustss#ess0	at isa? port 0x220 irq 5 drq 1 drq2 5	# ESS 18XX
5471.112Sperrygus0	at isa? port 0x220 irq 7 drq 1 drq2 6	# Gravis Ultra Sound
5481.112Sperrypas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum
5491.112Sperrypss0	at isa? port 0x220 irq 7 drq 6  	# Personal Sound System
5501.112Sperrysp0	at pss0 port 0x530 irq 10 drq 0		# 	sound port driver
5511.161Sperrysb0	at isa? port 0x220 irq 5 drq 1 drq2 5	# SoundBlaster
5521.112Sperrywss0	at isa? port 0x530 irq 10 drq 0	drq2 1	# Windows Sound System
5531.112Sperry
5541.176Saugustss# OPL[23] FM syntheziers
5551.178Saugustss#opl0	at isa? port 0x388	# use only if not attached to sound card
5561.178Saugustssopl*	at ess?
5571.176Saugustssopl*	at sb?
5581.209Saugustssopl*	at sv?
5591.176Saugustss
5601.112Sperry# Audio support
5611.233Sdrochner#audio*	at aria?
5621.155Senamiaudio*	at eap?
5631.176Saugustssaudio*	at ess?
5641.112Sperryaudio*	at gus?
5651.112Sperryaudio*	at guspnp?
5661.112Sperryaudio*	at pas?
5671.112Sperryaudio*	at sb?
5681.112Sperryaudio*	at sp?
5691.209Saugustssaudio*	at sv?
5701.112Sperryaudio*	at wss?
5711.149Saugustssaudio*	at ym?
5721.112Sperry
5731.170Saugustss# MIDI support
5741.173Saugustssmidi*	at pcppi?		# MIDI interface to the PC speaker
5751.173Saugustssmidi*	at sb?			# SB MPU401 port
5761.176Saugustssmidi*	at opl?			# OPL FM synth
5771.170Saugustss
5781.112Sperry# The spkr driver provides a simple tone interface to the built in speaker.
5791.146Sdrochner#spkr0	at pcppi?		# PC speaker
5801.112Sperry
5811.112Sperry
5821.112Sperry# Mice
5831.112Sperry
5841.112Sperry# ISA busmice
5851.217Sdrochner#lms0	at isa? port 0x23c irq 5	# Logitech bus mouse
5861.217Sdrochner#lms1	at isa? port 0x238 irq 5
5871.217Sdrochner#mms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
5881.217Sdrochner#mms1	at isa? port 0x238 irq 5
5891.217Sdrochner#wsmouse*	at lms?
5901.217Sdrochner#wsmouse*	at mms?
5911.217Sdrochner# backwards compatible versions
5921.215Sdrochnerolms0	at isa? port 0x23c irq 5	# Logitech bus mouse
5931.215Sdrochnerolms1	at isa? port 0x238 irq 5
5941.215Sdrochneromms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
5951.215Sdrochneromms1	at isa? port 0x238 irq 5
5961.217Sdrochner#opms0	at pc? irq 12		# PS/2 auxiliary port mouse
5971.215Sdrochner#opms0	at vt? irq 12		# PS/2 auxiliary port mouse
5981.112Sperry
5991.112Sperry
6001.112Sperry# Joysticks
6011.112Sperry
6021.112Sperry# ISA Plug-and-Play joysticks
6031.112Sperryjoy*	at isapnp?			# Game ports (usually on audio cards)
6041.112Sperry
6051.112Sperry# ISA joysticks. Probe is a little strange; add only if you have one.
6061.112Sperry#joy0	at isa? port 0x201
6071.112Sperry
6081.112Sperry
6091.112Sperry# Miscellaneous Devices
6101.112Sperry
6111.112Sperry# Planetconnect Satellite receiver driver.
6121.112Sperry#satlink0 at isa? port 0x300 drq 1
6131.112Sperry
6141.112Sperry
6151.110Sthorpej# Pull in optional local configuration
6161.57Smycroftinclude	"arch/i386/conf/GENERIC.local"
6171.1Smycroft
6181.112Sperry
6191.112Sperry# Pseudo-Devices
6201.112Sperry
6211.112Sperry# disk/mass storage pseudo-devices
6221.112Sperrypseudo-device	ccd		4	# concatenated/striped disk devices
6231.204Soster#pseudo-device	raid		4	# RAIDframe disk driver
6241.112Sperrypseudo-device	md		1	# memory disk device (ramdisk)
6251.112Sperrypseudo-device	vnd		4	# disk-like interface to files
6261.112Sperry
6271.112Sperry# network pseudo-devices
6281.110Sthorpejpseudo-device	bpfilter	8	# Berkeley packet filter
6291.110Sthorpejpseudo-device	ipfilter		# IP filter (firewall) and NAT
6301.110Sthorpejpseudo-device	loop			# network loopback
6311.110Sthorpejpseudo-device	ppp		2	# Point-to-Point Protocol
6321.112Sperrypseudo-device	sl		2	# Serial Line IP
6331.112Sperrypseudo-device	strip		2	# Starmode Radio IP (Metricom)
6341.112Sperrypseudo-device	tun		2	# network tunneling over tty
6351.183Shwrpseudo-device	gre		2	# generic L3 over IP tunnel
6361.214Stronpseudo-device	ipip		2	# IP Encapsulation within IP (RFC 2003)
6371.112Sperry
6381.112Sperry# miscellaneous pseudo-devices
6391.110Sthorpejpseudo-device	pty		64	# pseudo-terminals
6401.113Sexplorerpseudo-device	tb		1	# tablet line discipline
6411.170Saugustsspseudo-device	sequencer	1	# MIDI sequencer
6421.227Sexplorer# rnd works; RND_COM does not on port i386 yet.
6431.227Sexplorerpseudo-device	rnd			# /dev/random and in-kernel generator
6441.114Sexplorer#options 	RND_COM			# use "com" randomness as well (BROKEN)
6451.181Srvb
6461.182Srvb# a pseudo device needed for Coda	# also needs CODA (above)
6471.187Srvbpseudo-device	vcoda		4	# coda minicache <-> venus comm.
648