PCCONS revision 1.16
11.16Sjdolecek#	$NetBSD: PCCONS,v 1.16 2002/01/27 13:23:12 jdolecek 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.16Sjdolecek#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
381.1Ssoda
391.1Ssoda# Diagnostic/debugging support options
401.14Slukemoptions 	DIAGNOSTIC		# cheap kernel consistency checks
411.14Slukem#options 	DEBUG			# expensive debugging checks/support
421.14Slukem#options 	KMEMSTATS		# kernel memory statistics (vmstat -m)
431.14Slukemoptions 	DDB			# in-kernel debugger
441.1Ssoda#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
451.14Slukem#options 	KGDB			# remote gdb
461.14Slukem#options 	KGDB_DEVRATE=19200	# kernel gdb port rate (default 9600)
471.14Slukem#options 	KGDB_DEV="17*256+0"	# device for kernel gdb
481.14Slukem#makeoptions	DEBUG="-g"		# compile full symbol table
491.1Ssoda
501.1Ssoda# Compatibility options
511.8Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
521.1Ssodaoptions 	COMPAT_10	# NetBSD 1.0,
531.1Ssodaoptions 	COMPAT_11	# NetBSD 1.1,
541.1Ssodaoptions 	COMPAT_12	# NetBSD 1.2,
551.1Ssodaoptions 	COMPAT_13	# NetBSD 1.3,
561.1Ssodaoptions 	COMPAT_14	# NetBSD 1.4,
571.1Ssodaoptions 	COMPAT_43	# and 4.3BSD
581.1Ssodaoptions 	COMPAT_386BSD_MBRPART # recognize old partition ID
591.1Ssoda
601.1Ssoda# mipsel specific
611.1Ssodaoptions 	COMPAT_ULTRIX	# Ultrix binary compatibility
621.1Ssodaoptions 	EXEC_ECOFF	# Ultrix RISC binaries are ECOFF format
631.1Ssoda
641.1Ssoda# File systems
651.1Ssodafile-system 	FFS		# fast filesystem
661.1Ssodafile-system 	EXT2FS		# second extended file system (linux)
671.1Ssodafile-system 	LFS		# log-structured file system
681.1Ssodafile-system 	MFS		# memory file system
691.1Ssodafile-system 	NTFS		# Windows/NT file system (experimental)
701.1Ssodafile-system 	CD9660		# ISO 9660 + Rock Ridge file system
711.1Ssodafile-system 	MSDOSFS		# MS-DOS file system
721.1Ssodafile-system 	NFS		# Network File System client
731.1Ssodafile-system 	FDESC		# /dev/fd
741.1Ssodafile-system 	KERNFS		# /kern
751.1Ssodafile-system 	NULLFS		# loopback file system
761.1Ssodafile-system 	OVERLAY		# overlay file system
771.1Ssodafile-system 	PORTAL		# portal filesystem (still experimental)
781.1Ssodafile-system 	PROCFS		# /proc
791.1Ssodafile-system 	UMAPFS		# NULLFS + uid and gid remapping
801.1Ssodafile-system 	UNION		# union file system
811.1Ssoda#file-system	CODA		# Coda File System; also needs vcoda (below)
821.1Ssoda
831.1Ssoda# File system options
841.1Ssodaoptions 	QUOTA		# FFS quotas
851.1Ssoda#options 	FFS_EI		# FFS Endian Independent support
861.6Ssodaoptions 	SOFTDEP		# FFS soft updates support.
871.1Ssodaoptions 	NFSSERVER	# Network File System server
881.1Ssoda#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
891.1Ssoda				# immutable) behave as system flags.
901.1Ssoda
911.1Ssoda# Networking options
921.1Ssoda#options 	GATEWAY		# IP packet forwarding
931.1Ssodaoptions 	INET		# IP + ICMP + TCP + UDP
941.1Ssodaoptions 	INET6		# IPV6
951.1Ssoda#options 	IPSEC		# IP security
961.1Ssoda#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
971.1Ssoda#options 	IPSEC_DEBUG	# debug for IP security
981.1Ssoda#options 	MROUTING	# IP multicast routing
991.1Ssodaoptions 	NS		# XNS
1001.1Ssoda#options 	NSIP		# XNS tunneling over IP
1011.1Ssodaoptions 	ISO,TPIP	# OSI networking
1021.2Ssommerfe#options 	EON		# OSI tunneling over IP
1031.1Ssodaoptions 	CCITT,LLC,HDLC	# X.25
1041.1Ssodaoptions 	NETATALK	# AppleTalk networking protocols
1051.1Ssodaoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1061.1Ssodaoptions 	PPP_DEFLATE	# Deflate compression support for PPP
1071.1Ssodaoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1081.1Ssodaoptions 	PFIL_HOOKS	# pfil(9) packet filter hooks
1091.1Ssodaoptions 	IPFILTER_LOG	# ipmon(8) log support
1101.8Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1111.1Ssoda
1121.1Ssoda# These options enable verbose messages for several subsystems.
1131.1Ssoda# Warning, these may compile large string tables into the kernel!
1141.1Ssoda#options 	EISAVERBOSE	# verbose EISA device autoconfig messages
1151.1Ssodaoptions 	PCIVERBOSE	# verbose PCI device autoconfig messages
1161.1Ssoda#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1171.1Ssodaoptions 	SCSIVERBOSE	# human readable SCSI error messages
1181.3Sur
1191.3Sur# wscons terminal emulation
1201.3Suroptions 	WSEMUL_VT100	# VT100 emulation
1211.1Ssoda
1221.1Ssoda# Kernel root file system and dump configuration.
1231.1Ssodaoptions 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
1241.1Ssodaconfig		netbsd	root on ? type ?
1251.1Ssoda#config		netbsd	root on sd0a type ffs
1261.1Ssoda#config		netbsd	root on ? type nfs
1271.1Ssoda
1281.1Ssoda#
1291.1Ssoda# Device configuration
1301.1Ssoda#
1311.1Ssoda
1321.1Ssodamainbus0	at root
1331.1Ssodacpu*		at mainbus0
1341.1Ssoda
1351.5Sur#### Jazz-Internal bus devices
1361.1Ssoda
1371.7Ssoda# PLATFORM_ACER_PICA_61
1381.7Ssoda# PLATFORM_MICROSOFT_JAZZ
1391.7Ssoda# PLATFORM_NEC_JC94
1401.7Ssoda# PLATFORM_NEC_R94
1411.7Ssoda# PLATFORM_NEC_R96
1421.7Ssoda# PLATFORM_NEC_RAX94
1431.7Ssoda# PLATFORM_NEC_RD94
1441.7Ssodajazzio*		at mainbus0	# Jazz-Internal bus host bridge.
1451.7Ssoda
1461.7Ssodatimer0		at jazzio?
1471.7Ssodamcclock0 	at jazzio?
1481.5Surpc0		at jazzio?
1491.5Suropms0		at jazzio?
1501.5Surcom0		at jazzio?
1511.5Surcom1		at jazzio?
1521.5Surlpt0		at jazzio?
1531.5Sursn0		at jazzio?
1541.1Ssoda
1551.5Surfdc0		at jazzio?
1561.1Ssodafd*		at fdc? drive ?
1571.1Ssoda
1581.6Ssodaasc0		at jazzio?			# NCR53C9x SCSI
1591.1Ssodascsibus* 	at asc?
1601.1Ssoda
1611.6Ssodaosiop0		at jazzio? flags 0x00000	# NCR53C710 SCSI
1621.6Ssodaosiop1		at jazzio? flags 0x00000
1631.6Ssodascsibus* 	at osiop?
1641.6Ssoda
1651.6Ssoda#oosiop0 	at jazzio?			# NCR53C700 SCSI
1661.6Ssoda#oosiop1 	at jazzio?
1671.6Ssoda#scsibus* 	at oosiop?
1681.1Ssoda
1691.1Ssoda#### ISA bus devices
1701.1Ssoda
1711.7Ssoda# PLATFORM_ACER_PICA_61
1721.7Ssoda# PLATFORM_MICROSOFT_JAZZ
1731.7Ssoda# PLATFORM_NEC_R94
1741.7Ssoda# PLATFORM_NEC_R96
1751.7Ssodajazzisabr*	at mainbus0	# Jazz-(E)ISA bus bridge.
1761.7Ssodaisa*		at jazzisabr?
1771.7Ssoda
1781.7Ssoda# PLATFORM_DESKTECH_ARCSTATION_I
1791.7Ssodaarcsisabr*	at mainbus0	# DESKstation rPC44 ISA host bridge.
1801.7Ssodaisa*		at arcsisabr?
1811.7Ssoda
1821.7Ssoda# PLATFORM_DESKTECH_TYNE
1831.7Ssodatyneisabr*	at mainbus0	# DESKstation Tyne ISA host bridge.
1841.7Ssodaisa*		at tyneisabr?
1851.7Ssoda
1861.1Ssoda#isadma0 	at isa?
1871.1Ssoda
1881.7Ssodatimer0		at isa? port 0x40 irq 0
1891.7Ssodamcclock0 	at isa? port 0x70
1901.1Ssoda
1911.7Ssodapc0		at isa? irq 1			# generic PC console device
1921.7Ssodaopms0		at isa? irq 12			# PS/2 auxiliary port mouse
1931.6Ssoda#vga0		at isa?
1941.6Ssoda#pckbc0		at isa?				# PC keyboard controller
1951.1Ssodacom0		at isa? port 0x3f8 irq 4
1961.1Ssodacom1		at isa? port 0x2f8 irq 3
1971.1Ssodacom2		at isa? port 0x3e8 irq 4
1981.1Ssodacom3		at isa? port 0x2e8 irq 3
1991.1Ssodaast0		at isa? port 0x1a0 irq 3	# AST 4-port serial cards
2001.1Ssodacom*		at ast? slave ?
2011.1Ssoda
2021.1Ssoda# Joystick driver. Probe is a little strange; add only if you have one.
2031.1Ssoda#joy0		at isa? port 0x201
2041.1Ssoda
2051.1Ssoda# ISA ST506, ESDI, and IDE controllers
2061.1Ssoda# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
2071.1Ssoda# fall back to 16bits I/O if 32bits I/O are not functional).
2081.1Ssoda# Some controllers pass the initial 32bit test, but will fail later.
2091.1Ssoda# XXX - should be configured
2101.1Ssoda#wdc0		at isa? port 0x1f0 irq 14 flags 0x00
2111.1Ssoda#wdc1		at isa? port 0x170 irq 15 flags 0x00
2121.1Ssoda#wdc*		at isapnp?
2131.1Ssoda
2141.1Ssoda# IDE drives
2151.1Ssoda# Flags are used only with controllers that support DMA operations
2161.1Ssoda# and mode settings (e.g. some pciide controllers)
2171.1Ssoda# The lowest order four bits (rightmost digit) of the flags define the PIO
2181.1Ssoda# mode to use, the next set of four bits the DMA mode and the third set the
2191.1Ssoda# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
2201.1Ssoda# to use, and the last bit must be 1 for this setting to be used.
2211.1Ssoda# For DMA and UDMA, 0xf (1111) means 'disable'.
2221.1Ssoda# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
2231.1Ssoda# (0xc=1100, 0xa=1010, 0xf=1111)
2241.1Ssoda# 0x0000 means "use whatever the drive claims to support".
2251.1Ssoda# XXX - should be configured
2261.1Ssoda#wd*		at wdc? channel ? drive ? flags 0x0000
2271.1Ssoda
2281.1Ssoda# ATAPI bus support
2291.1Ssoda# XXX - should be configured
2301.1Ssoda#atapibus*	at wdc? channel ?
2311.1Ssoda
2321.1Ssoda# ISA parallel printer interfaces
2331.1Ssodalpt0		at isa? port 0x378 irq 7
2341.1Ssoda
2351.1Ssoda# ISA network interfaces
2361.1Ssoda# XXX - should be configured
2371.1Ssoda#ec0		at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
2381.1Ssoda#ep0		at isa? port ? irq ?		# 3C509 ethernet cards
2391.1Ssoda#ne0		at isa? port 0x280 irq 9	# NE[12]000 ethernet cards
2401.1Ssoda#ne1		at isa? port 0x300 irq 10
2411.1Ssoda#ne*		at isapnp?			# NE[12]000 PnP ethernet
2421.1Ssoda#we0		at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
2431.1Ssoda#we1		at isa? port 0x300 iomem 0xcc000 irq 10
2441.1Ssoda#we*		at isapnp?
2451.1Ssoda
2461.1Ssoda# XXX - should be configured
2471.1Ssoda#btl0		at isa? port 0x330 irq ? drq ?
2481.1Ssoda#scsibus*	at btl?
2491.1Ssoda
2501.1Ssoda#### PCI bus devices
2511.1Ssoda
2521.7Ssoda# PLATFORM_NEC_JC94
2531.7Ssoda# PLATFORM_NEC_RAX94
2541.7Ssoda# PLATFORM_NEC_RD94
2551.1Ssodanecpb*		at mainbus0	# NEC RISCstation PCI host bridge.
2561.1Ssodapci*		at necpb?
2571.1Ssoda
2581.7Ssoda#pcivga* 	at pci? dev ? function ?
2591.7Ssodatga*		at pci? dev ? function ?	# DEC ZLXp-E[123] Graphics
2601.1Ssoda
2611.7Ssodaahc*		at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
2621.7Ssodascsibus*	at ahc?
2631.7Ssoda
2641.7Ssodaiha*		at pci? dev ? function ?	# Initio INIC-940/950 SCSI
2651.7Ssodascsibus*	at iha?
2661.7Ssoda
2671.11Stsutsuipcscp*		at pci? dev ? function ?	# AMD Am53c974 PCscsi-PCI SCSI
2681.11Stsutsuiscsibus* 	at pcscp?
2691.11Stsutsui
2701.10Stsutsuisiop*		at pci? dev ? function ?	# NCR/Symbios 53c8xx SCSI
2711.10Stsutsuiscsibus* 	at siop?
2721.12Stsutsui
2731.12Stsutsuitrm*		at pci? dev ? function ?	# Tekram DC-395/315 SCSI
2741.12Stsutsuiscsibus* 	at trm?
2751.7Ssoda
2761.1Ssoda#de*		at pci? dev ? function ?
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.1Ssodatlp*		at pci? dev ? function ?	# DECchip 21x4x (and clones)
2851.1Ssoda#options 	TLP_MATCH_21040
2861.1Ssoda#options 	TLP_MATCH_21041
2871.1Ssoda#options 	TLP_MATCH_21140
2881.1Ssoda#options 	TLP_MATCH_21142
2891.1Ssoda
2901.1Ssoda# IDE and related devices
2911.1Ssoda# PCI IDE controllers - see pciide(4) for supported hardware.
2921.1Ssoda# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
2931.1Ssoda# how to set up DMA modes for this chip. This may work, or may cause
2941.1Ssoda# a machine hang with some controllers.
2951.1Ssodapciide*		at pci ? dev ? function ? flags 0x0000
2961.1Ssodawd*		at pciide? channel ? drive ? flags 0x0000
2971.1Ssodaatapibus*	at pciide? channel ?
2981.1Ssoda
2991.1Ssoda#### MII/PHY support
3001.1Ssoda
3011.1Ssodaexphy*		at mii? phy ?		# 3Com internal PHYs
3021.1Ssodaicsphy*		at mii? phy ?		# Integrated Circuit Systems ICS1890
3031.1Ssodainphy*		at mii? phy ?		# Intel 82555 PHYs
3041.1Ssodaiophy*		at mii? phy ?		# Intel 82553 PHYs
3051.1Ssodalxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
3061.1Ssodansphy*		at mii? phy ?		# NS83840 PHYs
3071.1Ssodansphyter*	at mii? phy ?		# NS83843 PHYs
3081.1Ssodaqsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
3091.1Ssodasqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
3101.1Ssodatlphy*		at mii? phy ?		# ThunderLAN PHYs
3111.1Ssodatqphy*		at mii? phy ?		# TDK Semiconductor PHYs
3121.1Ssodaukphy*		at mii? phy ?		# generic unknown PHYs
3131.1Ssoda
3141.1Ssoda#### SCSI bus devices
3151.1Ssoda
3161.1Ssodasd*		at scsibus? target ? lun ?
3171.1Ssodast*		at scsibus? target ? lun ?
3181.1Ssodacd*		at scsibus? target ? lun ?
3191.1Ssodach*		at scsibus? target ? lun ?
3201.1Ssodass*		at scsibus? target ? lun ?
3211.1Ssodauk*		at scsibus? target ? lun ?
3221.1Ssoda
3231.1Ssoda#### ATAPI bus devices
3241.1Ssoda
3251.1Ssoda# flags have the same meaning as for IDE drives.
3261.1Ssodacd*		at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
3271.1Ssodasd*		at atapibus? drive ? flags 0x0000	# ATAPI disk drives
3281.1Ssodauk*		at atapibus? drive ? flags 0x0000	# ATAPI unknown
3291.1Ssoda
3301.6Ssoda#### Workstation Console attachments
3311.6Ssoda
3321.6Ssodawsdisplay*	at tga?
3331.6Ssoda
3341.1Ssoda#### Pseudo devices
3351.1Ssoda
3361.1Ssoda# disk/mass storage pseudo-devices
3371.1Ssodapseudo-device	ccd		4	# concatenated/striped disk devices
3381.1Ssoda#pseudo-device	raid		4	# RAIDframe disk driver
3391.1Ssodapseudo-device	md		1	# memory disk device (ramdisk)
3401.1Ssodapseudo-device	vnd		4	# disk-like interface to files
3411.1Ssoda
3421.1Ssoda# network pseudo-devices
3431.1Ssodapseudo-device	bpfilter	8	# Berkeley packet filter
3441.1Ssodapseudo-device	ipfilter		# IP filter (firewall) and NAT
3451.1Ssodapseudo-device	loop		1	# network loopback
3461.1Ssodapseudo-device	ppp		2	# Point-to-Point Protocol
3471.1Ssodapseudo-device	sl		2	# Serial Line IP
3481.1Ssoda#pseudo-device	strip		2	# Starmode Radio IP (Metricom)
3491.1Ssodapseudo-device	tun		2	# network tunneling over tty
3501.1Ssoda#pseudo-device	gre		2	# generic L3 over IP tunnel
3511.1Ssodapseudo-device	ipip		2	# IP Encapsulation within IP (RFC 2003)
3521.1Ssodapseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
3531.1Ssoda#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
3541.1Ssoda#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
3551.6Ssodapseudo-device	vlan			# IEEE 802.1q encapsulation
3561.1Ssoda
3571.1Ssoda# miscellaneous pseudo-devices
3581.4Sjdolecekpseudo-device	pty			# pseudo-terminals
3591.1Ssodapseudo-device	tb		1	# tablet line discipline
3601.1Ssoda#pseudo-device	sequencer	1	# MIDI sequencer
3611.1Ssoda# rnd works; RND_COM does not on port arc yet.
3621.1Ssodapseudo-device	rnd			# /dev/random and in-kernel generator
3631.1Ssoda#options 	RND_COM			# use "com" randomness as well (BROKEN)
3641.1Ssoda
3651.1Ssoda# a pseudo device needed for Coda	# also needs CODA (above)
3661.1Ssoda#pseudo-device	vcoda		4	# coda minicache <-> venus comm.
3671.1Ssoda
3681.1Ssoda# mouse & keyboard multiplexor pseudo-devices
3691.13Saugustss#pseudo-device	wsmux
370