MAMBO revision 1.3
11.1Ssanjayl# machine description file for the MAMBO simulator from IBM
21.1Ssanjayl# Author Sanjay Lal <sanjayl@kymasys.com>
31.1Ssanjayl 
41.1Ssanjayl
51.1Ssanjaylinclude		"arch/macppc/conf/std.macppc.g5"
61.1Ssanjayl
71.1Ssanjayloptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
81.1Ssanjayl
91.3Smanu#ident 		"GENERIC-$Revision: 1.3 $"
101.1Ssanjayl
111.1Ssanjaylmaxusers	32
121.1Ssanjayl
131.1Ssanjayloptions 	ALTIVEC		# Include AltiVec support
141.1Ssanjayl
151.1Ssanjayl# Standard system options
161.1Ssanjayloptions 	INSECURE	# disable kernel security levels
171.1Ssanjayl
181.1Ssanjayloptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
191.1Ssanjayloptions 	NTP		# NTP phase/frequency locked loop
201.1Ssanjayloptions 	KTRACE		# system call tracing via ktrace(1)
211.2Schristos#options 	SYSTRACE	# system call vetting via systrace(1)
221.1Ssanjayl
231.1Ssanjayloptions 	SYSVMSG		# System V message queues
241.1Ssanjayloptions 	SYSVSEM		# System V semaphores
251.1Ssanjayl#options 	SEMMNI=10	# number of semaphore identifiers
261.1Ssanjayl#options 	SEMMNS=60	# number of semaphores in system
271.1Ssanjayl#options 	SEMUME=10	# max number of undo entries per process
281.1Ssanjayl#options 	SEMMNU=30	# number of undo structures in system
291.1Ssanjayloptions 	SYSVSHM		# System V shared memory
301.1Ssanjayl#options 	SHMMAXPGS=1024	# 1024 pages is the default
311.1Ssanjayloptions 	P1003_1B_SEMAPHORE # p1003.1b semaphore support
321.1Ssanjayl
331.1Ssanjayloptions 	LKM		# loadable kernel modules
341.1Ssanjayl
351.1Ssanjayloptions 	USERCONF	# userconf(4) support
361.1Ssanjayl#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
371.1Ssanjayloptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
381.1Ssanjayl
391.1Ssanjayl# Enable experimental buffer queue strategy for better responsiveness under
401.1Ssanjayl# high disk I/O load. Use it with caution - it's not proven to be stable yet.
411.1Ssanjayl#options 	NEW_BUFQ_STRATEGY
421.1Ssanjayl
431.1Ssanjayl# Diagnostic/debugging support options
441.1Ssanjayloptions 	DIAGNOSTIC	# cheap kernel consistency checks
451.1Ssanjayloptions 	DEBUG		# expensive debugging checks/support
461.1Ssanjayloptions 	ZS_CONSOLE_ABORT# allow break to get into DDB on serial
471.1Ssanjayloptions 	DDB		# in-kernel debugger
481.1Ssanjayl#options 	DDB_ONPANIC=0	# don't go into ddb on panic.
491.1Ssanjayloptions 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
501.1Ssanjayl#options 	TRAP_PANICWAIT
511.1Ssanjayl
521.1Ssanjaylmakeoptions 	DEBUG="-g"	# compile full symbol table
531.1Ssanjayl
541.1Ssanjayl# Compatibility options
551.1Ssanjayloptions 	COMPAT_09	# NetBSD 0.9,
561.1Ssanjayloptions 	COMPAT_10	# NetBSD 1.0,
571.1Ssanjayloptions 	COMPAT_11	# NetBSD 1.1,
581.1Ssanjayloptions 	COMPAT_12	# NetBSD 1.2,
591.1Ssanjayloptions 	COMPAT_13	# NetBSD 1.3,
601.1Ssanjayloptions 	COMPAT_14	# NetBSD 1.4,
611.3Smanuoptions 	COMPAT_15	# NetBSD 1.5,
621.1Ssanjayloptions 	COMPAT_16	# NetBSD 1.6,
631.1Ssanjayloptions 	COMPAT_20	# NetBSD 2.0
641.1Ssanjayloptions 	COMPAT_43	# and 4.3BSD
651.1Ssanjayl
661.1Ssanjayl#options 	COMPAT_386BSD_MBRPART # recognize old partition ID
671.1Ssanjayl#options 	COMPAT_DARWIN	# Darwin binary compatibility (experimental)
681.1Ssanjayl#options 	COMPAT_MACH	# Mach compatibility, needed for COMPAT_DARWIN 
691.1Ssanjayl#options 	EXEC_MACHO	# Mach-O binary support, needed for COMPAT_MACH
701.1Ssanjayl#options	DEBUG_DARWIN	# COMPAT_DARWIN debugging
711.1Ssanjayl#options	DEBUG_MACH	# COMPAT_MACH debugging
721.1Ssanjayl#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
731.1Ssanjayloptions		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
741.1Ssanjayl
751.1Ssanjayl# File systems
761.1Ssanjaylfile-system 	FFS		# UFS
771.1Ssanjaylfile-system 	MFS		# memory file system
781.1Ssanjaylfile-system 	KERNFS		# /kern
791.1Ssanjaylfile-system 	NULLFS		# loopback file system
801.1Ssanjaylfile-system 	PROCFS		# /proc
811.1Ssanjaylfile-system 	OVERLAY		# overlay file system
821.1Ssanjaylfile-system 	UMAPFS		# NULLFS + uid and gid remapping
831.1Ssanjaylfile-system 	UNION		# union file system
841.1Ssanjayl
851.1Ssanjayl
861.1Ssanjayl# File system options
871.1Ssanjayloptions 	QUOTA		# UFS quotas
881.1Ssanjayl#options 	FFS_EI		# FFS Endian Independant support
891.1Ssanjayloptions 	SOFTDEP		# FFS soft updates support.
901.1Ssanjayl#options	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
911.1Ssanjayl#options 	FFS_NO_SNAPSHOT	# ffs snapshots
921.1Ssanjayl#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
931.1Ssanjayl				# immutable) behave as system flags.
941.1Ssanjayl
951.1Ssanjayl# Networking options
961.1Ssanjayl#options 	GATEWAY		# packet forwarding
971.1Ssanjayloptions 	INET		# IP + ICMP + TCP + UDP
981.1Ssanjayl
991.1Ssanjayl# These options enable verbose messages for several subsystems.
1001.1Ssanjayl# Warning, these may compile large string tables into the kernel!
1011.1Ssanjayloptions 	PCIVERBOSE	# verbose PCI device autoconfig messages
1021.1Ssanjayloptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1031.1Ssanjayl#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1041.1Ssanjayl
1051.1Ssanjayl# wscons options
1061.1Ssanjayl#options 	WSEMUL_SUN			# sun terminal emulation
1071.1Ssanjayloptions 	WSEMUL_VT100			# VT100 / VT220 emulation
1081.1Ssanjayl#options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
1091.1Ssanjayloptions 	FONT_GALLANT12x22
1101.1Ssanjayl
1111.1Ssanjayl# Optional Mac keyboard tweaks
1121.1Ssanjayl
1131.1Ssanjayl# Tweak the keyboard driver to treat the caps lock key on an ADB
1141.1Ssanjayl# keyboard as a control key; requires special remapping because of
1151.1Ssanjayl# ADB's strange emulation of a mechanically-locked key.
1161.1Ssanjayl#options	CAPS_IS_CONTROL
1171.1Ssanjayl
1181.1Ssanjayl# On Mac laptops, several function keys double as "hot keys"
1191.1Ssanjayl# (brightness, volume, eject) when the Fn modifier is held down.  Mac
1201.1Ssanjayl# OS X likes to reprogram the keyboard controller to send hot key
1211.1Ssanjayl# events when Fn is not held down and send function key events when it
1221.1Ssanjayl# is.  This option transforms the non-keyboard "button" events back
1231.1Ssanjayl# into function key events.
1241.1Ssanjayl#options	FORCE_FUNCTION_KEYS
1251.1Ssanjayl
1261.1Ssanjayl# Kernel root file system and dump configuration.
1271.1Ssanjaylconfig		netbsd	root on ? type ?
1281.1Ssanjayl
1291.1Ssanjayl#
1301.1Ssanjayl# Device configuration
1311.1Ssanjayl#
1321.1Ssanjayl
1331.1Ssanjaylmainbus* at root
1341.1Ssanjayl
1351.1Ssanjaylcpu*	at mainbus?
1361.1Ssanjaylbandit*	at mainbus?
1371.1Ssanjaylgrackle* at mainbus?
1381.1Ssanjayluninorth* at mainbus?
1391.1Ssanjaylibmcpc* at mainbus?
1401.1Ssanjayl
1411.1Ssanjaylpci*	at bandit? bus ?
1421.1Ssanjaylpci*	at grackle? bus ?
1431.1Ssanjaylpci*	at uninorth? bus ?
1441.1Ssanjaylpci*	at ibmcpc? bus ?
1451.1Ssanjaylpci*	at ppb? bus ?
1461.1Ssanjayl
1471.1Ssanjaylpchb*	at pci? dev ? function ?	# PCI-Host bridges
1481.1Ssanjaylppb*	at pci? dev ? function ?	# PCI-PCI bridges
1491.1Ssanjayl
1501.1Ssanjayl# Other  PCI devices
1511.1Ssanjayl#ofb*	at pci? dev ? function ?	# Generic Open Firmware Framebuffer
1521.1Ssanjayl# OFB_ENABLE_CACHE speeds up the console on many machines, but should
1531.1Ssanjayl# not be enabled on some older machines, such as the rev. A-D iMacs.
1541.1Ssanjayl#options 	OFB_ENABLE_CACHE	# Speed up console
1551.1Ssanjaylpciide* at pci? dev ? function ? flags 0x0000	# GENERIC pciide driver
1561.1Ssanjaylobio*	at pci? dev ? function ?
1571.1Ssanjaylmacofcons0 at pci? dev ? function ?	# OpenFirmware console (for debugging)
1581.1Ssanjayl#macofcons0 at mainbus? 		# OpenFirmware console (for debugging)
1591.1Ssanjayl
1601.1Ssanjayl# PCI serial interfaces
1611.1Ssanjaylnvram*	at obio?			# nvram
1621.1Ssanjayl# awacs is disabled because on most systems (7300 - 9600 PowerMacs,
1631.1Ssanjayl# many kinds of G4s), very heavy load can cause the machine to lock
1641.1Ssanjayl# up. ONLY enable this if your machine is never under heavy load, or
1651.1Ssanjayl# you'd rather have audio than worry about occasional lockups.
1661.1Ssanjayl#awacs*	at obio?			# Apple audio device
1671.1Ssanjayl#ki2c*	at obio?			# Keywest I2C
1681.1Ssanjaylwi*	at obio?			# AirMac
1691.1Ssanjayl#snapper* at obio?			# Snapper audio device
1701.1Ssanjayl
1711.1Ssanjayl#wsdisplay0 at ofb? console ?
1721.1Ssanjayl
1731.1Ssanjayl# Cryptographic Devices
1741.1Ssanjayl
1751.1Ssanjayl# PCI cryptographic devices
1761.1Ssanjayl# (disabled, requires opencrypto framework which requires generic softints
1771.1Ssanjayl#hifn*	at pci? dev ? function ?	# Hifn 7755/7811/795x
1781.1Ssanjayl#ubsec*	at pci? dev ? function ?	# Broadcom 5501/5601/580x/582x
1791.1Ssanjayl
1801.1Ssanjayl
1811.1Ssanjaylwdc*	at obio? flags 0x1
1821.1Ssanjaylatabus* at ata?
1831.1Ssanjaylwd*	at atabus? drive ? flags 0x0000
1841.1Ssanjayl
1851.1Ssanjaylatapibus* at atapi?
1861.1Ssanjayl
1871.1Ssanjaylcd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
1881.1Ssanjaylsd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
1891.1Ssanjayluk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
1901.1Ssanjayl
1911.1Ssanjayl
1921.1Ssanjayl#pseudo-device 	crypto			# opencrypto framework
1931.1Ssanjayl					# (disabled, requires generic softints)
1941.1Ssanjaylpseudo-device	vnd		4	# disk-like interface to files
1951.1Ssanjaylpseudo-device	md		1	# memory disk device
1961.1Ssanjaylpseudo-device	loop			# network loopback
1971.1Ssanjaylpseudo-device	pty			# pseudo-terminals
1981.1Ssanjaylpseudo-device	rnd			# /dev/random and in-kernel generator
1991.1Ssanjaylpseudo-device	openfirm		# /dev/openfirm
2001.1Ssanjaylpseudo-device	wsmux			# mouse and keyboard multiplexor
2011.1Ssanjaylpseudo-device	clockctl		# user control of clock subsystem
2021.1Ssanjaylpseudo-device	ksyms			# /dev/ksyms
2031.1Ssanjaylpseudo-device	nsmb			# SMB requester
2041.1Ssanjayl#pseudo-device	pf			# PF packet filter
2051.1Ssanjayl#pseudo-device	pflog			# PF log if
2061.1Ssanjayl
2071.1Ssanjayl# Enable the hooks used for initializing the ram-disk.
2081.1Ssanjayloptions 	MEMORY_DISK_HOOKS
2091.1Ssanjayloptions 	MEMORY_DISK_IS_ROOT		# Force root on ram-disk
2101.1Ssanjayloptions 	MEMORY_DISK_ROOT_SIZE=4096	# 2 Megabytes
2111.1Ssanjayloptions		MAMBO
2121.1Ssanjayl
2131.1Ssanjayl# For Mambo console
2141.1Ssanjaylcom* at mainbus?
2151.1Ssanjayl#options		COM_DEBUG
216