GENERIC revision 1.235
11.235Sbouyer#	$NetBSD: GENERIC,v 1.235 1999/05/19 14:41:54 bouyer 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.217Sdrochnerpckbc0	at isa?			# pc keyboard controller
2391.217Sdrochnerpckbd*	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.217Sdrochnerwskbd*	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.112Sperryaha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI
3251.112Sperryaha1	at isa? port 0x334 irq ? drq ?
3261.112Sperryahc0	at isa? port ? irq ?		# Adaptec 284x SCSI
3271.112Sperryaic0	at isa? port 0x340 irq 11	# Adaptec 152[02] SCSI
3281.116Smikelbha0	at isa? port 0x330 irq ? drq ?	# BusLogic [457]4X SCSI
3291.112Sperrybha1	at isa? port 0x334 irq ? drq ?
3301.196Schristosnca0	at isa? port 0x360 irq 15	# Port-mapped NCR 53C80 contoller
3311.196Schristosnca1	at isa? iomem 0xd8000 irq 5	# Memory-mapped controller (T128, etc.)
3321.112Sperrysea0	at isa? iomem 0xc8000 irq 5	# Seagate/Future Domain SCSI
3331.112Sperryuha0	at isa? port 0x330 irq ? drq ?	# UltraStor [13]4f SCSI
3341.129Sdrochneruha1	at isa? port 0x340 irq ? drq ?
3351.112Sperrywds0	at isa? port 0x350 irq 15 drq 6	# WD7000 and TMC-7000 controllers
3361.112Sperrywds1	at isa? port 0x358 irq 11 drq 5
3371.110Sthorpej
3381.110Sthorpej# SCSI bus support
3391.179Sdantescsibus* at adv?
3401.186Sdantescsibus* at adw?
3411.110Sthorpejscsibus* at aha?
3421.110Sthorpejscsibus* at ahb?
3431.110Sthorpejscsibus* at ahc?
3441.110Sthorpejscsibus* at aic?
3451.110Sthorpejscsibus* at bha?
3461.110Sthorpejscsibus* at isp?
3471.196Schristosscsibus* at nca?
3481.110Sthorpejscsibus* at ncr?
3491.212Sthorpejscsibus* at pcscp?
3501.110Sthorpejscsibus* at sea?
3511.110Sthorpejscsibus* at uha?
3521.110Sthorpejscsibus* at wds?
3531.110Sthorpej
3541.110Sthorpej# SCSI devices
3551.110Sthorpejsd*	at scsibus? target ? lun ?	# SCSI disk drives
3561.110Sthorpejst*	at scsibus? target ? lun ?	# SCSI tape drives
3571.110Sthorpejcd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
3581.110Sthorpejch*	at scsibus? target ? lun ?	# SCSI autochangers
3591.110Sthorpejss*	at scsibus? target ? lun ?	# SCSI scanners
3601.110Sthorpejuk*	at scsibus? target ? lun ?	# SCSI unknown
3611.110Sthorpej
3621.112Sperry
3631.220Sabs# IDE and related devices
3641.228Skleink# PCI IDE controllers - see pciide(4) for supported hardware.
3651.194Sbouyer# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
3661.194Sbouyer# how to set up DMA modes for this chip. This may work, or may cause
3671.194Sbouyer# a machine hang with some controllers.
3681.202Sbouyerpciide* at pci ? dev ? function ? flags 0x0000
3691.132Smycroft
3701.132Smycroft# ISA Plug-and-Play IDE controllers
3711.192Sbouyerwdc*	at isapnp? 
3721.131Smycroft
3731.131Smycroft# PCMCIA IDE controllers
3741.190Senamiwdc*	at pcmcia? function ?
3751.112Sperry
3761.189Sbouyer# ISA ST506, ESDI, and IDE controllers
3771.235Sbouyer# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
3781.235Sbouyer# fall back to 16bits I/O if 32bits I/O are not functionnal).
3791.235Sbouyer# Some controllers pass the initial 32bit test, but will fail later.
3801.235Sbouyerwdc0	at isa? port 0x1f0 irq 14 flags 0x00
3811.235Sbouyerwdc1	at isa? port 0x170 irq 15 flags 0x00
3821.112Sperry
3831.220Sabs# IDE drives
3841.220Sabs# Flags are used only with controllers that support DMA operations
3851.206Sbouyer# and mode settings (e.g. some pciide controllers)
3861.220Sabs# The lowest order four bits (rightmost digit) of the flags define the PIO
3871.220Sabs# mode to use, the next set of four bits the DMA mode and the third set the
3881.220Sabs# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
3891.220Sabs# to use, and the last bit must be 1 for this setting to be used.
3901.220Sabs# For DMA and UDMA, 0xf (1111) means 'disable'.
3911.220Sabs# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
3921.220Sabs# (0xc=1100, 0xa=1010, 0xf=1111)
3931.220Sabs# 0x0000 means "use whatever the drive claims to support".
3941.206Sbouyerwd*	at wdc? channel ? drive ? flags 0x0000
3951.206Sbouyerwd*	at pciide? channel ? drive ? flags 0x0000
3961.112Sperry
3971.110Sthorpej# ATAPI bus support
3981.189Sbouyeratapibus* at wdc? channel ?
3991.202Sbouyeratapibus* at pciide? channel ?
4001.110Sthorpej
4011.110Sthorpej# ATAPI devices
4021.206Sbouyer# flags have the same meaning as for IDE drives.
4031.206Sbouyercd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
4041.206Sbouyersd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
4051.206Sbouyeruk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
4061.110Sthorpej
4071.112Sperry
4081.112Sperry# Miscellaneous mass storage devices
4091.112Sperry
4101.112Sperry# ISA floppy
4111.112Sperryfdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
4121.112Sperry#fdc1	at isa? port 0x370 irq ? drq ?
4131.112Sperryfd*	at fdc? drive ?			# the drives themselves
4141.112Sperry# some machines need you to do this instead of fd*
4151.112Sperry#fd0	at fdc0 drive 0
4161.112Sperry
4171.112Sperry# ISA CD-ROM devices
4181.112Sperry#mcd0	at isa? port 0x300 irq 10	# Mitsumi CD-ROM drives
4191.112Sperry
4201.112Sperry# ISA tape devices
4211.157Sbouyer# note: the wt driver conflicts unpleasantly with SMC boards at the
4221.116Smikel# same I/O address. The probe reprograms their EEPROMs. Don't
4231.112Sperry# uncomment it unless you are actually using it.
4241.129Sdrochner#wt0	at isa? port 0x308 irq 5 drq 1	# Archive and Wangtek QIC tape drives
4251.112Sperry
4261.112Sperry
4271.112Sperry# Network Interfaces
4281.112Sperry
4291.112Sperry# PCI network interfaces
4301.112Sperryde*	at pci? dev ? function ?	# DEC 21x4x-based Ethernet
4311.112Sperryen*	at pci? dev ? function ?	# ENI/Adaptec ATM
4321.200Sfvdlep*	at pci? dev ? function ?	# 3Com 3c59x
4331.200Sfvdlex*	at pci? dev ? function ?	# 3Com 90x[B]
4341.150Sthorpejepic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet
4351.152Smjacobesh*	at pci? dev ? function ?	# Essential HIPPI card
4361.112Sperryfpa*	at pci? dev ? function ?	# DEC DEFPA FDDI
4371.112Sperryfxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
4381.112Sperryle*	at pci? dev ? function ?	# PCnet-PCI Ethernet
4391.112Sperryne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
4401.115Sbouyertl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
4411.213Ssakamotovr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
4421.225Sexplorerlmc*	at pci? dev ? function ?	# Lan Media Corp SSI/HSSI/DS3
4431.112Sperry
4441.112Sperry# EISA network interfaces
4451.112Sperryep*	at eisa? slot ?			# 3Com 3c579 Ethernet
4461.112Sperryfea*	at eisa? slot ?			# DEC DEFEA FDDI
4471.112Sperry
4481.112Sperry# ISA Plug-and-Play network interfaces
4491.112Sperryep*	at isapnp?			# 3Com 3c509 Ethernet
4501.112Sperryne*	at isapnp?			# NE2000-compatible Ethernet
4511.222Sbadtr*	at isapnp?			# IBM/3COM TROPIC Token-Ring
4521.112Sperry
4531.112Sperry# PCMCIA network interfaces
4541.112Sperryep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
4551.144Senamimbe*	at pcmcia? function ?		# MB8696x based Ethernet
4561.112Sperryne*	at pcmcia? function ?		# NE2000-compatible Ethernet
4571.112Sperrysm*	at pcmcia? function ?		# Megahertz Ethernet
4581.112Sperry
4591.112Sperry# ISA network interfaces
4601.143Senamiate0	at isa? port 0x2a0 irq ?		# AT1700
4611.164Sthorpejcs0	at isa? port 0x300 iomem ? irq ? drq ?	# CS8900 Ethernet
4621.117Sthorpejec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
4631.120Sthorpejeg0	at isa? port 0x280 irq 9		# 3C505 ethernet cards
4641.112Sperryel0	at isa? port 0x300 irq 9		# 3C501 ethernet cards
4651.112Sperryep0	at isa? port ? irq ?			# 3C509 ethernet cards
4661.140Spkef0	at isa? port 0x360 iomem 0xd0000 irq 7	# 3C507
4671.140Spkai0	at isa? port 0x360 iomem 0xd0000 irq 7	# StarLAN
4681.143Senamifmv0	at isa? port 0x2a0 irq ?		# FMV-180 series
4691.140Spkix0	at isa? port 0x300 irq 10		# EtherExpress/16
4701.121Sdrochneriy0	at isa? port 0x360 irq ?		# EtherExpress PRO 10 ISA
4711.123Sthorpejlc0	at isa? port 0x320 iomem ? irq ?	# DEC EtherWORKS III (LEMAC)
4721.146Sdrochner#depca0	at isa? port 0x300 iomem 0xc8000 iosiz 0x8000 irq 5	# DEPCA
4731.146Sdrochner#le*	at depca?
4741.147Sdrochnernele0	at isa? port 0x320 irq 9 drq 7		# NE2100
4751.146Sdrochnerle*	at nele?
4761.146Sdrochnerbicc0	at isa? port 0x320 irq 10 drq 7		# BICC IsoLan
4771.146Sdrochnerle*	at bicc?
4781.112Sperryne0	at isa? port 0x280 irq 9		# NE[12]000 ethernet cards
4791.112Sperryne1	at isa? port 0x300 irq 10
4801.119Sthorpejsm0	at isa? port 0x300 irq 10		# SMC91C9x Ethernet
4811.222Sbadtr0	at isa? port 0xa20 iomem 0xd8000 irq ?  # IBM TROPIC based Token-Ring
4821.222Sbadtr1	at isa? port 0xa24 iomem 0xd0000 irq ?  # IBM TROPIC based Token-Ring
4831.222Sbadtr*	at isa? port ? irq ?			# 3COM TROPIC based Token-Ring
4841.118Sthorpejwe0	at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
4851.118Sthorpejwe1	at isa? port 0x300 iomem 0xcc000 irq 10
4861.112Sperry
4871.172Sthorpej# MII/PHY support
4881.195Sthorpejexphy*	at mii? phy ?			# 3Com internal PHYs
4891.198Sthorpejicsphy*	at mii? phy ?			# Integrated Circuit Systems ICS1890
4901.172Sthorpejinphy*	at mii? phy ?			# Intel 82555 PHYs
4911.195Sthorpejlxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
4921.172Sthorpejnsphy*	at mii? phy ?			# NS83840 PHYs
4931.172Sthorpejqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
4941.199Sthorpejsqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
4951.172Sthorpejtlphy*	at mii? phy ?			# ThunderLAN PHYs
4961.201Sthorpejukphy*	at mii? phy ?			# generic unknown PHYs
4971.112Sperry
4981.162Saugustss# USB Controller and Devices
4991.162Saugustss
5001.162Saugustss# PCI USB controllers
5011.162Saugustssuhci*	at pci?				# Universal Host Controller (Intel)
5021.162Saugustssohci*	at pci?				# Open Host Controller
5031.162Saugustss
5041.162Saugustss# USB bus support
5051.162Saugustssusb*	at uhci?
5061.162Saugustssusb*	at ohci?
5071.162Saugustss
5081.162Saugustss# USB Hubs
5091.162Saugustssuhub*	at usb?
5101.207Saugustssuhub*	at uhub? port ? configuration ? interface ?
5111.162Saugustss
5121.162Saugustss# USB Mice
5131.207Saugustssums*	at uhub? port ? configuration ? interface ?
5141.163Saugustsswsmouse*	at ums?
5151.162Saugustss
5161.162Saugustss# USB Keyboards
5171.207Saugustssukbd*	at uhub? port ? configuration ? interface ?
5181.163Saugustsswskbd*	at ukbd? console ?
5191.162Saugustss
5201.162Saugustss# USB Generic HID devices
5211.207Saugustssuhid*	at uhub? port ? configuration ? interface ?
5221.162Saugustss
5231.162Saugustss# USB Printer
5241.207Saugustssulpt*	at uhub? port ? configuration ? interface ?
5251.162Saugustss
5261.162Saugustss# USB Generic driver
5271.207Saugustssugen*	at uhub? port ? configuration ? interface ?
5281.162Saugustss
5291.112Sperry# Audio Devices
5301.112Sperry
5311.148Saugustss# PCI audio devices
5321.148Saugustsseap*	at pci? dev ? function ?	# Ensoniq AudioPCI
5331.209Saugustsssv*	at pci? dev ? function ?	# S3 SonicVibes
5341.148Saugustss
5351.112Sperry# ISA Plug-and-Play audio devices
5361.173Saugustssess*	at isapnp?			# ESS Tech ES1887, ES1888, ES888 audio
5371.112Sperryguspnp*	at isapnp?			# Gravis Ultra Sound PnP audio
5381.112Sperrysb*	at isapnp?			# SoundBlaster-compatible audio
5391.169Saugustsswss*	at isapnp?			# Windows Sound System
5401.149Saugustssym*	at isapnp?			# Yamaha OPL3-SA3 audio
5411.112Sperry
5421.112Sperry# ISA audio devices
5431.232Sdrochner# the "aria" probe might give false hits
5441.232Sdrochner#aria0	at isa? port 0x290 irq 10 		# Aria
5451.112Sperrygus0	at isa? port 0x220 irq 7 drq 1 drq2 6	# Gravis Ultra Sound
5461.112Sperrypas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum
5471.112Sperrypss0	at isa? port 0x220 irq 7 drq 6  	# Personal Sound System
5481.112Sperrysp0	at pss0 port 0x530 irq 10 drq 0		# 	sound port driver
5491.161Sperrysb0	at isa? port 0x220 irq 5 drq 1 drq2 5	# SoundBlaster
5501.112Sperrywss0	at isa? port 0x530 irq 10 drq 0	drq2 1	# Windows Sound System
5511.112Sperry
5521.176Saugustss# OPL[23] FM syntheziers
5531.178Saugustss#opl0	at isa? port 0x388	# use only if not attached to sound card
5541.178Saugustssopl*	at ess?
5551.176Saugustssopl*	at sb?
5561.209Saugustssopl*	at sv?
5571.176Saugustss
5581.112Sperry# Audio support
5591.233Sdrochner#audio*	at aria?
5601.155Senamiaudio*	at eap?
5611.176Saugustssaudio*	at ess?
5621.112Sperryaudio*	at gus?
5631.112Sperryaudio*	at guspnp?
5641.112Sperryaudio*	at pas?
5651.112Sperryaudio*	at sb?
5661.112Sperryaudio*	at sp?
5671.209Saugustssaudio*	at sv?
5681.112Sperryaudio*	at wss?
5691.149Saugustssaudio*	at ym?
5701.112Sperry
5711.170Saugustss# MIDI support
5721.173Saugustssmidi*	at pcppi?		# MIDI interface to the PC speaker
5731.173Saugustssmidi*	at sb?			# SB MPU401 port
5741.176Saugustssmidi*	at opl?			# OPL FM synth
5751.170Saugustss
5761.112Sperry# The spkr driver provides a simple tone interface to the built in speaker.
5771.146Sdrochner#spkr0	at pcppi?		# PC speaker
5781.112Sperry
5791.112Sperry
5801.112Sperry# Mice
5811.112Sperry
5821.112Sperry# ISA busmice
5831.217Sdrochner#lms0	at isa? port 0x23c irq 5	# Logitech bus mouse
5841.217Sdrochner#lms1	at isa? port 0x238 irq 5
5851.217Sdrochner#mms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
5861.217Sdrochner#mms1	at isa? port 0x238 irq 5
5871.217Sdrochner#wsmouse*	at lms?
5881.217Sdrochner#wsmouse*	at mms?
5891.217Sdrochner# backwards compatible versions
5901.215Sdrochnerolms0	at isa? port 0x23c irq 5	# Logitech bus mouse
5911.215Sdrochnerolms1	at isa? port 0x238 irq 5
5921.215Sdrochneromms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
5931.215Sdrochneromms1	at isa? port 0x238 irq 5
5941.217Sdrochner#opms0	at pc? irq 12		# PS/2 auxiliary port mouse
5951.215Sdrochner#opms0	at vt? irq 12		# PS/2 auxiliary port mouse
5961.112Sperry
5971.112Sperry
5981.112Sperry# Joysticks
5991.112Sperry
6001.112Sperry# ISA Plug-and-Play joysticks
6011.112Sperryjoy*	at isapnp?			# Game ports (usually on audio cards)
6021.112Sperry
6031.112Sperry# ISA joysticks. Probe is a little strange; add only if you have one.
6041.112Sperry#joy0	at isa? port 0x201
6051.112Sperry
6061.112Sperry
6071.112Sperry# Miscellaneous Devices
6081.112Sperry
6091.112Sperry# Planetconnect Satellite receiver driver.
6101.112Sperry#satlink0 at isa? port 0x300 drq 1
6111.112Sperry
6121.112Sperry
6131.110Sthorpej# Pull in optional local configuration
6141.57Smycroftinclude	"arch/i386/conf/GENERIC.local"
6151.1Smycroft
6161.112Sperry
6171.112Sperry# Pseudo-Devices
6181.112Sperry
6191.112Sperry# disk/mass storage pseudo-devices
6201.112Sperrypseudo-device	ccd		4	# concatenated/striped disk devices
6211.204Soster#pseudo-device	raid		4	# RAIDframe disk driver
6221.112Sperrypseudo-device	md		1	# memory disk device (ramdisk)
6231.112Sperrypseudo-device	vnd		4	# disk-like interface to files
6241.112Sperry
6251.112Sperry# network pseudo-devices
6261.110Sthorpejpseudo-device	bpfilter	8	# Berkeley packet filter
6271.110Sthorpejpseudo-device	ipfilter		# IP filter (firewall) and NAT
6281.110Sthorpejpseudo-device	loop			# network loopback
6291.110Sthorpejpseudo-device	ppp		2	# Point-to-Point Protocol
6301.112Sperrypseudo-device	sl		2	# Serial Line IP
6311.112Sperrypseudo-device	strip		2	# Starmode Radio IP (Metricom)
6321.112Sperrypseudo-device	tun		2	# network tunneling over tty
6331.183Shwrpseudo-device	gre		2	# generic L3 over IP tunnel
6341.214Stronpseudo-device	ipip		2	# IP Encapsulation within IP (RFC 2003)
6351.112Sperry
6361.112Sperry# miscellaneous pseudo-devices
6371.110Sthorpejpseudo-device	pty		64	# pseudo-terminals
6381.113Sexplorerpseudo-device	tb		1	# tablet line discipline
6391.170Saugustsspseudo-device	sequencer	1	# MIDI sequencer
6401.227Sexplorer# rnd works; RND_COM does not on port i386 yet.
6411.227Sexplorerpseudo-device	rnd			# /dev/random and in-kernel generator
6421.114Sexplorer#options 	RND_COM			# use "com" randomness as well (BROKEN)
6431.181Srvb
6441.182Srvb# a pseudo device needed for Coda	# also needs CODA (above)
6451.187Srvbpseudo-device	vcoda		4	# coda minicache <-> venus comm.
646