GENERIC32_IP12 revision 1.8
11.8Shannken#	$NetBSD: GENERIC32_IP12,v 1.8 2010/11/23 11:14:05 hannken Exp $
21.1Ssekiya#
31.5Srumble# GENERIC32_IP12 machine description file
41.5Srumble# 
51.5Srumble# This machine description file is used to generate the default NetBSD
61.5Srumble# kernel.  The generic kernel does not include all options, subsystems
71.5Srumble# and device drivers, but should be useful for most applications.
81.1Ssekiya#
91.5Srumble# The machine description file can be customised for your specific
101.5Srumble# machine to reduce the kernel size and improve its performance.
111.1Ssekiya#
121.5Srumble# For further information on compiling NetBSD kernels, see the config(8)
131.5Srumble# man page.
141.5Srumble#
151.5Srumble# For further information on hardware support for this architecture, see
161.5Srumble# the intro(4) man page.  For further information about kernel options
171.5Srumble# for this architecture, see the options(4) man page.  For an explanation
181.5Srumble# of each device driver in this file see the section 4 man page for the
191.5Srumble# device.
201.5Srumble#
211.5Srumble#
221.5Srumble# Currently this config file supports Personal IRIS 4D/2x (IP6/IP10),
231.5Srumble# Personal IRIS 4D/3x (IP12) and Indigo R3k (IP12).
241.5Srumble#
251.5Srumble# Note that to load at beginning of memory, the kernel _must_ be under
261.5Srumble# 3.5MB in size to avoid stomping on (or being stomped on by) the PROM.
271.5Srumble#
281.5Srumble
291.5Srumbleinclude		"arch/sgimips/conf/std.sgimips"
301.5Srumble
311.5Srumblemakeoptions	TEXTADDR=0x80002000	# entry point
321.5Srumble
331.5Srumbleoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
341.5Srumble
351.8Shannken#ident		"GENERIC32-IP2x-$Revision: 1.8 $"
361.5Srumble
371.5Srumblemaxusers	32
381.5Srumble
391.5Srumble# CPU related options
401.5Srumbleoptions 	MIPS1			# MIPS1 support
411.5Srumble
421.5Srumblemakeoptions	WANT_ECOFF="yes"	# Create an ECOFF kernel in addition
431.5Srumble					# to an ELF kernel -- required for
441.5Srumble					# booting from the PROM. 
451.5Srumble
461.5Srumbleoptions 	BLINK		# blinkenlitzen
471.5Srumble
481.5Srumble# Standard system options
491.5Srumble#options 	INSECURE	# disable kernel security levels
501.5Srumble
511.5Srumble#options 	NTP		# NTP phase/frequence locked loop
521.5Srumbleoptions 	KTRACE		# system call tracing via ktrace(1)
531.5Srumble
541.5Srumbleoptions 	SYSVMSG		# System V message queues
551.5Srumbleoptions 	SYSVSEM		# System V semaphores
561.5Srumbleoptions 	SYSVSHM		# System V shared memory
571.5Srumbleoptions 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
581.5Srumble
591.5Srumble
601.5Srumbleoptions 	USERCONF	# userconf(4) support
611.5Srumble#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
621.5Srumbleoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
631.5Srumble
641.5Srumble# Enable experimental buffer queue strategy for better responsiveness under 
651.5Srumble# high disk I/O load. Use it with caution - it's not proven to be stable yet.
661.5Srumble#options 	BUFQ_READPRIO
671.5Srumble#options 	BUFQ_PRIOCSCAN
681.5Srumble
691.5Srumble# Diagnostic/debugging support options
701.5Srumble#options 	DIAGNOSTIC	# expensive kernel consistency checks
711.5Srumble#options 	DEBUG		# expensive debugging checks/support
721.5Srumble#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
731.5Srumbleoptions 	DDB		# in-kernel debugger
741.5Srumbleoptions 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
751.5Srumble#options 	KGDB		# remote debugger
761.5Srumble#options 	KGDB_DEV=0x2301		# KGDB port - this is Serial(1)
771.5Srumble#options 	KGDB_DEVRATE=19200	# KGDB Baud Rate
781.5Srumble#makeoptions	DEBUG="-g"	# compile full symbol table
791.5Srumble
801.5Srumble# Compatibility options
811.5Srumbleoptions 	COMPAT_15	# NetBSD 1.5
821.5Srumbleoptions 	COMPAT_16	# NetBSD 1.6
831.5Srumbleoptions 	COMPAT_20	# NetBSD 2.0
841.5Srumbleoptions 	COMPAT_30	# NetBSD 3.0
851.5Srumbleoptions 	COMPAT_40	# NetBSD 4.0 compatibility.
861.5Srumbleoptions 	COMPAT_50	# NetBSD 5.0 compatibility.
871.5Srumble#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
881.5Srumble
891.5Srumbleoptions 	COMPAT_IRIX	# binary compatibility with IRIX
901.5Srumble#options 	COMPAT_LINUX	# binary compatibility with Linux
911.5Srumble#options 	COMPAT_ULTRIX	# binary compatibility with Ultrix 
921.5Srumbleoptions 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
931.5Srumble
941.5Srumble# File systems
951.5Srumblefile-system 	FFS		# UFS
961.5Srumble#file-system 	EXT2FS		# second extended file system (linux)
971.5Srumble#file-system 	LFS		# log-structured file system
981.5Srumblefile-system 	MFS		# memory file system
991.5Srumblefile-system 	NFS		# Network File System client
1001.5Srumble#file-system 	NTFS		# Windows/NT file system (experimental)
1011.5Srumblefile-system 	CD9660		# ISO 9660 + Rock Ridge file system
1021.5Srumblefile-system 	MSDOSFS		# MS-DOS file system
1031.5Srumble#file-system 	FDESC		# /dev/fd
1041.5Srumblefile-system 	KERNFS		# /kern
1051.5Srumble#file-system 	NULLFS		# loopback file system
1061.5Srumble#file-system 	OVERLAY		# overlay file system
1071.5Srumblefile-system 	PROCFS		# /proc
1081.5Srumble#file-system 	UMAPFS		# NULLFS + uid and gid remapping
1091.5Srumble#file-system 	UNION		# union file system
1101.5Srumble#file-system	CODA		# Coda File System; also needs vcoda (below)
1111.5Srumblefile-system	PTYFS		# /dev/pts/N support
1121.5Srumblefile-system	TMPFS		# Efficient memory file-system
1131.5Srumble#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
1141.5Srumblefile-system	EFS		# Silicon Graphics Extent File System
1151.5Srumble
1161.5Srumble# File system options
1171.5Srumbleoptions 	QUOTA		# UFS quotas
1181.5Srumble#options 	FFS_EI		# FFS Endian Independent support
1191.5Srumbleoptions 	WAPBL		# File system journaling support - Experimental
1201.5Srumble#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
1211.5Srumbleoptions 	NFSSERVER	# Network File System server
1221.5Srumble#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
1231.5Srumble#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
1241.5Srumble				# immutable) behave as system flags.
1251.1Ssekiya
1261.5Srumble# Networking options
1271.5Srumble#options 	GATEWAY		# packet forwarding
1281.5Srumbleoptions 	INET		# IP + ICMP + TCP + UDP
1291.5Srumble#options 	INET6		# IPV6
1301.5Srumble#options 	IPSEC		# IP security
1311.5Srumble#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
1321.5Srumble#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
1331.5Srumble#options 	IPSEC_DEBUG	# debug for IP security
1341.5Srumble#options 	MROUTING	# IP multicast routing
1351.5Srumble#options 	PIM		# Protocol Independent Multicast
1361.5Srumble#options 	ISO,TPIP	# OSI
1371.5Srumble#options 	EON		# OSI tunneling over IP
1381.5Srumble#options 	NETATALK	# AppleTalk networking protocols
1391.5Srumble#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1401.5Srumble#options 	PPP_DEFLATE	# Deflate compression support for PPP
1411.5Srumble#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1421.5Srumbleoptions 	PFIL_HOOKS	# pfil(9) packet filter hooks
1431.5Srumbleoptions 	IPFILTER_LOG	# ipmon(8) log support
1441.5Srumbleoptions 	IPFILTER_LOOKUP	# ippool(8) support
1451.5Srumble#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
1461.5Srumble#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1471.1Ssekiya
1481.5Srumble#options 	ALTQ		# Manipulate network interfaces' output queues
1491.5Srumble#options 	ALTQ_BLUE	# Stochastic Fair Blue
1501.5Srumble#options 	ALTQ_CBQ	# Class-Based Queueing
1511.5Srumble#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1521.5Srumble#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1531.5Srumble#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1541.5Srumble#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1551.5Srumble#options 	ALTQ_LOCALQ	# Local queueing discipline
1561.5Srumble#options 	ALTQ_PRIQ	# Priority Queueing
1571.5Srumble#options 	ALTQ_RED	# Random Early Detection
1581.5Srumble#options 	ALTQ_RIO	# RED with IN/OUT
1591.5Srumble#options 	ALTQ_WFQ	# Weighted Fair Queueing
1601.1Ssekiya
1611.5Srumble# These options enable verbose messages for several subsystems.
1621.5Srumble# Warning, these may compile large string tables into the kernel!
1631.5Srumble#options 	MIIVERBOSE	# verbose PHY autoconfig messages
1641.5Srumble#options 	SCSIVERBOSE	# human readable SCSI error messages
1651.5Srumble
1661.5Srumbleoptions 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
1671.5Srumble
1681.5Srumble#options 	MEMORY_DISK_HOOKS
1691.5Srumble#options 	MEMORY_DISK_IS_ROOT
1701.5Srumble#options 	MEMORY_DISK_SERVER=0
1711.5Srumble#options 	MINIROOTSIZE=8192
1721.5Srumble
1731.5Srumble#options 	SCSI_DELAY=5
1741.5Srumble
1751.5Srumble#
1761.5Srumble# wscons options
1771.5Srumble#
1781.5Srumble# builtin terminal emulations
1791.5Srumble#options 	WSEMUL_SUN		# sun terminal emulation
1801.5Srumbleoptions 	WSEMUL_VT100		# VT100 / VT220 emulation
1811.5Srumble# different kernel output - see dev/wscons/wsdisplayvar.h
1821.5Srumbleoptions 	WS_KERNEL_FG=WSCOL_GREEN
1831.5Srumble#options 	WS_KERNEL_BG=WSCOL_BLACK
1841.5Srumble# compatibility to other console drivers
1851.5Srumbleoptions 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
1861.5Srumble# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
1871.5Srumble#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
1881.5Srumble
1891.5Srumble
1901.5Srumble# Kernel root file system and dump configuration.
1911.5Srumbleconfig		netbsd	root on ? type ?
1921.5Srumble
1931.5Srumble# Main bus and CPU
1941.5Srumblemainbus0 	at root
1951.5Srumblecpu0 		at mainbus?
1961.5Srumble
1971.5Srumblesd*     at scsibus? target ? lun ?	# SCSI disks
1981.5Srumblest*     at scsibus? target ? lun ?	# SCSI tapes
1991.5Srumblecd*     at scsibus? target ? lun ?	# SCSI CD-ROMs
2001.5Srumblech*     at scsibus? target ? lun ?	# SCSI changer devices
2011.5Srumbless*     at scsibus? target ? lun ?	# SCSI scanners
2021.5Srumbleses*    at scsibus? target ? lun ?	# SCSI SES/SAF-TE devices
2031.5Srumbleuk*     at scsibus? target ? lun ?	# unknown SCSI
2041.5Srumble
2051.5Srumble# Common devices
2061.5Srumbleint0		at mainbus0			# Interrupt controller
2071.5Srumblescsibus*	at scsi?			# HPC or IOC SCSI
2081.5Srumble
2091.5Srumble# IP6/10 devices
2101.5Srumblectl0		at mainbus0 addr 0x1f800000	# Memory controller
2111.5Srumbleoioc0		at mainbus0 addr 0x1f900000	# 'Old' I/O Controller
2121.5Srumbledpclock0	at mainbus0 addr 0x1fbc0000	# RTC
2131.5Srumblescn0		at mainbus0 addr 0x1fb80004	# Signetics 2681 Serial Port
2141.5Srumbleoiocsc* 	at oioc? offset ?		# On-board WD33C93 SCSI
2151.5Srumblele*		at oioc? offset ?		# AMD LANCE AM7990 Ethernet
2161.5Srumble
2171.5Srumble# Personal Iris / Indigo R3k devices
2181.5Srumblepic0		at mainbus0 addr 0x1fa00000	# Memory Controller
2191.5Srumblegio0		at pic0				# GIO32 bus
2201.5Srumbledpclock0	at mainbus0 addr 0x1fb80e00	# RTC
2211.5Srumblehpc0 		at gio? addr 0x1fb80000		# High-perf. Peripheral. Ctrlers
2221.5Srumblehpc1 		at gio? addr 0x1fb00000
2231.5Srumblehpc2 		at gio? addr 0x1f980000
2241.5Srumblegrtwo*		at gio?				# Express (GR2) graphics
2251.5Srumblewsdisplay*	at grtwo? console ?
2261.5Srumblelight*		at gio?			# Light/Starter/Entry (LG1/LG2) graphics
2271.5Srumblewsdisplay*	at light? console ?
2281.5Srumblesq* 		at hpc? offset ?	# On-board ethernet / E++ adapter
2291.5Srumblewdsc* 		at hpc? offset ?	# On-board SCSI / GIO32 SCSI adapter
2301.5Srumblewskbd*		at zskbd? console ?
2311.5Srumblewsmouse*	at zsms? mux 0
2321.5Srumblezsc0 		at hpc0 offset ?
2331.5Srumblezstty*		at zsc0 channel ?
2341.5Srumblezsc1 		at hpc0 offset ?	# IP12 keyboard/mouse
2351.5Srumblezskbd0		at zsc1 channel 0
2361.5Srumblezsms0		at zsc1 channel 1
2371.5Srumble
2381.5Srumble# Pseudo-Devices
2391.5Srumble
2401.5Srumble# disk/mass storage pseudo-devices
2411.5Srumblepseudo-device	ccd		4	# concatenated/striped disk devices
2421.5Srumble#pseudo-device	cgd		4	# cryptographic disk devices
2431.5Srumble#pseudo-device	raid		4	# RAIDframe disk driver
2441.5Srumble#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
2451.7Spookapseudo-device	fss			# file system snapshot device
2461.8Shannkenpseudo-device	md			# memory disk device (ramdisk)
2471.5Srumblepseudo-device	vnd			# disk-like interface to files
2481.5Srumble#options 	VND_COMPRESSION		# compressed vnd(4)
2491.5Srumble
2501.5Srumble# network pseudo-devices
2511.5Srumblepseudo-device	bpfilter		# Berkeley packet filter
2521.5Srumble#pseudo-device	carp			# Common Address Redundancy Protocol
2531.5Srumblepseudo-device	ipfilter		# IP filter (firewall) and NAT
2541.5Srumblepseudo-device	loop			# network loopback
2551.5Srumble#pseudo-device	ppp			# Point-to-Point Protocol
2561.5Srumblepseudo-device	sl			# Serial Line IP
2571.5Srumble#pseudo-device	strip			# Starmode Radio IP (Metricom)
2581.5Srumblepseudo-device	tun			# network tunneling over tty
2591.5Srumblepseudo-device	tap			# virtual Ethernet
2601.5Srumblepseudo-device	gre			# generic L3 over IP tunnel
2611.5Srumblepseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
2621.5Srumble#pseudo-device	faith			# IPv[46] tcp relay translation i/f
2631.5Srumble#pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
2641.5Srumblepseudo-device	vlan			# IEEE 802.1q encapsulation
2651.5Srumblepseudo-device	bridge			# simple inter-network bridging
2661.5Srumblepseudo-device	agr			# IEEE 802.3ad link aggregation
2671.5Srumble#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
2681.5Srumble#pseudo-device	pf			# PF packet filter
2691.5Srumble#pseudo-device	pflog			# PF log if
2701.5Srumble#pseudo-device   accf_data		# "dataready" accept filter
2711.5Srumble#pseudo-device   accf_http		# "httpready" accept filter
2721.5Srumble
2731.5Srumble# miscellaneous pseudo-devices
2741.5Srumblepseudo-device	pty			# pseudo-terminals
2751.5Srumblepseudo-device	sequencer	1	# MIDI sequencer
2761.5Srumblepseudo-device	rnd			# /dev/random and in-kernel generator
2771.5Srumblepseudo-device	clockctl		# user control of clock subsystem
2781.5Srumblepseudo-device	ksyms			# /dev/ksyms
2791.5Srumblepseudo-device	wsmux                   # mouse & keyboard multiplexor
2801.5Srumblepseudo-device	wsfont
2811.5Srumble
2821.5Srumble# a pseudo device needed for Coda	# also needs CODA (above)
2831.5Srumble#pseudo-device	vcoda		4	# coda minicache <-> venus comm.
2841.5Srumble
2851.5Srumble# pseudo devices used for IRIX binary compatibility
2861.5Srumblepseudo-device	irix_kmem		# IRIX /dev/kmem
2871.5Srumblepseudo-device	irix_usema		# IRIX /dev/usema
2881.5Srumble
2891.5Srumble# Veriexec
2901.5Srumble#
2911.5Srumble# a pseudo device needed for veriexec
2921.5Srumble#pseudo-device	veriexec		1
2931.5Srumble#
2941.5Srumble# Uncomment the fingerprint methods below that are desired. Note that
2951.5Srumble# removing fingerprint methods will have almost no impact on the kernel
2961.5Srumble# code size.
2971.5Srumble#
2981.5Srumble#options VERIFIED_EXEC_FP_RMD160
2991.5Srumble#options VERIFIED_EXEC_FP_SHA256
3001.5Srumble#options VERIFIED_EXEC_FP_SHA384
3011.5Srumble#options VERIFIED_EXEC_FP_SHA512
3021.5Srumble#options VERIFIED_EXEC_FP_SHA1
3031.5Srumble#options VERIFIED_EXEC_FP_MD5
304