PCCONS revision 1.20
11.20Smycroft#	$NetBSD: PCCONS,v 1.20 2002/04/17 02:22:45 mycroft Exp $
21.1Ssoda#	$OpenBSD: GENERIC,v 1.29 1999/08/29 12:14:03 niklas Exp $
31.1Ssoda#
41.1Ssoda#	PCCONS -- generic but pccons rather than wscons
51.1Ssoda#
61.1Ssoda
71.1Ssodainclude		"arch/arc/conf/std.arc"
81.1Ssoda
91.1Ssodamaxusers	32		# estimated number of users
101.1Ssoda
111.7Ssoda# Platform support
121.7Ssodaoptions 	PLATFORM_ACER_PICA_61		# Pica, NEC ImageRISCstation
131.7Ssodaoptions 	PLATFORM_DESKTECH_ARCSTATION_I	# DESKstation rPC44
141.7Ssodaoptions 	PLATFORM_DESKTECH_TYNE		# DESKstation Tyne
151.7Ssodaoptions 	PLATFORM_MICROSOFT_JAZZ		# MIPS Magnum
161.7Ssodaoptions 	PLATFORM_NEC_JC94		# NEC Express 5800/230 PCI R4K
171.7Ssodaoptions 	PLATFORM_NEC_R94		# NEC RISCstation 2200 EISA
181.15Slukemoptions 	PLATFORM_NEC_R96	# NEC Express RISCserver, RISCserver 2200
191.7Ssodaoptions 	PLATFORM_NEC_RAX94		# NEC RISCstation 2200 PCI
201.7Ssodaoptions 	PLATFORM_NEC_RD94		# NEC RISCstation 2250
211.7Ssodaoptions 	PLATFORM_SNI_RM200PCI
221.7Ssoda
231.1Ssoda# Standard system options
241.1Ssoda
251.1Ssodaoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
261.1Ssodaoptions 	NTP		# NTP phase/frequency locked loop
271.1Ssoda
281.1Ssodaoptions 	KTRACE		# system call tracing via ktrace(1)
291.1Ssoda
301.1Ssodaoptions 	SYSVMSG		# System V-like message queues
311.1Ssodaoptions 	SYSVSEM		# System V-like semaphores
321.1Ssodaoptions 	SYSVSHM		# System V-like memory sharing
331.1Ssoda#options 	SHMMAXPGS=1024	# 1024 pages is the default
341.1Ssoda
351.1Ssodaoptions 	LKM		# loadable kernel modules
361.16Sjdolecek
371.19Sgmcgarry#options 	USERCONF	# userconf(4) support
381.16Sjdolecek#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
391.1Ssoda
401.1Ssoda# Diagnostic/debugging support options
411.14Slukemoptions 	DIAGNOSTIC		# cheap kernel consistency checks
421.14Slukem#options 	DEBUG			# expensive debugging checks/support
431.14Slukem#options 	KMEMSTATS		# kernel memory statistics (vmstat -m)
441.14Slukemoptions 	DDB			# in-kernel debugger
451.1Ssoda#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
461.14Slukem#options 	KGDB			# remote gdb
471.14Slukem#options 	KGDB_DEVRATE=19200	# kernel gdb port rate (default 9600)
481.14Slukem#options 	KGDB_DEV="17*256+0"	# device for kernel gdb
491.14Slukem#makeoptions	DEBUG="-g"		# compile full symbol table
501.1Ssoda
511.1Ssoda# Compatibility options
521.8Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
531.1Ssodaoptions 	COMPAT_10	# NetBSD 1.0,
541.1Ssodaoptions 	COMPAT_11	# NetBSD 1.1,
551.1Ssodaoptions 	COMPAT_12	# NetBSD 1.2,
561.1Ssodaoptions 	COMPAT_13	# NetBSD 1.3,
571.1Ssodaoptions 	COMPAT_14	# NetBSD 1.4,
581.1Ssodaoptions 	COMPAT_43	# and 4.3BSD
591.1Ssodaoptions 	COMPAT_386BSD_MBRPART # recognize old partition ID
601.1Ssoda
611.1Ssoda# mipsel specific
621.1Ssodaoptions 	COMPAT_ULTRIX	# Ultrix binary compatibility
631.1Ssodaoptions 	EXEC_ECOFF	# Ultrix RISC binaries are ECOFF format
641.1Ssoda
651.1Ssoda# File systems
661.1Ssodafile-system 	FFS		# fast filesystem
671.1Ssodafile-system 	EXT2FS		# second extended file system (linux)
681.1Ssodafile-system 	LFS		# log-structured file system
691.1Ssodafile-system 	MFS		# memory file system
701.1Ssodafile-system 	NTFS		# Windows/NT file system (experimental)
711.1Ssodafile-system 	CD9660		# ISO 9660 + Rock Ridge file system
721.1Ssodafile-system 	MSDOSFS		# MS-DOS file system
731.1Ssodafile-system 	NFS		# Network File System client
741.1Ssodafile-system 	FDESC		# /dev/fd
751.1Ssodafile-system 	KERNFS		# /kern
761.1Ssodafile-system 	NULLFS		# loopback file system
771.1Ssodafile-system 	OVERLAY		# overlay file system
781.1Ssodafile-system 	PORTAL		# portal filesystem (still experimental)
791.1Ssodafile-system 	PROCFS		# /proc
801.1Ssodafile-system 	UMAPFS		# NULLFS + uid and gid remapping
811.1Ssodafile-system 	UNION		# union file system
821.1Ssoda#file-system	CODA		# Coda File System; also needs vcoda (below)
831.1Ssoda
841.1Ssoda# File system options
851.1Ssodaoptions 	QUOTA		# FFS quotas
861.1Ssoda#options 	FFS_EI		# FFS Endian Independent support
871.6Ssodaoptions 	SOFTDEP		# FFS soft updates support.
881.1Ssodaoptions 	NFSSERVER	# Network File System server
891.1Ssoda#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
901.1Ssoda				# immutable) behave as system flags.
911.1Ssoda
921.1Ssoda# Networking options
931.1Ssoda#options 	GATEWAY		# IP packet forwarding
941.1Ssodaoptions 	INET		# IP + ICMP + TCP + UDP
951.1Ssodaoptions 	INET6		# IPV6
961.1Ssoda#options 	IPSEC		# IP security
971.1Ssoda#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
981.1Ssoda#options 	IPSEC_DEBUG	# debug for IP security
991.1Ssoda#options 	MROUTING	# IP multicast routing
1001.1Ssodaoptions 	NS		# XNS
1011.1Ssoda#options 	NSIP		# XNS tunneling over IP
1021.1Ssodaoptions 	ISO,TPIP	# OSI networking
1031.2Ssommerfe#options 	EON		# OSI tunneling over IP
1041.1Ssodaoptions 	CCITT,LLC,HDLC	# X.25
1051.1Ssodaoptions 	NETATALK	# AppleTalk networking protocols
1061.1Ssodaoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1071.1Ssodaoptions 	PPP_DEFLATE	# Deflate compression support for PPP
1081.1Ssodaoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1091.1Ssodaoptions 	PFIL_HOOKS	# pfil(9) packet filter hooks
1101.1Ssodaoptions 	IPFILTER_LOG	# ipmon(8) log support
1111.8Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1121.1Ssoda
1131.1Ssoda# These options enable verbose messages for several subsystems.
1141.1Ssoda# Warning, these may compile large string tables into the kernel!
1151.1Ssoda#options 	EISAVERBOSE	# verbose EISA device autoconfig messages
1161.1Ssodaoptions 	PCIVERBOSE	# verbose PCI device autoconfig messages
1171.1Ssoda#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1181.1Ssodaoptions 	SCSIVERBOSE	# human readable SCSI error messages
1191.3Sur
1201.3Sur# wscons terminal emulation
1211.3Suroptions 	WSEMUL_VT100	# VT100 emulation
1221.1Ssoda
1231.1Ssoda# Kernel root file system and dump configuration.
1241.1Ssodaoptions 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
1251.1Ssodaconfig		netbsd	root on ? type ?
1261.1Ssoda#config		netbsd	root on sd0a type ffs
1271.1Ssoda#config		netbsd	root on ? type nfs
1281.1Ssoda
1291.1Ssoda#
1301.1Ssoda# Device configuration
1311.1Ssoda#
1321.1Ssoda
1331.1Ssodamainbus0	at root
1341.1Ssodacpu*		at mainbus0
1351.1Ssoda
1361.5Sur#### Jazz-Internal bus devices
1371.1Ssoda
1381.7Ssoda# PLATFORM_ACER_PICA_61
1391.7Ssoda# PLATFORM_MICROSOFT_JAZZ
1401.7Ssoda# PLATFORM_NEC_JC94
1411.7Ssoda# PLATFORM_NEC_R94
1421.7Ssoda# PLATFORM_NEC_R96
1431.7Ssoda# PLATFORM_NEC_RAX94
1441.7Ssoda# PLATFORM_NEC_RD94
1451.7Ssodajazzio*		at mainbus0	# Jazz-Internal bus host bridge.
1461.7Ssoda
1471.7Ssodatimer0		at jazzio?
1481.7Ssodamcclock0 	at jazzio?
1491.5Surpc0		at jazzio?
1501.5Suropms0		at jazzio?
1511.5Surcom0		at jazzio?
1521.5Surcom1		at jazzio?
1531.5Surlpt0		at jazzio?
1541.5Sursn0		at jazzio?
1551.1Ssoda
1561.5Surfdc0		at jazzio?
1571.1Ssodafd*		at fdc? drive ?
1581.1Ssoda
1591.6Ssodaasc0		at jazzio?			# NCR53C9x SCSI
1601.1Ssodascsibus* 	at asc?
1611.1Ssoda
1621.6Ssodaosiop0		at jazzio? flags 0x00000	# NCR53C710 SCSI
1631.6Ssodaosiop1		at jazzio? flags 0x00000
1641.6Ssodascsibus* 	at osiop?
1651.6Ssoda
1661.6Ssoda#oosiop0 	at jazzio?			# NCR53C700 SCSI
1671.6Ssoda#oosiop1 	at jazzio?
1681.6Ssoda#scsibus* 	at oosiop?
1691.1Ssoda
1701.1Ssoda#### ISA bus devices
1711.1Ssoda
1721.7Ssoda# PLATFORM_ACER_PICA_61
1731.7Ssoda# PLATFORM_MICROSOFT_JAZZ
1741.7Ssoda# PLATFORM_NEC_R94
1751.7Ssoda# PLATFORM_NEC_R96
1761.7Ssodajazzisabr*	at mainbus0	# Jazz-(E)ISA bus bridge.
1771.7Ssodaisa*		at jazzisabr?
1781.7Ssoda
1791.7Ssoda# PLATFORM_DESKTECH_ARCSTATION_I
1801.7Ssodaarcsisabr*	at mainbus0	# DESKstation rPC44 ISA host bridge.
1811.7Ssodaisa*		at arcsisabr?
1821.7Ssoda
1831.7Ssoda# PLATFORM_DESKTECH_TYNE
1841.7Ssodatyneisabr*	at mainbus0	# DESKstation Tyne ISA host bridge.
1851.7Ssodaisa*		at tyneisabr?
1861.7Ssoda
1871.1Ssoda#isadma0 	at isa?
1881.1Ssoda
1891.7Ssodatimer0		at isa? port 0x40 irq 0
1901.7Ssodamcclock0 	at isa? port 0x70
1911.1Ssoda
1921.7Ssodapc0		at isa? irq 1			# generic PC console device
1931.7Ssodaopms0		at isa? irq 12			# PS/2 auxiliary port mouse
1941.6Ssoda#vga0		at isa?
1951.6Ssoda#pckbc0		at isa?				# PC keyboard controller
1961.1Ssodacom0		at isa? port 0x3f8 irq 4
1971.1Ssodacom1		at isa? port 0x2f8 irq 3
1981.1Ssodacom2		at isa? port 0x3e8 irq 4
1991.1Ssodacom3		at isa? port 0x2e8 irq 3
2001.1Ssodaast0		at isa? port 0x1a0 irq 3	# AST 4-port serial cards
2011.1Ssodacom*		at ast? slave ?
2021.1Ssoda
2031.1Ssoda# Joystick driver. Probe is a little strange; add only if you have one.
2041.1Ssoda#joy0		at isa? port 0x201
2051.1Ssoda
2061.1Ssoda# ISA ST506, ESDI, and IDE controllers
2071.1Ssoda# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
2081.1Ssoda# fall back to 16bits I/O if 32bits I/O are not functional).
2091.1Ssoda# Some controllers pass the initial 32bit test, but will fail later.
2101.1Ssoda# XXX - should be configured
2111.1Ssoda#wdc0		at isa? port 0x1f0 irq 14 flags 0x00
2121.1Ssoda#wdc1		at isa? port 0x170 irq 15 flags 0x00
2131.1Ssoda#wdc*		at isapnp?
2141.1Ssoda
2151.1Ssoda# IDE drives
2161.1Ssoda# Flags are used only with controllers that support DMA operations
2171.1Ssoda# and mode settings (e.g. some pciide controllers)
2181.1Ssoda# The lowest order four bits (rightmost digit) of the flags define the PIO
2191.1Ssoda# mode to use, the next set of four bits the DMA mode and the third set the
2201.1Ssoda# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
2211.1Ssoda# to use, and the last bit must be 1 for this setting to be used.
2221.1Ssoda# For DMA and UDMA, 0xf (1111) means 'disable'.
2231.1Ssoda# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
2241.1Ssoda# (0xc=1100, 0xa=1010, 0xf=1111)
2251.1Ssoda# 0x0000 means "use whatever the drive claims to support".
2261.1Ssoda# XXX - should be configured
2271.1Ssoda#wd*		at wdc? channel ? drive ? flags 0x0000
2281.1Ssoda
2291.1Ssoda# ATAPI bus support
2301.1Ssoda# XXX - should be configured
2311.1Ssoda#atapibus*	at wdc? channel ?
2321.1Ssoda
2331.1Ssoda# ISA parallel printer interfaces
2341.1Ssodalpt0		at isa? port 0x378 irq 7
2351.1Ssoda
2361.1Ssoda# ISA network interfaces
2371.1Ssoda# XXX - should be configured
2381.1Ssoda#ec0		at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
2391.1Ssoda#ep0		at isa? port ? irq ?		# 3C509 ethernet cards
2401.1Ssoda#ne0		at isa? port 0x280 irq 9	# NE[12]000 ethernet cards
2411.1Ssoda#ne1		at isa? port 0x300 irq 10
2421.1Ssoda#ne*		at isapnp?			# NE[12]000 PnP ethernet
2431.1Ssoda#we0		at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
2441.1Ssoda#we1		at isa? port 0x300 iomem 0xcc000 irq 10
2451.1Ssoda#we*		at isapnp?
2461.1Ssoda
2471.1Ssoda# XXX - should be configured
2481.1Ssoda#btl0		at isa? port 0x330 irq ? drq ?
2491.1Ssoda#scsibus*	at btl?
2501.1Ssoda
2511.1Ssoda#### PCI bus devices
2521.1Ssoda
2531.7Ssoda# PLATFORM_NEC_JC94
2541.7Ssoda# PLATFORM_NEC_RAX94
2551.7Ssoda# PLATFORM_NEC_RD94
2561.1Ssodanecpb*		at mainbus0	# NEC RISCstation PCI host bridge.
2571.1Ssodapci*		at necpb?
2581.1Ssoda
2591.7Ssoda#pcivga* 	at pci? dev ? function ?
2601.7Ssodatga*		at pci? dev ? function ?	# DEC ZLXp-E[123] Graphics
2611.1Ssoda
2621.7Ssodaahc*		at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
2631.7Ssodascsibus*	at ahc?
2641.7Ssoda
2651.7Ssodaiha*		at pci? dev ? function ?	# Initio INIC-940/950 SCSI
2661.7Ssodascsibus*	at iha?
2671.7Ssoda
2681.11Stsutsuipcscp*		at pci? dev ? function ?	# AMD Am53c974 PCscsi-PCI SCSI
2691.11Stsutsuiscsibus* 	at pcscp?
2701.11Stsutsui
2711.10Stsutsuisiop*		at pci? dev ? function ?	# NCR/Symbios 53c8xx SCSI
2721.10Stsutsuiscsibus* 	at siop?
2731.12Stsutsui
2741.12Stsutsuitrm*		at pci? dev ? function ?	# Tekram DC-395/315 SCSI
2751.12Stsutsuiscsibus* 	at trm?
2761.7Ssoda
2771.11Stsutsuiepic*		at pci? dev ? function ?	# SMC EPIC/100 Ethernet
2781.9Shubertfex*		at pci? dev ? function ?	# 3Com 90x[BC]
2791.1Ssodafxp*		at pci? dev ? function ?	# Intel EtherExpress PRO
2801.1Ssodane*		at pci? dev ? function ?	# NE2000-compatible
2811.11Stsutsuipcn*		at pci? dev ? function ?	# AMD PCnet-PCI Ethernet
2821.11Stsutsuirtk*		at pci? dev ? function ?	# Realtek 8129/8139
2831.11Stsutsuisip*		at pci? dev ? function ?	# SiS 900/DP83815 Ethernet
2841.20Smycrofttlp*		at pci? dev ? function ?	# DECchip 21x4x and clones
2851.1Ssoda
2861.1Ssoda# IDE and related devices
2871.1Ssoda# PCI IDE controllers - see pciide(4) for supported hardware.
2881.1Ssoda# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
2891.1Ssoda# how to set up DMA modes for this chip. This may work, or may cause
2901.1Ssoda# a machine hang with some controllers.
2911.1Ssodapciide*		at pci ? dev ? function ? flags 0x0000
2921.1Ssodawd*		at pciide? channel ? drive ? flags 0x0000
2931.1Ssodaatapibus*	at pciide? channel ?
2941.1Ssoda
2951.1Ssoda#### MII/PHY support
2961.1Ssoda
2971.1Ssodaexphy*		at mii? phy ?		# 3Com internal PHYs
2981.17Swizicsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
2991.1Ssodainphy*		at mii? phy ?		# Intel 82555 PHYs
3001.1Ssodaiophy*		at mii? phy ?		# Intel 82553 PHYs
3011.1Ssodalxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
3021.1Ssodansphy*		at mii? phy ?		# NS83840 PHYs
3031.1Ssodansphyter*	at mii? phy ?		# NS83843 PHYs
3041.1Ssodaqsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
3051.1Ssodasqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
3061.1Ssodatlphy*		at mii? phy ?		# ThunderLAN PHYs
3071.1Ssodatqphy*		at mii? phy ?		# TDK Semiconductor PHYs
3081.1Ssodaukphy*		at mii? phy ?		# generic unknown PHYs
3091.1Ssoda
3101.1Ssoda#### SCSI bus devices
3111.1Ssoda
3121.1Ssodasd*		at scsibus? target ? lun ?
3131.1Ssodast*		at scsibus? target ? lun ?
3141.1Ssodacd*		at scsibus? target ? lun ?
3151.1Ssodach*		at scsibus? target ? lun ?
3161.1Ssodass*		at scsibus? target ? lun ?
3171.1Ssodauk*		at scsibus? target ? lun ?
3181.1Ssoda
3191.1Ssoda#### ATAPI bus devices
3201.1Ssoda
3211.1Ssoda# flags have the same meaning as for IDE drives.
3221.1Ssodacd*		at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
3231.1Ssodasd*		at atapibus? drive ? flags 0x0000	# ATAPI disk drives
3241.1Ssodauk*		at atapibus? drive ? flags 0x0000	# ATAPI unknown
3251.1Ssoda
3261.6Ssoda#### Workstation Console attachments
3271.6Ssoda
3281.6Ssodawsdisplay*	at tga?
3291.6Ssoda
3301.1Ssoda#### Pseudo devices
3311.1Ssoda
3321.1Ssoda# disk/mass storage pseudo-devices
3331.1Ssodapseudo-device	ccd		4	# concatenated/striped disk devices
3341.1Ssoda#pseudo-device	raid		4	# RAIDframe disk driver
3351.1Ssodapseudo-device	md		1	# memory disk device (ramdisk)
3361.1Ssodapseudo-device	vnd		4	# disk-like interface to files
3371.1Ssoda
3381.1Ssoda# network pseudo-devices
3391.1Ssodapseudo-device	bpfilter	8	# Berkeley packet filter
3401.1Ssodapseudo-device	ipfilter		# IP filter (firewall) and NAT
3411.1Ssodapseudo-device	loop		1	# network loopback
3421.1Ssodapseudo-device	ppp		2	# Point-to-Point Protocol
3431.1Ssodapseudo-device	sl		2	# Serial Line IP
3441.1Ssoda#pseudo-device	strip		2	# Starmode Radio IP (Metricom)
3451.1Ssodapseudo-device	tun		2	# network tunneling over tty
3461.1Ssoda#pseudo-device	gre		2	# generic L3 over IP tunnel
3471.1Ssodapseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
3481.1Ssoda#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
3491.1Ssoda#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
3501.6Ssodapseudo-device	vlan			# IEEE 802.1q encapsulation
3511.1Ssoda
3521.1Ssoda# miscellaneous pseudo-devices
3531.4Sjdolecekpseudo-device	pty			# pseudo-terminals
3541.1Ssodapseudo-device	tb		1	# tablet line discipline
3551.1Ssoda#pseudo-device	sequencer	1	# MIDI sequencer
3561.1Ssoda# rnd works; RND_COM does not on port arc yet.
3571.1Ssodapseudo-device	rnd			# /dev/random and in-kernel generator
3581.1Ssoda#options 	RND_COM			# use "com" randomness as well (BROKEN)
3591.1Ssoda
3601.1Ssoda# a pseudo device needed for Coda	# also needs CODA (above)
3611.1Ssoda#pseudo-device	vcoda		4	# coda minicache <-> venus comm.
3621.1Ssoda
3631.1Ssoda# mouse & keyboard multiplexor pseudo-devices
3641.13Saugustss#pseudo-device	wsmux
365