GENERIC revision 1.71
11.71Smartin# $NetBSD: GENERIC,v 1.71 2001/12/28 12:22:01 martin Exp $
21.69Sgmcgarry#
31.69Sgmcgarry# GENERIC machine description file
41.69Sgmcgarry# 
51.69Sgmcgarry# This machine description file is used to generate the default NetBSD
61.69Sgmcgarry# kernel.  The generic kernel does not include all options, subsystems
71.69Sgmcgarry# and device drivers, but should be useful for most applications.
81.69Sgmcgarry#
91.69Sgmcgarry# The machine description file can be customised for your specific
101.69Sgmcgarry# machine to reduce the kernel size and improve its performance.
111.1Soki#
121.69Sgmcgarry# For further information on compiling NetBSD kernels, see the config(8)
131.69Sgmcgarry# man page.
141.1Soki#
151.69Sgmcgarry# For further information on hardware support for this architecture, see
161.69Sgmcgarry# the intro(4) man page.  For further information about kernel options
171.69Sgmcgarry# for this architecture, see the options(4) man page.  For an explanation
181.69Sgmcgarry# of each device driver in this file see the section 4 man page for the
191.69Sgmcgarry# device.
201.1Soki
211.69Sgmcgarryinclude 	"arch/x68k/conf/std.x68k"
221.41Shubertf
231.71Smartin#ident 		"GENERIC-$Revision: 1.71 $"
241.6Soki
251.48Sminouramaxusers	8
261.1Soki
271.22Sminoura## System kernel configuration.  See options(4) for more detail.
281.22Sminoura
291.22Sminoura
301.22Sminoura## Options for variants of the m68k MPU
311.22Sminoura## you must have at least the correct one; REQUIRED
321.10Sokioptions 	M68030
331.10Sokioptions 	M68040
341.14Sokioptions 	M68060
351.55Sminoura## If you want an optimized kernel for a specific processor, use either:
361.55Sminoura#makeoptions	CMACHFLAGS="-m68030"
371.55Sminoura#makeoptions	CMACHFLAGS="-m68040 -Wa,-m68030 -Wa,-m68851"
381.55Sminoura#makeoptions	CMACHFLAGS="-m68060 -Wa,-m68030 -Wa,-m68851"
391.1Soki
401.22Sminoura
411.22Sminoura#### System options specific to the x68k port
421.22Sminoura
431.29Sminouraoptions 	EXTENDED_MEMORY		# support for >16MB memory
441.22Sminouraoptions 	FPU_EMULATE		# software fpu emulation for MC68030
451.22Sminouraoptions 	FPSP			# floating point emulation for MC68040
461.22Sminouraoptions 	M060SP			# int/fp emulation for MC68060
471.56Sminoura#options 	JUPITER			# support for "Jupiter-X" accelerator
481.38Sminoura#options 	MAPPEDCOPY		# use page mapping for large copyin/copyout
491.28Sminoura#options 	ZSCONSOLE,ZSCN_SPEED="9600"	# use serial console
501.22Sminoura
511.22Sminoura
521.22Sminoura#### System options that are the same for all ports
531.22Sminoura
541.22Sminoura## Root device configuration: change the ?'s if you are going to use a
551.22Sminoura## nonstandard root partition (other than where the kernel is booted from)
561.22Sminoura## and/or nonstandard root type (not ffs or nfs).  Normally this can be
571.22Sminoura## automagically determined at boot time.
581.22Sminoura
591.22Sminouraconfig		netbsd	root on ? type ?
601.28Sminoura#config		netbsd	root on sd0 type ffs
611.22Sminoura
621.22Sminoura## RTC is offset from GMT; -540 means JST-9
631.7Sperryoptions 	RTC_OFFSET=-540	# hardware clock is this many mins. west of GMT
641.1Soki
651.22Sminoura## System call tracing (see ktrace(1)).
661.22Sminouraoptions 	KTRACE
671.1Soki
681.22Sminoura## Collect statistics on kernel malloc's and free's.  This does have a
691.22Sminoura## significant performance hit on slower machines, so it is intended for
701.22Sminoura## diagnostic use only.
711.22Sminoura#options 	KMEMSTATS
721.22Sminoura
731.22Sminoura## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
741.22Sminouraoptions 	SYSVMSG		# System V message queues
751.22Sminouraoptions 	SYSVSEM		# System V semaphores
761.65Slukem#options 	SEMMNI=10	# number of semaphore identifiers
771.65Slukem#options 	SEMMNS=60	# number of semaphores in system
781.65Slukem#options 	SEMUME=10	# max number of undo entries per process
791.65Slukem#options 	SEMMNU=30	# number of undo structures in system
801.22Sminouraoptions 	SYSVSHM		# System V shared memory
811.22Sminoura#options 	SHMMAXPGS=1024	# 1024 pages is the default
821.22Sminoura
831.22Sminoura## Loadable kernel module support
841.28Sminoura#options 	LKM
851.22Sminoura
861.22Sminoura## NFS boot options; not supported currently: needs nfsboot program
871.22Sminoura#options 	NFS_BOOT_BOOTPARAM
881.22Sminoura#options 	NFS_BOOT_BOOTP
891.22Sminoura#options 	NFS_BOOT_DHCP
901.22Sminoura
911.22Sminoura#### Debugging options
921.22Sminoura
931.22Sminoura## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
941.22Sminoura## serial console break or keyboard reset, where the PROM would normally
951.22Sminoura## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
961.28Sminoura#options 	DDB			# kernel dynamic debugger
971.28Sminoura#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
981.28Sminoura#options 	DDB_ONPANIC=1		# see also sysctl(8): `ddb.onpanic'
991.28Sminoura#options 	PANICBUTTON		# interrupt switch invokes DDB
1001.22Sminoura
1011.22Sminoura## You may also use gdb, on another computer connected to this machine over
1021.64Slukem## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
1031.64Slukem## KGDB_DEV is a dev_t encoded device number of the serial port to use.
1041.22Sminoura## KGDB is not supported for now.
1051.64Slukem#options 	KGDB			# support for kernel gdb
1061.64Slukem#options 	KGDB_DEV=0xc00		# kgdb device number
1071.64Slukem#options 	KGDB_DEVRATE=9600	# baud rate
1081.22Sminoura
1091.22Sminoura## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
1101.22Sminoura## such that gdb(1) can be used on a kernel coredump.
1111.22Sminoura
1121.65Slukem#makeoptions	DEBUG="-g"
1131.22Sminoura
1141.22Sminoura## Adds code to the kernel that does internal consistency checks, and will
1151.22Sminoura## cause the kernel to panic if corruption of internal data structures
1161.22Sminoura## is detected.
1171.22Sminoura#options 	DIAGNOSTIC	# extra kernel sanity checking
1181.22Sminoura
1191.22Sminoura## Enable (possibly expensive) debugging code that may also display messages
1201.22Sminoura## on the system console
1211.22Sminoura#options 	DEBUG
1221.22Sminoura
1231.22Sminoura## Make SCSI error messages more verbose when explaining their meanings.
1241.48Sminoura#options 	SCSIVERBOSE
1251.22Sminoura
1261.22Sminoura## `INSECURE' turns off the kernel security level (securelevel = 0 always).
1271.22Sminoura## This allows writing to /dev/mem, loading kernel modules while multi-user,
1281.22Sminoura## and other insecurities good only for development work.  Do not use this
1291.22Sminoura## option on a production machine.
1301.22Sminoura#options 	INSECURE
1311.22Sminoura
1321.22Sminoura## Allow non-root users to grab /dev/console with programs such as xconsole.
1331.22Sminoura## `xconsole' therefore does not need setuid root with this option enabled.
1341.22Sminoura#options 	UCONSOLE
1351.22Sminoura
1361.22Sminoura## `FDSCRIPTS' allows non-readable but executable scripts by providing a
1371.22Sminoura## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
1381.22Sminoura## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
1391.22Sminoura## opaque file mechanism.  Perl calls this "secure setuid scripts."
1401.22Sminoura
1411.22Sminoura#options 	FDSCRIPTS
1421.22Sminoura#options 	SETUIDSCRIPTS
1431.22Sminoura
1441.22Sminoura## Options for compatibility with previous releases foreign system binaries.
1451.22Sminoura
1461.22Sminouraoptions 	COMPAT_43	# 4.3BSD system interfaces
1471.22Sminouraoptions 	COMPAT_09	# NetBSD 0.9 binary compatibility
1481.22Sminouraoptions 	COMPAT_10	# NetBSD 1.0 binary compatibility
1491.22Sminouraoptions 	COMPAT_11	# NetBSD 1.1 binary compatibility
1501.22Sminouraoptions 	COMPAT_12	# NetBSD 1.2 binary compatibility
1511.22Sminouraoptions 	COMPAT_13	# NetBSD 1.3 binary compatibility
1521.36Saugustssoptions 	COMPAT_14	# NetBSD 1.4 binary compatibility
1531.70Sminouraoptions 	COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
1541.22Sminoura#options 	COMPAT_M68K4K	# NetBSD/m68k4k binaries
1551.22Sminoura#options 	COMPAT_SUNOS	# SunOS 4.x binary compatibility; broken
1561.33Skleink#options 	COMPAT_SVR4	# SVR4 binary compatibility; broken
1571.25Sitohy#options 	COMPAT_LINUX	# Linux/m68k binary compatibility
1581.60Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
1591.22Sminoura
1601.22Sminoura## File systems.
1611.22Sminourafile-system	FFS		# Berkeley Fast Filesystem
1621.22Sminourafile-system	NFS		# Sun NFS-compatible filesystem client
1631.22Sminourafile-system	KERNFS		# kernel data-structure filesystem
1641.34Sminoura#file-system	NULLFS		# NULL layered filesystem (buggy)
1651.40Swrstuden#file-system 	OVERLAY		# overlay file system
1661.22Sminourafile-system	MFS		# memory-based filesystem
1671.22Sminoura#file-system	FDESC		# user file descriptor filesystem
1681.22Sminourafile-system	UMAPFS		# uid/gid remapping filesystem
1691.34Sminoura#file-system	LFS		# Log-structured filesystem (experimental)
1701.34Sminoura#file-system	PORTAL		# portal filesystem (experimental)
1711.22Sminourafile-system	PROCFS		# /proc
1721.22Sminourafile-system	CD9660		# ISO 9660 + Rock Ridge file system
1731.34Sminoura#file-system	UNION		# union file system (a little buggy)
1741.22Sminourafile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
1751.22Sminoura#file-system 	ADOSFS		# AmigaDOS filesystem
1761.22Sminoura
1771.22Sminoura## File system options.
1781.22Sminouraoptions 	NFSSERVER	# Sun NFS-compatible filesystem server
1791.48Sminoura#options 	QUOTA		# FFS quotas
1801.22Sminoura#options 	FFS_EI		# FFS Endian Independent support
1811.65Slukemoptions 	SOFTDEP		# FFS soft updates support.
1821.39Sitojun
1831.22Sminoura## Network protocol support.  In most environments, INET is required.
1841.22Sminouraoptions 	INET		# IP (Internet Protocol) v4
1851.39Sitojunoptions 	INET6		# IPV6
1861.39Sitojun#options 	IPSEC		# IP security
1871.39Sitojun#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
1881.39Sitojun#options 	IPSEC_DEBUG	# debug for IP security
1891.22Sminoura#options 	GATEWAY		# packet forwarding ("router switch")
1901.22Sminoura#options 	MROUTING	# packet forwarding of multicast packets
1911.22Sminoura#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
1921.22Sminoura#options 	NS		# Xerox NS networking
1931.22Sminoura#options 	NSIP		# Xerox NS tunneling over IP
1941.22Sminoura#options 	ISO,TPIP	# OSI networking
1951.22Sminoura#options 	EON		# OSI tunneling over IP
1961.22Sminoura#options 	CCITT,LLC,HDLC	# X.25 packet switched protocol
1971.48Sminoura#options 	NETATALK	# AppleTalk (over Ethernet) protocol
1981.48Sminoura#options 	NTP		# Network Time Protocol in-kernel support
1991.22Sminoura#options 	PPS_SYNC	# Add serial line synchronization for NTP
2001.35Schristosoptions 	PFIL_HOOKS	# Add pfil(9) hooks, intended for custom LKMs.
2011.48Sminoura#options 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
2021.48Sminoura#options 	PPP_BSDCOMP	# Add BSD compression to ppp device
2031.48Sminoura#options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
2041.48Sminoura#options 	PPP_FILTER	# Add active filters for ppp (via bpf)
2051.60Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
2061.22Sminoura
2071.22Sminoura
2081.22Sminoura#### Device configurations
2091.22Sminoura
2101.28Sminoura## Fundamental devices; see also std.x68k
2111.28Sminouradmac0	at intio0 addr 0xe84000		# DMA controler
2121.28Sminouraxel0	at intio0
2131.28Sminouraopm0	at intio0 addr 0xe90000		# OPM: required for fdc
2141.22Sminoura
2151.22Sminoura## Display devices and console
2161.22Sminouragrfbus0	at mainbus0			# bitmapped displays
2171.22Sminouragrf0	at grfbus0			# multiplane graphics
2181.22Sminouragrf1	at grfbus0			# flexible graphics
2191.22Sminoura
2201.28Sminourakbd0	at mfp0				# standard keyboard
2211.22Sminouraite0	at grf0				# internal terminal emulator
2221.34Sminouraoptions 	ITE_KERNEL_ATTR=4	# bold for kernel messages
2231.28Sminoura					# see /sys/arch/x68k/dev/itevar.h
2241.29Sminourapseudo-device	pow		2	# software power switch
2251.22Sminoura
2261.22Sminoura## floppy disks
2271.28Sminourafdc0	at intio0 addr 0xe94000 intr 96 dma 0 dmaintr 100 # floppy controler
2281.22Sminourafd*	at fdc0 unit ?			# builtin floppy drives
2291.22Sminoura
2301.22Sminoura## SCSI devices
2311.28Sminourascsirom0 at intio0 addr 0xfc0000		# Built-in SCSI BIOS
2321.28Sminourascsirom1 at intio0 addr 0xea0020		# External SCSI BIOS
2331.28Sminouraspc0	at scsirom0				# genuin SCSI
2341.28Sminouraspc1	at scsirom1				# genuin SCSI
2351.22Sminourascsibus* at spc?
2361.28Sminouramha0	at scsirom1				# Mankai MK-HA1 (Mach-2)
2371.22Sminourascsibus* at mha0
2381.22Sminoura
2391.22Sminourasd*	at scsibus? target ? lun ?	# SCSI disks
2401.22Sminouracd*	at scsibus? target ? lun ?	# SCSI CD-ROMs
2411.48Sminoura#st*	at scsibus? target ? lun ?	# SCSI tapes
2421.22Sminoura#ss*	at scsibus? target ? lun ?	# SCSI scanners
2431.48Sminoura#ch*	at scsibus? target ? lun ?	# SCSI changer devices
2441.22Sminoura#uk*	at scsibus? target ? lun ?	# SCSI unknown devices
2451.22Sminoura
2461.44Sminoura## Ports
2471.28Sminourazsc0	at intio0 addr 0xe98000 intr 112
2481.22Sminourazstty0	at zsc0 channel 0		# built-in RS-232C
2491.22Sminourams0	at zsc0 channel 1		# standard mouse
2501.28Sminoura#zsc1	at intio0 addr 0xeafc00 intr 113
2511.22Sminoura#zstty2	at zsc1 channel 0
2521.22Sminoura#zstty3	at zsc1 channel 1
2531.28Sminoura#zsc2	at intio0 addr 0xeafc10 intr 114
2541.22Sminoura#zstty4	at zsc2 channel 0
2551.22Sminoura#zstty5	at zsc2 channel 1
2561.44Sminourapar0	at intio0 addr 0xe8c000 	# Builtin printer port
2571.22Sminoura
2581.29Sminourapseudo-device	sram			# battery-backuped static RAM
2591.29Sminourapseudo-device	bell			# OPM bell
2601.22Sminoura
2611.28Sminouraxcom0	at mainbus0			# NS16550 fast serial
2621.28Sminouraxcom1	at mainbus0
2631.22Sminoura
2641.57Sminoura## Audio device
2651.57Sminouravs0 at intio0 addr 0xe92000 dma 3 dmaintr 106
2661.57Sminouraaudio*	at vs?
2671.22Sminoura
2681.22Sminoura## Network interfaces
2691.67Sminourane*	at intio0 addr 0xece300 intr 249	# Nereid Ethernet
2701.28Sminouraneptune0 at intio0 addr 0xece000 intr 249	# Neptune-X
2711.28Sminouraneptune1 at intio0 addr 0xece400 intr 249	# Neptune-X at alt. addr.
2721.63Sisakine*	at neptune? addr 0x300			# NE2000 or clone
2731.22Sminoura
2741.22Sminoura
2751.22Sminoura#### Pseudo devices
2761.22Sminoura
2771.22Sminoura## A disk-like interface to files.  Can be used to create floppy, CD,
2781.22Sminoura## miniroot images, etc.
2791.22Sminoura
2801.22Sminourapseudo-device	vnd	4
2811.22Sminoura
2821.22Sminoura## Concatenated and striped disks; with this, you can create a software-based
2831.22Sminoura## disk array similar to a "RAID 0" setup.  See ccd(4).
2841.22Sminoura
2851.48Sminoura#pseudo-device	ccd	4
2861.23Soster
2871.23Soster## RAIDframe disk driver: software RAID driver.  See raid(4).
2881.23Soster
2891.48Sminoura#pseudo-device	raid	4
2901.43Ssimonb#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
2911.22Sminoura
2921.22Sminoura## Memory disk device, used on boot floppies with compressed
2931.22Sminoura## kernel-plus-root-disk images.
2941.22Sminoura
2951.22Sminoura#pseudo-device	md	1
2961.22Sminoura
2971.22Sminoura## Loopback network interface; required
2981.22Sminourapseudo-device	loop
2991.22Sminoura
3001.22Sminoura## SLIP and CSLIP interfaces, for IP over a serial line.
3011.22Sminourapseudo-device	sl		1
3021.22Sminoura
3031.22Sminoura## PPP, the successor to SLIP.  See pppd(8).
3041.22Sminourapseudo-device	ppp		1
3051.71Smartin
3061.71Smartin## PPP over Ethernet (RFC 2516)
3071.71Smartinpseudo-device	pppoe
3081.22Sminoura
3091.22Sminoura## Network "tunnel" device, allowing protocol stacks to run in the userland.
3101.22Sminoura## This is used by the third-party user-mode "ppp" program, and others.
3111.48Sminoura#pseudo-device	tun		4
3121.24Shwr
3131.24Shwr## Generic L3 over IP tunnel
3141.24Shwr#pseudo-device	gre		2	# generic L3 over IP tunnel
3151.22Sminoura
3161.22Sminoura## Berkeley Packet Filter, required to run RARPD.  A generic C-language
3171.22Sminoura## interface that allows selective examining of incoming packets.
3181.48Sminourapseudo-device	bpfilter	4
3191.22Sminoura
3201.22Sminoura## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
3211.22Sminoura## one example of the use of the IP Filter.
3221.48Sminoura#pseudo-device	ipfilter
3231.22Sminoura
3241.39Sitojun## for IPv6
3251.48Sminourapseudo-device	gif		1	# IPv[46] over IPv[46] tunnel (RFC1933)
3261.39Sitojun#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
3271.45Sitojun#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
3281.58Shubertf
3291.58Shubertf## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
3301.58Shubertfpseudo-device	vlan
3311.61Satatat
3321.61Satatat## Simple inter-network traffic bridging
3331.66Satatatpseudo-device	bridge
3341.22Sminoura
3351.22Sminoura#### Other device configuration
3361.22Sminoura
3371.22Sminoura## Pseudo ttys, required for network logins and programs like screen.
3381.34Sminoura
3391.52Sjdolecekpseudo-device	pty			# pseudo-terminals
3401.22Sminoura
3411.22Sminoura## Random device, used to implement /dev/random (a source of random noise),
3421.22Sminoura## and generate randomness for some kernel formulae.
3431.34Sminoura
3441.53Sitojunpseudo-device	rnd
345