GENERIC revision 1.16
11.16Stsutsui#	$NetBSD: GENERIC,v 1.16 2001/01/05 17:55:38 tsutsui Exp $
21.1Snonaka#
31.3Snonaka#	GENERIC -- everything that's currently supported
41.1Snonaka#
51.1Snonaka
61.1Snonakainclude "arch/prep/conf/std.prep"
71.1Snonaka
81.16Stsutsui#ident		"GENERIC-$Revision: 1.16 $"
91.1Snonaka
101.1Snonakamaxusers	32
111.1Snonaka
121.1Snonaka# Standard system options
131.1Snonaka
141.1Snonakaoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
151.3Snonakaoptions 	NTP		# NTP phase/frequency locked loop
161.1Snonaka
171.1Snonakaoptions 	KTRACE		# system call tracing via ktrace(1)
181.1Snonaka
191.1Snonakaoptions 	SYSVMSG		# System V-like message queues
201.1Snonakaoptions 	SYSVSEM		# System V-like semaphores
211.1Snonakaoptions 	SYSVSHM		# System V-like memory sharing
221.1Snonaka#options 	SHMMAXPGS=1024	# 1024 pages is the default
231.1Snonaka
241.3Snonakaoptions 	LKM		# loadable kernel modules
251.1Snonaka
261.1Snonaka# Diagnostic/debugging support options
271.1Snonakaoptions 	DIAGNOSTIC	# cheap kernel consistency checks
281.1Snonaka#options 	DEBUG		# expensive debugging checks/support
291.1Snonaka#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
301.1Snonakaoptions 	DDB		# in-kernel debugger
311.1Snonaka#options 	DDB_HISTORY_SIZE=100    # Enable history editing in DDB
321.1Snonaka#makeoptions	DEBUG="-g"
331.1Snonaka
341.1Snonaka# Compatibility options
351.1Snonakaoptions 	COMPAT_13	# NetBSD 1.3,
361.1Snonakaoptions 	COMPAT_14	# NetBSD 1.4,
371.1Snonakaoptions 	COMPAT_43	# and 4.3BSD
381.1Snonaka
391.1Snonaka# File systems
401.3Snonakafile-system 	FFS		# UFS
411.3Snonakafile-system	EXT2FS		# second extended file system (linux)
421.3Snonakafile-system	LFS		# log-structured file system
431.1Snonakafile-system 	MFS		# memory file system
441.1Snonakafile-system 	NFS		# Network File System client
451.3Snonakafile-system	NTFS		# Windows/NT file system (experimental)
461.3Snonakafile-system 	CD9660		# ISO 9660 + Rock Ridge file system
471.3Snonakafile-system 	MSDOSFS		# MS-DOS file system
481.3Snonakafile-system 	FDESC		# /dev/fd
491.1Snonakafile-system 	KERNFS		# /kern
501.3Snonakafile-system 	NULLFS		# loopback file system
511.3Snonakafile-system	OVERLAY		# overlay file system
521.3Snonakafile-system 	PORTAL		# portal filesystem (still experimental)
531.1Snonakafile-system 	PROCFS		# /proc
541.3Snonakafile-system 	UMAPFS		# NULLFS + uid and gid remapping
551.3Snonakafile-system 	UNION		# union file system
561.7Snonaka#file-system	CODA		# Coda File System; also needs vcoda (below)
571.1Snonaka
581.1Snonaka# File system options
591.3Snonakaoptions 	QUOTA		# UFS quotas
601.3Snonakaoptions 	FFS_EI		# FFS Endian Independant support
611.9Sfvdloptions 	SOFTDEP		# FFS soft updates support.
621.3Snonakaoptions 	NFSSERVER	# Network File System server
631.1Snonaka#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
641.1Snonaka 				# immutable) behave as system flags.
651.1Snonaka
661.1Snonaka# Networking options
671.1Snonaka#options 	GATEWAY		# packet forwarding
681.1Snonakaoptions 	INET		# IP + ICMP + TCP + UDP
691.1Snonakaoptions 	INET6		# IPv6
701.1Snonaka#options 	IPSEC		# IP security
711.1Snonaka#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
721.1Snonaka#options 	IPSEC_DEBUG	# debug for IP security
731.1Snonaka#options 	MROUTING	# IP multicast routing
741.3Snonakaoptions 	NETATALK	# AppleTalk networking protocols
751.1Snonakaoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
761.1Snonakaoptions 	PPP_DEFLATE	# Deflate compression support for PPP
771.1Snonakaoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
781.1Snonakaoptions 	PFIL_HOOKS	# pfil(9) packet filter hooks
791.1Snonakaoptions 	IPFILTER_LOG	# ipmon(8) log support
801.1Snonaka
811.1Snonaka# Compatibility with 4.2BSD implementation of TCP/IP.  Not recommended.
821.1Snonaka#options 	TCP_COMPAT_42
831.1Snonaka
841.1Snonaka# These options enable verbose messages for several subsystems.
851.1Snonaka# Warning, these may compile large string tables into the kernel!
861.7Snonakaoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
871.1Snonakaoptions 	PCIVERBOSE	# verbose PCI device autoconfig messages
881.2Scgd#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
891.14Snonakaoptions 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
901.3Snonakaoptions 	SCSIVERBOSE	# human readable SCSI error messages
911.14Snonaka#options 	USBVERBOSE	# verbose USB device autoconfig messages
921.1Snonaka
931.1Snonakaoptions 	NFS_BOOT_BOOTP
941.1Snonakaoptions 	NFS_BOOT_BOOTPARAM
951.1Snonakaoptions 	NFS_BOOT_DHCP
961.1Snonaka
971.1Snonaka#
981.1Snonaka# wscons options
991.1Snonaka#
1001.1Snonaka# builtin terminal emulations
1011.1Snonakaoptions 	WSEMUL_VT100		# VT100 / VT220 emulation
1021.1Snonaka# different kernel output - see dev/wscons/wsdisplayvar.h
1031.1Snonakaoptions 	WS_KERNEL_FG=WSCOL_GREEN
1041.1Snonaka#options 	WS_KERNEL_BG=WSCOL_BLACK
1051.1Snonaka# see dev/pckbc/wskbdmap_mfii.c for implemented layouts
1061.1Snonaka#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
1071.1Snonaka# allocate a number of virtual screens at autoconfiguration time
1081.1Snonaka#options 	WSDISPLAY_DEFAULTSCREENS=4
1091.1Snonaka# use a large software cursor that doesn't blink
1101.1Snonakaoptions 	PCDISPLAY_SOFTCURSOR
1111.1Snonaka
1121.1Snonaka# Kernel root file system and dump configuration.
1131.1Snonakaconfig	netbsd	root on ? type ?
1141.3Snonaka#config	netbsd	root on de0 type nfs
1151.3Snonaka#config	netbsd	root on le0 type nfs
1161.1Snonaka
1171.14Snonaka
1181.1Snonaka#
1191.1Snonaka# Device configuration
1201.1Snonaka#
1211.1Snonaka
1221.1Snonakamainbus0 at root
1231.1Snonakacpu0	at mainbus0
1241.1Snonaka
1251.14Snonaka
1261.1Snonaka# Basic Bus Support
1271.1Snonaka
1281.1Snonaka# PCI bus support
1291.1Snonakapci0	at mainbus0 bus ?
1301.1Snonakapci*	at pchb? bus ?
1311.3Snonakapci*	at ppb? bus ?
1321.1Snonaka
1331.1Snonaka# PCI bridges
1341.1Snonakapchb*	at pci? dev ? function ?	# PCI-Host bridges
1351.4Skleinkppb*	at pci? dev ? function ?	# PCI-PCI bridges
1361.1Snonakapcib*	at pci? dev ? function ?	# PCI-ISA bridges
1371.1Snonaka
1381.1Snonaka# ISA bus support
1391.1Snonakaisa*	at pcib?			# ISA on PCI-ISA bridge
1401.1Snonaka
1411.14Snonaka# PCMCIA bus support
1421.14Snonakapcmcia* at pcic? controller ? socket ?
1431.14Snonaka
1441.14Snonaka# ISA PCMCIA controllers
1451.14Snonakapcic0	at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000
1461.14Snonaka
1471.14Snonaka#options 	PCIC_ISA_INTR_ALLOC_MASK=0x4a00 # free irq 9,11,14
1481.14Snonaka#options 	PCIC_ISA_ALLOC_IOBASE=0x0400
1491.14Snonaka#options 	PCIC_ISA_ALLOC_IOSIZE=0x0100
1501.14Snonaka
1511.16Stsutsui# ISA Plug-and-Play bus support
1521.16Stsutsuiisapnp0	at isa?
1531.14Snonaka
1541.1Snonaka# Console Devices
1551.1Snonaka
1561.1Snonaka# ISA console.
1571.1Snonaka#pc0	at isa? port 0x60 irq 1		# generic PC console device
1581.1Snonaka
1591.1Snonaka# Keyboard layout configuration for pccons
1601.1Snonaka#options	FRENCH_KBD
1611.1Snonaka#options	FINNISH_KBD
1621.1Snonaka#options	GERMAN_KBD
1631.1Snonaka#options	NORWEGIAN_KBD
1641.1Snonaka
1651.1Snonaka# wscons
1661.1Snonakapckbc0		at isa?			# pc keyboard controller
1671.1Snonakapckbd*		at pckbc?		# PC keyboard
1681.1Snonakapms*		at pckbc?		# PS/2 mouse for wsmouse
1691.1Snonakapmsi*		at pckbc?		# PS/2 "Intelli"mouse for wsmouse
1701.1Snonakavga*		at pci?
1711.1Snonakawsdisplay*	at vga? console ?
1721.1Snonakawskbd*		at pckbd? console ?
1731.1Snonakawsmouse*	at pms? mux 0
1741.1Snonakawsmouse*	at pmsi? mux 0
1751.1Snonaka
1761.1Snonakapcppi0	at isa?				# PC prog. periph. interface
1771.1Snonakaisabeep0 at pcppi?			# "keyboard" beep
1781.1Snonaka
1791.1Snonakamcclock0 at isa? port 0x70		# mc146818 and compatible
1801.1Snonaka
1811.14Snonaka
1821.1Snonaka# Serial Devices
1831.1Snonaka
1841.1Snonaka# ISA serial interfaces
1851.1Snonakacom0	at isa? port 0x3f8 irq 4	# standard PC serial ports
1861.1Snonakacom1	at isa? port 0x2f8 irq 3
1871.1Snonaka
1881.14Snonaka# PCMCIA serial interfaces
1891.14Snonakacom*	at pcmcia? function ?		# Modems and serial cards
1901.14Snonaka
1911.14Snonakapcmcom* at pcmcia? function ?		# PCMCIA multi-port serial cards
1921.14Snonakacom*	at pcmcom? slave ?		# ...and the slave devices
1931.14Snonaka
1941.14Snonaka
1951.1Snonaka# Parallel Printer Interfaces
1961.1Snonaka
1971.1Snonaka# ISA parallel printer interfaces
1981.1Snonakalpt0	at isa? port 0x3bc irq 7	# standard PC parallel ports
1991.1Snonaka
2001.14Snonaka
2011.3Snonaka# SCSI Controllers and Devices
2021.3Snonaka
2031.3Snonaka# PCI SCSI controllers
2041.3Snonakapcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI
2051.4Skleink
2061.14Snonaka# PCMCIA SCSI controllers
2071.14Snonakaaic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI
2081.14Snonaka
2091.4Skleink# SCSI bus support
2101.14Snonakascsibus* at aic?
2111.4Skleinkscsibus* at pcscp?
2121.3Snonaka
2131.3Snonaka# SCSI devices
2141.3Snonakasd*	at scsibus? target ? lun ?	# SCSI disk drives
2151.3Snonakast*	at scsibus? target ? lun ?	# SCSI tape drives
2161.3Snonakacd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
2171.3Snonakach*	at scsibus? target ? lun ?	# SCSI autochangers
2181.3Snonakass*	at scsibus? target ? lun ?	# SCSI scanners
2191.3Snonakauk*	at scsibus? target ? lun ?	# SCSI unknown
2201.3Snonaka
2211.14Snonaka
2221.7Snonaka# IDE and related devices
2231.7Snonaka
2241.14Snonaka# PCMCIA IDE controllers
2251.14Snonakawdc*	at pcmcia? function ?
2261.14Snonaka
2271.14Snonaka# IDE drives
2281.14Snonaka# Flags are used only with controllers that support DMA operations
2291.14Snonaka# and mode settings (e.g. some pciide controllers)
2301.14Snonaka# The lowest order four bits (rightmost digit) of the flags define the PIO
2311.14Snonaka# mode to use, the next set of four bits the DMA mode and the third set the
2321.14Snonaka# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
2331.14Snonaka# to use, and the last bit must be 1 for this setting to be used.
2341.14Snonaka# For DMA and UDMA, 0xf (1111) means 'disable'.
2351.14Snonaka# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
2361.14Snonaka# (0xc=1100, 0xa=1010, 0xf=1111)
2371.14Snonaka# 0x0000 means "use whatever the drive claims to support".
2381.14Snonakawd*	at wdc? channel ? drive ? flags 0x0000
2391.14Snonaka
2401.14Snonaka# ATAPI bus support
2411.14Snonakaatapibus* at wdc? channel ?
2421.14Snonaka
2431.7Snonaka# ATAPI devices
2441.7Snonaka# flags have the same meaning as for IDE drives.
2451.14Snonakacd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
2461.14Snonakasd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
2471.14Snonakauk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
2481.14Snonaka
2491.7Snonaka
2501.1Snonaka# Network Interfaces
2511.1Snonaka
2521.1Snonaka# PCI network interfaces
2531.3Snonakade*	at pci? dev ? function ?	# DEC 21x4x-based Ethernet
2541.1Snonakaep*	at pci? dev ? function ?	# 3Com 3c59x
2551.3Snonaka#le*	at pci? dev ? function ?	# PCnet-PCI Ethernet
2561.1Snonakane*	at pci? dev ? function ?	# NE2000-compatible Ethernet
2571.3Snonakavr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
2581.1Snonaka
2591.16Stsutsui# ISA Plug-and-Play network intefaces
2601.16Stsutsuiep*	at isapnp?			# 3Com 3c509 Ethernet
2611.16Stsutsui
2621.14Snonaka# PCMCIA network interfaces
2631.14Snonakaep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
2641.14Snonakane*	at pcmcia? function ?		# NE2000-compatible Ethernet
2651.14Snonaka
2661.14Snonakamhzc*	at pcmcia? function ?		# Megahertz Ethernet/Modem combo cards
2671.14Snonakacom*	at mhzc?
2681.14Snonakasm*	at mhzc?
2691.14Snonaka
2701.1Snonaka# MII/PHY support
2711.7Snonakadmphy*	at mii? phy ?			# Davicom DM9101 PHYs
2721.7Snonakaexphy*	at mii? phy ?			# 3Com internal PHYs
2731.7Snonakaicsphy* at mii? phy ?			# Integrated Circuit Systems ICS1890
2741.7Snonakainphy*	at mii? phy ?			# Intel 82555 PHYs
2751.7Snonakaiophy*	at mii? phy ?			# Intel 82553 PHYs
2761.7Snonakalxtphy* at mii? phy ?			# Level One LXT-970 PHYs
2771.7Snonakansphy*	at mii? phy ?			# NS83840 PHYs
2781.7Snonakansphyter* at mii? phy ?			# NS83843 PHYs
2791.7Snonakaqsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
2801.7Snonakasqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
2811.7Snonakatlphy*	at mii? phy ?			# ThunderLAN PHYs
2821.7Snonakatqphy*	at mii? phy ?			# TDK Semiconductor PHYs
2831.3Snonakaukphy*	at mii? phy ?			# generic unknown PHYs
2841.3Snonaka
2851.14Snonaka
2861.7Snonaka# USB Controller and Devices
2871.7Snonaka
2881.7Snonaka# PCI USB controllers
2891.14Snonaka#uhci*	at pci? dev ? function ?	# Universal Host Controller (Intel)
2901.14Snonaka#ohci*	at pci? dev ? function ?	# Open Host Controller
2911.7Snonaka
2921.7Snonaka# USB bus support
2931.14Snonaka#usb*	at uhci?
2941.14Snonaka#usb*	at ohci?
2951.7Snonaka
2961.7Snonaka# USB Hubs
2971.14Snonaka#uhub*	at usb?
2981.14Snonaka#uhub*	at uhub? port ? configuration ? interface ?
2991.7Snonaka
3001.7Snonaka# USB Mice
3011.14Snonaka#ums*	at uhub? port ? configuration ? interface ?
3021.14Snonaka#wsmouse* at ums? mux 0
3031.7Snonaka
3041.7Snonaka# USB Keyboards
3051.14Snonaka#ukbd*	at uhub? port ? configuration ? interface ?
3061.14Snonaka#wskbd*	at ukbd? console ? mux 1
3071.7Snonaka
3081.7Snonaka# USB Generic HID devices
3091.14Snonaka#uhid*	at uhub? port ? configuration ? interface ?
3101.7Snonaka
3111.7Snonaka# USB Printer
3121.14Snonaka#ulpt*	at uhub? port ? configuration ? interface ?
3131.7Snonaka
3141.7Snonaka# USB Modem
3151.14Snonaka#umodem* at uhub? port ? configuration ?
3161.14Snonaka#ucom*	at umodem?
3171.7Snonaka
3181.7Snonaka# USB Mass Storage
3191.14Snonaka#umass*	at uhub? port ? configuration ? interface ?
3201.14Snonaka#scsibus* at umass? channel ?
3211.7Snonaka#atapibus* at umass? channel ?
3221.7Snonaka
3231.7Snonaka# USB audio
3241.14Snonaka#uaudio* at uhub? port ? configuration ?
3251.7Snonaka
3261.7Snonaka# USB Ethernet adapters
3271.14Snonaka#aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
3281.14Snonaka#cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
3291.14Snonaka#kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
3301.7Snonaka
3311.7Snonaka# Prolofic PL2301/PL2302 host-to-host adapter
3321.14Snonaka#upl*	at uhub? port ?
3331.7Snonaka
3341.7Snonaka# Serial adapters
3351.7Snonaka# FTDI FT8U100AX serial adapter
3361.7Snonaka#uftdi*	at uhub? port ?
3371.7Snonaka#ucom*	at uftdi? portno ?
3381.7Snonaka
3391.7Snonaka# Diamond Multimedia Rio 500
3401.14Snonaka#urio*	at uhub? port ?
3411.7Snonaka
3421.7Snonaka# USB Handspring Visor
3431.14Snonaka#uvisor* at uhub? port ?
3441.14Snonaka#ucom*	at uvisor?
3451.14Snonaka
3461.14Snonaka# USB Generic driver
3471.14Snonaka#ugen*	at uhub? port ?
3481.13Saugustss
3491.13Saugustss# USB scanners
3501.14Snonaka#uscanner* at uhub? port ?
3511.7Snonaka
3521.7Snonaka
3531.3Snonaka# Audio device
3541.3Snonaka
3551.16Stsutsui# ISA Plug-and-Play audio devices
3561.16Stsutsui#wss*	at isapnp?		# CS4232
3571.16Stsutsui
3581.7Snonaka# Audio support
3591.16Stsutsui#audio*	at wss?
3601.16Stsutsui#audio*	at uaudio?
3611.7Snonaka
3621.3Snonaka# MIDI support
3631.3Snonakamidi*	at pcppi?		# MIDI interface to the PC speaker
3641.3Snonaka
3651.3Snonaka# The spkr driver provides a simple tone interface to the built in speaker.
3661.3Snonakaspkr0	at pcppi?		# PC speaker
3671.1Snonaka
3681.14Snonaka
3691.1Snonaka# Joysticks
3701.1Snonaka
3711.1Snonaka# ISA joysticks. Probe is a little strange; add only if you have one.
3721.1Snonakajoy0	at isa? port 0x201
3731.14Snonaka
3741.1Snonaka
3751.1Snonaka# Pseudo-Devices
3761.1Snonaka
3771.1Snonaka# disk/mass storage pseudo-devices
3781.1Snonakapseudo-device	ccd		4	# concatenated/striped disk devices
3791.3Snonakapseudo-device	raid		4	# RAIDframe disk driver
3801.1Snonaka#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
3811.1Snonakapseudo-device	md		1	# memory disk device (ramdisk)
3821.1Snonakapseudo-device	vnd		4	# disk-like interface to files
3831.1Snonaka
3841.1Snonaka# network pseudo-devices
3851.1Snonakapseudo-device	loop			# network loopback
3861.1Snonakapseudo-device	bpfilter	8	# Berkeley packet filter
3871.1Snonakapseudo-device	ipfilter		# IP filter (firewall) and NAT
3881.1Snonakapseudo-device	ppp		2	# Point-to-Point Protocol
3891.1Snonakapseudo-device	sl		2	# Serial Line IP
3901.1Snonakapseudo-device	strip		2	# Starmode Radio IP (Metricom)
3911.1Snonakapseudo-device	tun		2	# network tunneling over tty
3921.1Snonakapseudo-device	gre		2	# generic L3 over IP tunnel
3931.1Snonakapseudo-device	ipip		2	# IP Encapsulation within IP (RFC 2003)
3941.1Snonakapseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
3951.1Snonaka#pseudo-device	faith		2	# IPv[46] tcp relay translation i/f
3961.5Sitojun#pseudo-device	stf		2	# 6to4 IPv6 over IPv4 encapsulation
3971.15Sbouyerpseudo-device	vlan			# IEEE 802.1q encapsulation
3981.1Snonaka
3991.1Snonaka# miscellaneous pseudo-devices
4001.12Sjdolecekpseudo-device	pty			# pseudo-terminals
4011.7Snonakapseudo-device	tb		1	# tablet line discipline
4021.3Snonakapseudo-device	sequencer	1	# MIDI sequencer
4031.7Snonakapseudo-device	rnd			# /dev/random and in-kernel generator
4041.1Snonaka#options	RND_COM			# use "com" randomness as well
4051.1Snonaka
4061.1Snonaka# a pseudo device needed for Coda	# also needs CODA (above)
4071.7Snonaka#pseudo-device	vcoda		4	# coda minicache <-> venus comm.
4081.1Snonaka
4091.1Snonaka# mouse & keyboard multiplexor pseudo-devices
4101.1Snonakapseudo-device	wsmux		2
411