# $NetBSD: GENERIC,v 1.194.4.7 2005/11/05 00:39:47 tron Exp $
#
# GENERIC machine description file
# 
# This machine description file is used to generate the default NetBSD
# kernel.  The generic kernel does not include all options, subsystems
# and device drivers, but should be useful for most applications.
#
# The machine description file can be customised for your specific
# machine to reduce the kernel size and improve its performance.
#
# For further information on compiling NetBSD kernels, see the config(8)
# man page.
#
# For further information on hardware support for this architecture, see
# the intro(4) man page.  For further information about kernel options
# for this architecture, see the options(4) man page.  For an explanation
# of each device driver in this file see the section 4 man page for the
# device.

include		"arch/macppc/conf/std.macppc"

options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary

#ident 		"GENERIC-$Revision: 1.194.4.7 $"

maxusers	32

options 	ALTIVEC		# Include AltiVec support

# Standard system options
options 	INSECURE	# disable kernel security levels

options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
options 	NTP		# NTP phase/frequency locked loop
options 	KTRACE		# system call tracing via ktrace(1)
options 	SYSTRACE	# system call vetting via systrace(1)

options 	SYSVMSG		# System V message queues
options 	SYSVSEM		# System V semaphores
#options 	SEMMNI=10	# number of semaphore identifiers
#options 	SEMMNS=60	# number of semaphores in system
#options 	SEMUME=10	# max number of undo entries per process
#options 	SEMMNU=30	# number of undo structures in system
options 	SYSVSHM		# System V shared memory
#options 	SHMMAXPGS=1024	# 1024 pages is the default
options 	P1003_1B_SEMAPHORE # p1003.1b semaphore support

options 	LKM		# loadable kernel modules

options 	USERCONF	# userconf(4) support
#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel

# Enable experimental buffer queue strategy for better responsiveness under
# high disk I/O load. Use it with caution - it's not proven to be stable yet.
#options 	NEW_BUFQ_STRATEGY

# Diagnostic/debugging support options
#options 	DIAGNOSTIC	# cheap kernel consistency checks
#options 	DEBUG		# expensive debugging checks/support
options 	ZS_CONSOLE_ABORT# allow break to get into DDB on serial
options 	DDB		# in-kernel debugger
#options 	DDB_ONPANIC=0	# don't go into ddb on panic.
options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
#options 	TRAP_PANICWAIT

#makeoptions 	DEBUG="-g"	# compile full symbol table

# File systems
file-system 	FFS		# UFS
file-system 	EXT2FS		# second extended file system (linux)
file-system 	LFS		# log-structured file system
file-system 	MFS		# memory file system
file-system 	NFS		# Network File System client
file-system 	CD9660		# ISO 9660 + Rock Ridge file system
file-system 	MSDOSFS		# MS-DOS file system
file-system 	FDESC		# /dev/fd
file-system 	KERNFS		# /kern
file-system 	NULLFS		# loopback file system
file-system 	OVERLAY		# overlay file system
file-system 	PROCFS		# /proc
file-system 	UNION		# union file system
file-system	PTYFS		# pty file system

options		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.

# File system options
options 	SOFTDEP		# FFS soft updates support.
#options	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
options 	NFSSERVER	# Network File System server
#options 	FFS_NO_SNAPSHOT	# ffs snapshots
#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.
options 	APPLE_UFS	# Apple UFS support in FFS

options 	NFS_BOOT_DHCP	# Support DHCP NFS root

# Networking options
options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
options 	INET6		# IPV6
#options 	IPSEC		# IP security
#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
#options 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
#options 	IPSEC_DEBUG	# debug for IP security
#options 	MROUTING	# IP multicast routing
#options 	PIM		# Protocol Independent Multicast
#options 	NS		# XNS
#options 	NSIP		# XNS tunneling over IP
#options 	ISO,TPIP	# OSI
#options 	EON		# OSI tunneling over IP
#options 	CCITT,LLC,HDLC	# X.25
options 	PFIL_HOOKS	# pfil(9) packet filter hooks
options 	IPFILTER_LOG	# ipmon(8) log support
#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG

#options 	ALTQ		# Manipulate network interfaces' output queues
#options 	ALTQ_BLUE	# Stochastic Fair Blue
#options 	ALTQ_CBQ	# Class-Based Queueing
#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
#options 	ALTQ_FIFOQ	# First-In First-Out Queue
#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
#options 	ALTQ_LOCALQ	# Local queueing discipline
#options 	ALTQ_PRIQ	# Priority Queueing
#options 	ALTQ_RED	# Random Early Detection
#options 	ALTQ_RIO	# RED with IN/OUT
#options 	ALTQ_WFQ	# Weighted Fair Queueing

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
#options 	PCIVERBOSE	# verbose PCI device autoconfig messages
#options 	MIIVERBOSE	# verbose PHY autoconfig messages
#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
#options 	SCSIVERBOSE	# human readable SCSI error messages
#options 	USBVERBOSE	# verbose USB device autoconfig messages

# wscons options
#options 	WSEMUL_SUN			# sun terminal emulation
options 	WSEMUL_VT100			# VT100 / VT220 emulation
#options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
options 	FONT_GALLANT12x22

# Optional Mac keyboard tweaks

# Tweak the keyboard driver to treat the caps lock key on an ADB
# keyboard as a control key; requires special remapping because of
# ADB's strange emulation of a mechanically-locked key.
#options	CAPS_IS_CONTROL

# On Mac laptops, several function keys double as "hot keys"
# (brightness, volume, eject) when the Fn modifier is held down.  Mac
# OS X likes to reprogram the keyboard controller to send hot key
# events when Fn is not held down and send function key events when it
# is.  This option transforms the non-keyboard "button" events back
# into function key events.
#options	FORCE_FUNCTION_KEYS

# Kernel root file system and dump configuration.
#config		netbsd	root on ? type ?
config		netbsd	root on wd0b type ? dumps on wd0e

#
# Device configuration
#

mainbus* at root

cpu*	at mainbus?
bandit*	at mainbus?
grackle* at mainbus?
uninorth* at mainbus?

pci*	at bandit? bus ?
pci*	at grackle? bus ?
pci*	at uninorth? bus ?
pci*	at ppb? bus ?

pchb*	at pci? dev ? function ?	# PCI-Host bridges
ppb*	at pci? dev ? function ?	# PCI-PCI bridges
# XXX 'puc's aren't really bridges, but there's no better place for them here
puc*	at pci? dev ? function ?	# PCI "universal" comm. cards
lpt*	at puc? port ?			# || ports on > "universal" comm boards

# PCI Network devices
gem*	at pci? dev ? function ?	# gmac ethernet
#gm*	at pci? dev ? function ?	# gmac ethernet (old)

# PCI SCSI controllers
#adv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
#adw*	at pci? dev ? function ?	# AdvanSys 9x0UW[D], 3940U[2,3]W SCSI
#ahc*	at pci? dev ? function ?	# Adaptec 294x, aic78x0 SCSI
#bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
#esiop*	at pci? dev ? function ?	# NCR 53c8xx SCSI (enhanced)
#iha*	at pci? dev ? function ?	# Initio INIC-940/950 SCSI
#isp*	at pci? dev ? function ?	# Qlogic ISP 10x0/2xx0 SCSI/Fibre Chan
#pcscp*	at pci? dev ? function ?	# AMD Am53c974 PCscsi-PCI SCSI
#siop*	at pci? dev ? function ?	# NCR 53c8xx SCSI
#trm*	at pci? dev ? function ?	# Tekram DC-395U/UW/F, DC-315/U SCSI

# Other  PCI devices
ofb*	at pci? dev ? function ?	# Generic Open Firmware Framebuffer
# OFB_ENABLE_CACHE speeds up the console on many machines, but should
# not be enabled on some older machines, such as the rev. A-D iMacs.
#options 	OFB_ENABLE_CACHE	# Speed up console
pciide* at pci? dev ? function ? flags 0x0000	# GENERIC pciide driver
acardide* at pci? dev ? function ?	# Acard IDE controllers
aceride* at pci? dev ? function ?	# Acer Lab IDE controllers
artsata* at pci? dev ? function ?	# Intel i31244 SATA controller
cmdide* at pci? dev ? function ?	# CMD tech IDE controllers
cypide* at pci? dev ? function ?	# Cypress IDE controllers
hptide* at pci? dev ? function ?	# Triones/HighPoint IDE controllers
optiide* at pci? dev ? function ?	# Opti IDE controllers
pdcide* at pci? dev ? function ?	# Promise IDE controllers
pdcsata* at pci? dev ? function ?	# Promise SATA150 controllers
satalink* at pci? dev ? function ?	# SiI SATALink controllers
siside* at pci? dev ? function ?	# SiS IDE controllers
slide*  at pci? dev ? function ?	# Symphony Labs IDE controllers
viaide* at pci? dev ? function ?	# VIA/AMD/Nvidia IDE controllers
wdc*	at pci? dev ? function ?	# Kauai ATA
cbb*	at pci? dev ? function ?	# PCI-CardBus bridge
obio*	at pci? dev ? function ?
#macofcons0 at pci? dev ? function ?	# OpenFirmware console (for debugging)

bmtphy*	at mii? phy ?			# Broadcom BCM5201/BCM5202 PHYs
ukphy*	at mii? phy ?			# generic unknown PHYs

# PCI serial interfaces
com*	at puc? port ?			# 16x50s on "universal" comm boards
cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
#cz*	at pci? dev ? function ?	# Cyclades-Z multi-port serial boards

bktr*   at      pci? dev ? function ?           # Brooktree video/audio capture/tuner
radio*  at      bktr?

bm*	at obio?			# bmac ethernet
mc*	at obio?			# MACE ethernet
esp*	at obio? flags 0x00ff		# 53c9x SCSI
mesh*	at obio? flags 0xffff		# MESH SCSI
nvram*	at obio?			# nvram
adb*	at obio?			# Apple Desktop Bus
apm0	at adb?				# APM emulation
aed*	at adb?				# ADB Event Device
akbd*	at adb?				# ADB keyboard
ams*	at adb?				# ADB mouse
abtn*	at adb?
zsc*	at obio?
zstty*	at zsc? channel ?
mediabay* at obio?
wdc*	at mediabay? flags 0
# awacs is disabled because on most systems (7300 - 9600 PowerMacs,
# many kinds of G4s), very heavy load can cause the machine to lock
# up. ONLY enable this if your machine is never under heavy load, or
# you'd rather have audio than worry about occasional lockups.
#awacs*	at obio?			# Apple audio device
#ki2c*	at obio?			# Keywest I2C
wi*	at obio?			# AirMac
#snapper* at obio?			# Snapper audio device

cardslot* at cbb?
cardbus* at cardslot?
pcmcia*	at cardslot?

com*	at pcmcia? function ?		# Modems and serial cards
wdc*	at pcmcia? function ?		# PCMCIA IDE controllers
ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
mbe*	at pcmcia? function ?		# MB8696x based Ethernet
ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
awi*	at pcmcia? function ?		# BayStack 650/660 (802.11FH/DS)
wi*	at pcmcia? function ?		# Lucent WaveLan IEEE (802.11)
atw*	at cardbus? dev ? function ?	# ADMtek ADM8211 (802.11)
ex*	at cardbus? dev ? function ?	# 3Com 3C575TX
tlp*	at cardbus? dev ? function ?	# DECchip 21143
rtk*	at cardbus? dev ? function ?	# Realtek 8129/8139

wsdisplay0 at ofb? console ?
wskbd0	at akbd? console ?
wsmouse* at ams?

# Cryptographic Devices

# PCI cryptographic devices
# (disabled, requires opencrypto framework which requires generic softints
#hifn*	at pci? dev ? function ?	# Hifn 7755/7811/795x
#ubsec*	at pci? dev ? function ?	# Broadcom 5501/5601/580x/582x


scsibus* at scsi?

sd*	at scsibus? target ? lun ?	# SCSI disks
st*	at scsibus? target ? lun ?	# SCSI tape drives
cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
ch*	at scsibus? target ? lun ?	# SCSI autochangers
ss*	at scsibus? target ? lun ?	# SCSI scanners
uk*	at scsibus? target ? lun ?	# SCSI unknown

wdc*	at obio? flags 0x1
atabus* at ata?
wd*	at atabus? drive ? flags 0x0000

atapibus* at atapi?

cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown

# PCI USB controllers
ohci*	at pci? dev ? function ?	# USB Open Host Controller
ehci*	at pci? dev ? function ?	# USB Enhanced Host Controller

ohci*	at cardbus? dev ? function ?	# USB Open Host Controller
ehci*	at cardbus? dev ? function ?	# USB Enhanced Host Controller

usb*	at ohci?					# USB bus support
usb*	at ehci?					# USB bus support
uhub*	at usb?						# USB Hubs
uhub*	at uhub? port ? configuration ? interface ?

uhidev*	at uhub? port ? configuration ? interface ?	# USB HID device

ums*	at uhidev? reportid ?				# USB Mice
wsmouse* at ums?

ukbd*	at uhidev? reportid ?				# USB Keyboards
wskbd*	at ukbd? console ?

uhid*	at uhidev? reportid ?				# USB Generic HID

ulpt*	at uhub? port ? configuration ? interface ?	# USB Printer

umodem*	at uhub? port ? configuration ?			# USB Modem
ucom*	at umodem?

umass*	at uhub? port ? configuration ? interface ?	# USB Mass Storage
atapibus* at umass?
scsibus* at umass? channel ?

uaudio*	at uhub? port ? configuration ?			# USB audio

# D-Link DSB-R100 USB FM radio tuner
udsbr* at uhub? port ?
radio* at udsbr?

# USB Ethernet adapters
aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
axe*	at uhub? port ?		# ASIX AX88172 based adapters
cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
url*	at uhub? port ?		# Realtek RTL8150L based adapters
udav*	at uhub? port ?		# Davicom DM9601 based adapters

ukyopon* at uhub? port ?				# Kyocera AIR-EDGE PHONE
ucom*	at ukyopon? portno ?

#uscanner* at uhub? port ?				# USB scanners
#uyap* at uhub? port ?					# Y@P firmware loader
ugen*	at uhub? port ? configuration ? interface ?	# USB Generic driver

# PCI IEEE1394 controllers
fwohci*	at pci? dev ? function ?	# IEEE1394 Open Host Controller
#fwlynx* at pci? dev ? function ?	# IEEE1394 TI Lynx Controller
fw*	at fwbus?			# IP over 1394

# IEEE1394 nodes
fwnode* at fwbus? idhi ? idlo ?
sbpscsi* at fwnode?
scsibus* at sbpscsi?

# Audio Devices

# PCI audio devices
#clcs*	at pci? dev ? function ?	# Cirrus Logic CS4280
#cmpci*	at pci? dev ? function ?	# C-Media CMI8338/8738
eap*	at pci? dev ? function ?	# Ensoniq AudioPCI
#eso*	at pci? dev ? function ?	# ESS Solo-1 PCI AudioDrive
#fms*	at pci? dev ? function ?	# Forte Media FM801
#sv*	at pci? dev ? function ?	# S3 SonicVibes

# OPL[23] FM synthesizers
#opl*	at cmpci? flags 1
#opl*	at eso?
#opl*	at fms?

# Audio support
#audio* at awacs?
#audio*	at clcs?
#audio*	at cmpci?
audio*	at eap?
#audio*	at eso?
#audio*	at fms?
#audio*	at snapper?
#audio*	at sv?
audio*	at uaudio?

# MPU 401 UARTs
#mpu*	at cmpci?
#mpu*	at eso?
#mpu*	at fms?

# MIDI support
midi*	at eap?			# 137[01] MIDI port
#midi*	at mpu?			# MPU 401

#pseudo-device 	crypto			# opencrypto framework
					# (disabled, requires generic softints)
pseudo-device	vnd		4	# disk-like interface to files
#options 	VND_COMPRESSION		# compressed vnd(4)
#pseudo-device	ccd		4	# concatenated/striped disk devices
pseudo-device	cgd		4	# cryptographic disk devices
#pseudo-device	raid		8	# RAIDframe disk driver
#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
# Options to enable various other RAIDframe RAID types.
# options 	RF_INCLUDE_EVENODD=1
# options 	RF_INCLUDE_RAID5_RS=1
# options 	RF_INCLUDE_PARITYLOGGING=1
# options 	RF_INCLUDE_CHAINDECLUSTER=1
# options 	RF_INCLUDE_INTERDECLUSTER=1
# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
# options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
pseudo-device	fss		4	# file system snapshot device
pseudo-device	md		1	# memory disk device
pseudo-device	loop			# network loopback
pseudo-device	bpfilter	8	# packet filter
pseudo-device	ipfilter		# IP filter (firewall) and NAT
#pseudo-device	ppp		2	# Point-to-Point Protocol
#pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
#pseudo-device	sl		2	# Serial Line IP
pseudo-device	tun		4	# network tunneling over tty
pseudo-device	tap			# virtual Ethernet
#pseudo-device	gre		2	# generic L3 over IP tunnel
pseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
pseudo-device	vlan			# IEEE 802.1q encapsulation
pseudo-device	bridge			# simple inter-network bridging
#options	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
pseudo-device	pty			# pseudo-terminals
pseudo-device	rnd			# /dev/random and in-kernel generator
pseudo-device	openfirm		# /dev/openfirm
pseudo-device	wsmux			# mouse and keyboard multiplexor
pseudo-device	clockctl		# user control of clock subsystem
pseudo-device	ksyms			# /dev/ksyms
pseudo-device	nsmb			# SMB requester
#pseudo-device	pf			# PF packet filter
#pseudo-device	pflog			# PF log if