GENERIC revision 1.239
11.239Snat# $NetBSD: GENERIC,v 1.239 2025/04/03 01:54:46 nat Exp $
21.21Scgd#
31.117Sgmcgarry# GENERIC machine description file
41.117Sgmcgarry# 
51.117Sgmcgarry# This machine description file is used to generate the default NetBSD
61.117Sgmcgarry# kernel.  The generic kernel does not include all options, subsystems
71.117Sgmcgarry# and device drivers, but should be useful for most applications.
81.117Sgmcgarry#
91.117Sgmcgarry# The machine description file can be customised for your specific
101.117Sgmcgarry# machine to reduce the kernel size and improve its performance.
111.117Sgmcgarry#
121.117Sgmcgarry# For further information on compiling NetBSD kernels, see the config(8)
131.117Sgmcgarry# man page.
141.117Sgmcgarry#
151.117Sgmcgarry# For further information on hardware support for this architecture, see
161.117Sgmcgarry# the intro(4) man page.  For further information about kernel options
171.117Sgmcgarry# for this architecture, see the options(4) man page.  For an explanation
181.117Sgmcgarry# of each device driver in this file see the section 4 man page for the
191.117Sgmcgarry# device.
201.1Sbriggs
211.224Smrginclude 	"arch/mac68k/conf/std.mac68k"
221.95Shubertf
231.125Satatatoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
241.125Satatat
251.239Snat#ident 		"GENERIC-$Revision: 1.239 $"
261.216Stsutsui
271.231Srinmakeoptions	COPTS="-O2 -fno-reorder-blocks -fno-omit-frame-pointer"
281.231Srin	# See share/mk/sys.mk. -fno-omit-frame-pointer is necessary for
291.231Srin	# backtraces in DDB.
301.2Sbriggs
311.74Sscottrmaxusers	16		# estimated number of users
321.71Sscottr
331.71Sscottr# CPU support.  At least one is REQUIRED.
341.71Sscottroptions 	M68040
351.71Sscottroptions 	M68030
361.71Sscottroptions 	M68020		# Note:  must have 68851 PMMU
371.71Sscottr
381.71Sscottr# CPU-related options.
391.71Sscottroptions 	FPSP
401.71Sscottroptions 	FPU_EMULATE
411.2Sbriggs
421.215Sjklos# Support for 128 meg SIMMs in Centris / Quadra 610, 650 and 800 machines.
431.215Sjklos# You need to set the total memory in the MacOS Booter.
441.215Sjklos#options 	DJMEMCMAX
451.215Sjklos
461.234Srin# Use hard-coded memory size in MB, instead of parameter given by Booter.
471.234Srin# Workaround for Booter bug by which max memory is restricted to 255MB.
481.234Srin#options 	MAC68K_MEMSIZE=256
491.234Srin
501.2Sbriggs# Standard system options
511.71Sscottr
521.71Sscottroptions 	INSECURE	# disable kernel security levels
531.71Sscottr
541.71Sscottroptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
551.71Sscottr#options 	NTP		# NTP phase/frequency locked loop
561.71Sscottr
571.71Sscottroptions 	KTRACE		# system call tracing via ktrace(1)
581.71Sscottr
591.71Sscottroptions 	SYSVMSG		# System V-like message queues
601.71Sscottroptions 	SYSVSEM		# System V-like semaphores
611.71Sscottroptions 	SYSVSHM		# System V-like memory sharing
621.120Sjdolecek
631.129Slukemoptions 	USERCONF	# userconf(4) support
641.120Sjdolecek#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
651.147Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
661.134Sjunyoung
671.225Ssevan# Alternate buffer queue strategies for better responsiveness under high
681.225Ssevan# disk I/O load.
691.157Stsutsui#options 	BUFQ_READPRIO
701.228Ssevanoptions 	BUFQ_PRIOCSCAN
711.54Sscottr
721.71Sscottr# Diagnostic/debugging support options
731.121Sfredb#options 	DIAGNOSTIC	# cheap kernel consistency checks
741.71Sscottr#options 	DEBUG		# expensive debugging checks/support
751.188Shauke#options 	LOCKDEBUG	# kernel lock debugging
761.114Slukemoptions 	DDB			# in-kernel debugger
771.70Slukem#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
781.114Slukem#options 	KGDB			# remote debugger
791.114Slukem#options 	KGDB_DEV=0xc01		# kgdb device number (dev_t)
801.114Slukem#options 	KGDB_DEVRATE=38400	# baud rate
811.71Sscottr#makeoptions	DEBUG="-g"	# compile full symbol table
821.54Sscottr
831.54Sscottr# Compatibility options
841.224Smrginclude 	"conf/compat_netbsd10.config"
851.71Sscottr#options 	COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
861.71Sscottr
871.121Sfredb# The following is needed to run pre-NetBSD 1.6 binaries under ELF.
881.123Sshibaoptions 	COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
891.123Sshibaoptions 	EXEC_AOUT	# support for exec'ing a.out
901.121Sfredb
911.121Sfredb#options 	COMPAT_LINUX	# compatibility with Linux/m68k binaries
921.233Snia#options 	COMPAT_OSSAUDIO	# compatibility with Linux/m68k binaries
931.121Sfredb#options 	COMPAT_M68K4K	# compatibility with NetBSD/m68k4k binaries
941.121Sfredb#options 	COMPAT_SUNOS	# compatibility with SunOS 4.x binaries
951.2Sbriggs
961.65Sscottr# File systems
971.71Sscottrfile-system 	FFS		# UFS
981.71Sscottrfile-system 	EXT2FS		# second extended file system (linux)
991.71Sscottrfile-system 	LFS		# log-structured file system
1001.71Sscottrfile-system 	MFS		# memory file system
1011.71Sscottrfile-system 	NFS		# Network File System client
1021.71Sscottrfile-system 	CD9660		# ISO 9660 + Rock Ridge file system
1031.71Sscottrfile-system 	MSDOSFS		# MS-DOS file system
1041.71Sscottrfile-system 	FDESC		# /dev/fd
1051.71Sscottrfile-system 	KERNFS		# /kern
1061.71Sscottrfile-system 	NULLFS		# loopback file system
1071.94Swrstudenfile-system 	OVERLAY		# overlay file system
1081.195Spookafile-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
1091.71Sscottrfile-system 	PROCFS		# /proc
1101.71Sscottrfile-system 	UMAPFS		# NULLFS + uid and gid remapping
1111.71Sscottrfile-system 	UNION		# union file system
1121.90Sfredbfile-system 	CODA		# Venus/Coda distributed file system
1131.164Schristosfile-system	PTYFS		# /dev/pts/N support
1141.183Sjmmvfile-system	TMPFS		# Efficient memory file-system
1151.169Sreinoud#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
1161.179Sdillo#file-system	HFS		# experimental - Apple HFS+ (read-only)
1171.55Sthorpej
1181.65Sscottr# File system options
1191.235Ssimonb#options 	FFS_EI		# FFS Endian Independent support
1201.235Ssimonb#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
1211.200Sbouyeroptions 	QUOTA		# legacy UFS quotas
1221.200Sbouyeroptions 	QUOTA2		# new, in-filesystem UFS quotas
1231.235Ssimonboptions 	UFS_DIRHASH	# UFS Large Directory Hashing
1241.235Ssimonboptions 	UFS_EXTATTR	# Extended attribute support for UFS1
1251.204Sdhollandoptions 	WAPBL		# File system journaling support
1261.235Ssimonboptions 	LFS_DIRHASH	# LFS version of UFS_DIRHASH - experimental
1271.235Ssimonboptions 	NFSSERVER	# Network File System server
1281.92Sitojun
1291.7Sbriggs# Networking options
1301.71Sscottroptions 	GATEWAY		# packet forwarding
1311.71Sscottroptions 	INET		# IP + ICMP + TCP + UDP
1321.92Sitojunoptions 	INET6		# IPV6
1331.92Sitojun#options 	IPSEC		# IP security
1341.92Sitojun#options 	IPSEC_DEBUG	# debug for IP security
1351.71Sscottr#options 	MROUTING	# IP multicast routing
1361.148Smanu#options 	PIM		# Protocol Independent Multicast
1371.71Sscottroptions 	NETATALK	# AppleTalk networking protocols
1381.88Schristosoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1391.88Schristosoptions 	PPP_DEFLATE	# Deflate compression support for PPP
1401.88Schristosoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1411.111Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1421.71Sscottr
1431.145Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
1441.145Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
1451.145Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
1461.145Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1471.145Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1481.145Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1491.145Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1501.145Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
1511.145Sabs#options 	ALTQ_PRIQ	# Priority Queueing
1521.145Sabs#options 	ALTQ_RED	# Random Early Detection
1531.145Sabs#options 	ALTQ_RIO	# RED with IN/OUT
1541.145Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
1551.145Sabs
1561.71Sscottr# These options enable verbose messages for several subsystems.
1571.71Sscottr# Warning, these may compile large string tables into the kernel!
1581.71Sscottroptions 	SCSIVERBOSE	# human readable SCSI error messages
1591.1Sbriggs
1601.96Sscottr# wscons options
1611.96Sscottr#options 	WSEMUL_SUN		# sun terminal emulation
1621.96Sscottroptions 	WSEMUL_VT100		# VT100 / VT220 emulation
1631.207Sabsoptions 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
1641.96Sscottroptions 	WSDISPLAY_COMPAT_ITEFONT # use ite font (6x10)
1651.96Sscottr
1661.96Sscottr# rcons options; note that 1-bit and 8-bit displays are supported by default.
1671.96Sscottroptions 	RCONS_2BPP		# Support for 2-bit display
1681.96Sscottroptions 	RCONS_4BPP		# Support for 4-bit display
1691.96Sscottroptions 	RCONS_16BPP		# Support for 16-bit display
1701.96Sscottr
1711.9Sbriggs# Mac-specific options
1721.79Sscottr#options 	ALTXBUTTONS	# Map Opt-{1,2,3} to mouse buttons
1731.87Sbriggs#options 	DISABLE_EXT_CACHE # If really paranoid, disable IIci ext. cache
1741.79Sscottroptions 	GRF_COMPAT	# Include grf compatibility code
1751.77Sscottr#options 	MRG_ADB		# Use ROM-based ADB driver
1761.79Sscottroptions 	ZS_CONSOLE_ABORT
1771.84Sscottr
1781.93Sscottroptions 	NFS_BOOT_DHCP
1791.71Sscottr
1801.71Sscottr# Kernel root file system and dump configuration.
1811.55Sthorpejconfig		netbsd	root on ? type ?
1821.1Sbriggs
1831.71Sscottr#
1841.71Sscottr# Device configuration
1851.71Sscottr#
1861.71Sscottr
1871.71Sscottrmainbus0 at root
1881.71Sscottr
1891.71Sscottr
1901.71Sscottr# Basic Bus Support
1911.71Sscottr
1921.71Sscottr# On-board I/O bus support
1931.71Sscottrobio0 at mainbus?
1941.71Sscottr
1951.71Sscottr# NuBus support
1961.71Sscottrnubus0 at mainbus?
1971.71Sscottr
1981.71Sscottr
1991.71Sscottr# Console Devices
2001.71Sscottr
2011.71Sscottr# Apple Desktop Bus interface
2021.80Senderadb0	at obio?
2031.80Senderaed*	at adb?				# ADB event device
2041.96Sscottrakbd*	at adb?				# ADB keyboard
2051.96Sscottrams*	at adb?				# ADB mouse
2061.71Sscottr
2071.239Snat# Powerbook 1xx AC adaptor and battery
2081.239Snat#pbbat*	at aed?
2091.239Snat
2101.71Sscottr# Basic frame buffer support
2111.71Sscottrintvid0	at obio?			# Internal video hardware
2121.71Sscottrmacvid*	at nubus?			# NuBus video card
2131.71Sscottr
2141.71Sscottr# Device-independent frame buffer interface
2151.96Sscottrmacfb*	at intvid?
2161.96Sscottrmacfb*	at macvid?
2171.71Sscottr
2181.96Sscottr# Workstation Console devices
2191.99Sscottrwsdisplay* at macfb? console ?
2201.99Sscottrwskbd*	at akbd? console ?
2211.99Sscottrwsmouse* at ams?
2221.71Sscottr
2231.71Sscottr
2241.187Shauke# Centronics printer port
2251.187Shauke
2261.187Shauke# CSI Hurdler Centronics Parallel Interface
2271.205Shauke# CPI_CTC12_IS_TIMECOUNTER	0x01	Run counters 1+2 as timecounter	
2281.205Shaukecpi*	at nubus? flags 0x1
2291.187Shauke
2301.187Shauke
2311.71Sscottr# Serial Devices
2321.71Sscottr
2331.71Sscottr# On-board serial interface
2341.71Sscottrzsc0	at obio?
2351.71Sscottrzstty*	at zsc? channel ?
2361.71Sscottr
2371.71Sscottr
2381.71Sscottr# SCSI Controllers and Devices
2391.71Sscottr
2401.71Sscottr# SCSI controllers
2411.71Sscottr# XXX - use only one of ncrscsi or sbc
2421.151Schsncrscsi0 at obio? addr 0		# SCSI NCR 5380
2431.151Schs#sbc0	at obio? addr 0 flags 0x1	# MI SCSI NCR 5380
2441.151Schsesp0	at obio? addr 0			# SCSI NCR 53C9x
2451.151Schsesp1	at obio? addr 1			# SCSI NCR 53C9x
2461.71Sscottr
2471.71Sscottr# SCSI bus support
2481.71Sscottrscsibus* at scsi?
2491.71Sscottr
2501.71Sscottr# SCSI devices
2511.71Sscottrsd*	at scsibus? target ? lun ?	# SCSI disk drives
2521.71Sscottrst*	at scsibus? target ? lun ?	# SCSI tape drives
2531.71Sscottrcd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
2541.71Sscottrch*	at scsibus? target ? lun ?	# SCSI autochangers
2551.236Snatdse*	at scsibus? target ? lun ?	# SCSI ethernet (Dayna)
2561.71Sscottrse*	at scsibus? target ? lun ?	# SCSI ethernet
2571.71Sscottrss*	at scsibus? target ? lun ?	# SCSI scanners
2581.71Sscottruk*	at scsibus? target ? lun ?	# SCSI unknown
2591.126Sshiba
2601.126Sshiba# IDE controller and devices
2611.126Sshibawdc*	at obio? flags 0x1000
2621.141Slukematabus* at ata?
2631.140Sbouyerwd*	at atabus? drive ?
2641.84Sscottr
2651.84Sscottr
2661.84Sscottr# Miscellaneous mass storage devices
2671.84Sscottr
2681.84Sscottr# IWM floppy disk controller
2691.84Sscottriwm0	at obio?			# Sony driver (800K GCR)
2701.84Sscottrfd*	at iwm? drive ?
2711.71Sscottr
2721.71Sscottr
2731.71Sscottr# Network Interfaces
2741.71Sscottr
2751.71Sscottr# On-board Ethernet controllers
2761.71Sscottrsn*	at obio?			# SONIC-based (DP83932, DP83916)
2771.71Sscottrmc*	at obio?			# MACE-based
2781.71Sscottr
2791.71Sscottr# NuBus Ethernet controllers
2801.71Sscottrae*	at nubus?			# DP8390-based
2811.71Sscottrsn*	at nubus?			# SONIC-based (DP83932, DP83916)
2821.106Sbriggssm*	at nubus?			# SMC 91cxx-based
2831.128Sitojunnetdock*	at nubus?		# Asante NetDock, Newer Ether MicroDock
2841.71Sscottr
2851.106Sbriggsnsphy*	at mii? phy ?
2861.106Sbriggsukphy*	at mii? phy ?
2871.71Sscottr
2881.71Sscottr# Audio Devices
2891.71Sscottr
2901.71Sscottr# On-board audio hardware
2911.71Sscottrasc0	at obio?			# ASC/EASC audio
2921.71Sscottr
2931.71Sscottr# Pseudo-Devices
2941.71Sscottr
2951.71Sscottr# disk/mass storage pseudo-devices
2961.211Schristospseudo-device	ccd			# concatenated/striped disk devices
2971.211Schristos#pseudo-device	cgd			# cryptographic disk devices
2981.212Schristos#pseudo-device	raid			# RAIDframe disk driver
2991.98Ssimonb#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
3001.119Soster# Options to enable various other RAIDframe RAID types.
3011.119Soster# options	RF_INCLUDE_EVENODD=1
3021.119Soster# options	RF_INCLUDE_RAID5_RS=1
3031.119Soster# options	RF_INCLUDE_PARITYLOGGING=1
3041.119Soster# options	RF_INCLUDE_CHAINDECLUSTER=1
3051.119Soster# options	RF_INCLUDE_INTERDECLUSTER=1
3061.119Soster# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
3071.119Soster# options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
3081.196Spookapseudo-device	fss			# file system snapshot device
3091.198Shannkenpseudo-device	md			# memory disk device (ramdisk)
3101.212Schristospseudo-device	vcoda			# Venus/Coda distributed file system
3111.171Scubepseudo-device	vnd			# disk-like interface to files
3121.160Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
3131.71Sscottr
3141.71Sscottr# network pseudo-devices
3151.170Srpaulopseudo-device	bpfilter		# Berkeley packet filter
3161.228Ssevanpseudo-device	carp			# Common Address Redundancy Protocol
3171.226Smaxvpseudo-device	npf			# NPF packet filter
3181.71Sscottrpseudo-device	loop			# network loopback
3191.171Scubepseudo-device	ppp			# Point-to-Point Protocol
3201.118Smartinpseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
3211.171Scubepseudo-device	sl			# Serial Line IP
3221.171Scubepseudo-device	tun			# network tunneling over tty
3231.150Scubepseudo-device	tap			# virtual Ethernet
3241.171Scube#pseudo-device	gre			# generic L3 over IP tunnel
3251.171Scubepseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
3261.171Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
3271.172Spavelpseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
3281.109Sbouyerpseudo-device	vlan			# IEEE 802.1q encapsulation
3291.116Satatatpseudo-device	bridge			# simple inter-network bridging
3301.232Sroypseudo-device	vether			# Virtual Ethernet for bridge
3311.181Smartinpseudo-device	agr			# IEEE 802.3ad link aggregation
3321.71Sscottr
3331.191Stls#
3341.191Stls# accept filters
3351.191Stlspseudo-device   accf_data		# "dataready" accept filter
3361.191Stlspseudo-device   accf_http		# "httpready" accept filter
3371.191Stls
3381.71Sscottr# miscellaneous pseudo-devices
3391.96Sscottrpseudo-device	grf		2	# grf emulation for wscons
3401.96Sscottrpseudo-device	ite		1	# ite emulation for wscons
3411.108Sjdolecekpseudo-device	pty			# pseudo-terminals
3421.127Slukempseudo-device	clockctl		# user control of clock subsystem
3431.195Spookapseudo-device	putter			# for puffs and pud
3441.202Shaukepseudo-device	swwdog			# software watchdog driver
3451.71Sscottr
3461.101Sfredb# random number generator pseudo-device
3471.71Sscottr#options 	RND_COM			# use "com" randomness as well (BROKEN)
3481.138Sraggepseudo-device	ksyms			# /dev/ksyms
3491.167Selad
3501.228Ssevaninclude "dev/veriexec.config"
3511.237Sabs
3521.237Sabs# Pull in optional local configuration - always at end
3531.237Sabscinclude	"arch/mac68k/conf/GENERIC.local"
354