GENERIC3X revision 1.124
11.124Sdholland# $NetBSD: GENERIC3X,v 1.124 2014/08/23 20:27:00 dholland Exp $
21.11Sgwr
31.18Sgwr# GENERIC Sun3X (3/80, 3/470)
41.18Sgwr# Supports root on: ie0, le0, sd*, ...
51.1Sjeremy
61.82Stsutsuiinclude 	"arch/sun3/conf/std.sun3x"
71.50Satatat
81.50Satatatoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
91.1Sjeremy
101.124Sdholland#ident		"GENERIC3X-$Revision: 1.124 $"
111.100Stsutsui
121.100Stsutsuimakeoptions	COPTS="-Os"	# bootloader has size limit (~2MB)
131.82Stsutsui
141.19Sgwr# Machines to be supported by this kernel
151.82Stsutsui#options 	FPU_EMULATE	# XXX - Ever needed?
161.82Stsutsui#options 	HAVE_IOCACHE	# XXX - Not yet supported.
171.1Sjeremy
181.1Sjeremy# Needs to be set per system.  i.e change these as you see fit
191.1Sjeremymaxusers	4
201.1Sjeremy
211.1Sjeremy# Standard system options
221.10Sgwroptions 	KTRACE		# system call tracing
231.10Sgwroptions 	SYSVMSG		# System V message queues
241.10Sgwroptions 	SYSVSEM		# System V semaphores
251.10Sgwroptions 	SYSVSHM		# System V shared memory
261.108Stsutsui
271.110Stsutsui#options 	MODULAR		# new style module(7) framework
281.108Stsutsui
291.10Sgwr#options 	INSECURE	# disable kernel security level
301.100Stsutsui#options 	USERCONF	# userconf(4) support
311.96Stsutsui#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
321.64Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
331.1Sjeremy
341.55Swiz# Enable experimental buffer queue strategy for better responsiveness under 
351.54Stsutsui# high disk I/O load. Use it with caution - it's not proven to be stable yet.
361.73Stsutsui#options 	BUFQ_READPRIO
371.73Stsutsui#options 	BUFQ_PRIOCSCAN
381.54Stsutsui
391.10Sgwr# Which kernel debugger?  Uncomment either this:
401.1Sjeremyoptions 	DDB
411.1Sjeremy# ... or these for KGDB (gdb remote target)
421.44Slukem#makeoptions	DEBUG="-g"	# debugging symbols for gdb
431.1Sjeremy#options 	KGDB
441.43Slukem#options 	KGDB_DEV=0x0C01	# ttya=0C00 ttyb=0C01
451.10Sgwr
461.10Sgwr# Other debugging options
471.14Slukem#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
481.10Sgwr#options 	DEBUG		# kernel debugging code
491.10Sgwr#options 	DIAGNOSTIC	# extra kernel sanity checking
501.10Sgwr#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
511.10Sgwr#options 	PMAP_DEBUG
521.10Sgwr#options 	SCSIDEBUG
531.9Smjacob#options 	SCSIVERBOSE		# Verbose SCSI errors
541.1Sjeremy
551.39Swiz# Compatibility options
561.10Sgwroptions 	COMPAT_SUNOS	# can run SunOS 4.1.1 executables
571.25Skleink#options 	COMPAT_SVR4	# can run SVR4 executables
581.10Sgwroptions 	COMPAT_43	# and 4.3BSD and ...
591.124Sdhollandoptions 	COMPAT_10	# NetBSD 1.0,
601.124Sdhollandoptions 	COMPAT_11	# NetBSD 1.1,
611.124Sdhollandoptions 	COMPAT_12	# NetBSD 1.2,
621.124Sdhollandoptions 	COMPAT_13	# NetBSD 1.3,
631.124Sdhollandoptions 	COMPAT_14	# NetBSD 1.4,
641.124Sdhollandoptions 	COMPAT_15	# NetBSD 1.5,
651.124Sdhollandoptions 	COMPAT_16	# NetBSD 1.6,
661.124Sdhollandoptions 	COMPAT_20	# NetBSD 2.0,
671.124Sdhollandoptions 	COMPAT_30	# NetBSD 3.0,
681.124Sdhollandoptions 	COMPAT_40	# NetBSD 4.0,
691.124Sdhollandoptions 	COMPAT_50	# NetBSD 5.0,
701.124Sdhollandoptions 	COMPAT_60	# NetBSD 6.0, and
711.124Sdhollandoptions 	COMPAT_70	# NetBSD 7.0 binary compatibility.
721.38Schsoptions 	COMPAT_AOUT_M68K # support for NetBSD a.out executables
731.23Sgwr#options 	COMPAT_LINUX	# can run Linux/m68k executables
741.38Schsoptions 	EXEC_AOUT	# support for a.out executables
751.40Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
761.96Stsutsuioptions 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
771.10Sgwr
781.1Sjeremy# Filesystem options
791.10Sgwrfile-system	FFS		# Berkeley Fast Filesystem
801.10Sgwrfile-system	NFS		# Sun NFS client support
811.7Slukemfile-system	CD9660		# ISO 9660 + Rock Ridge file system
821.5Sjeremyfile-system	MSDOSFS		# MS-DOS FAT file system
831.7Slukemfile-system	FDESC		# /dev/fd/*
841.7Slukemfile-system	KERNFS		# /kern
851.7Slukemfile-system	NULLFS		# loopback file system
861.100Stsutsui#file-system	OVERLAY		# overlay file system
871.7Slukemfile-system	PROCFS		# /proc
881.100Stsutsui#file-system	UNION		# union file system
891.7Slukemfile-system	MFS		# memory-based filesystem
901.80Schristosfile-system	PTYFS		# /dev/pts/N support
911.107Schsfile-system	TMPFS		# Efficient memory file-system
921.85Stsutsui#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
931.1Sjeremy
941.1Sjeremyoptions 	NFSSERVER	# nfs server support
951.111Sbouyer#options 	QUOTA		# legacy UFS quotas
961.111Sbouyer#options 	QUOTA2		# new, in-filesystem UFS quotas
971.112Swiz#options 	FFS_EI		# FFS Endian Independent support
981.114Sdhollandoptions 	WAPBL		# File system journaling support
991.96Stsutsui#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
1001.100Stsutsuioptions 	FFS_NO_SNAPSHOT	# No FFS snapshot support
1011.28Stsutsui
1021.1Sjeremy# Networking options
1031.81Sisakioptions 	INET		# IP protocol stack support
1041.28Stsutsuioptions 	INET6		# IPV6
1051.28Stsutsui#options 	IPSEC		# IP security
1061.28Stsutsui#options 	IPSEC_DEBUG	# debug for IP security
1071.7Slukem#options 	GATEWAY		# IP packet forwarding
1081.40Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1091.10Sgwr
1101.62Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
1111.62Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
1121.62Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
1131.62Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1141.62Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1151.62Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1161.62Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1171.62Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
1181.62Sabs#options 	ALTQ_PRIQ	# Priority Queueing
1191.62Sabs#options 	ALTQ_RED	# Random Early Detection
1201.62Sabs#options 	ALTQ_RIO	# RED with IN/OUT
1211.62Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
1221.62Sabs
1231.10Sgwr# Work-around for root on slow servers (insurance...)
1241.1Sjeremyoptions 	NFS_BOOT_RWSIZE=1024
1251.18Sgwroptions 	NFS_BOOT_BOOTPARAM
1261.1Sjeremy
1271.1Sjeremyconfig		netbsd root on ? type ?
1281.1Sjeremy
1291.18Sgwr# On-board I/O space (required)
1301.18Sgwrinclude "arch/sun3/conf/obio.sun3x"
1311.18Sgwr
1321.18Sgwr# On-board memory (optional)
1331.18Sgwr# See frame-buffers
1341.18Sgwrobmem0 at mainbus?
1351.18Sgwr
1361.18Sgwr# VME bus support (optional)
1371.18Sgwr# One unit for each address space
1381.18Sgwrvme0 at mainbus? # A16/D16
1391.18Sgwrvme1 at mainbus? # A16/D32
1401.18Sgwrvme2 at mainbus? # A24/D16
1411.18Sgwrvme3 at mainbus? # A24/D32
1421.18Sgwrvme4 at mainbus? # A32/D16
1431.18Sgwrvme5 at mainbus? # A32/D32
1441.18Sgwr
1451.1Sjeremy#
1461.1Sjeremy# Serial ports
1471.1Sjeremy#
1481.11Sgwrzstty0	at zsc1 channel 0	# ttya
1491.11Sgwrzstty1	at zsc1 channel 1	# ttyb
1501.1Sjeremy
1511.11Sgwrkbd0	at zsc0 channel 0	# keyboard
1521.11Sgwrms0	at zsc0 channel 1	# mouse
1531.1Sjeremy
1541.1Sjeremy#
1551.1Sjeremy# Network devices
1561.1Sjeremy#
1571.10Sgwr
1581.18Sgwr# Intel Ethernet (onboard, or VME)
1591.10Sgwrie0 at obio0 addr 0x65000000 ipl 3
1601.44Slukemie1 at vme2 addr 0xe88000 ipl 3 vect 0x75
1611.1Sjeremy
1621.1Sjeremy# Lance Ethernet (only onboard)
1631.1Sjeremyle0 at obio0 addr 0x65002000 ipl 3
1641.1Sjeremy
1651.1Sjeremy#
1661.1Sjeremy# Disk and tape devices
1671.1Sjeremy#
1681.1Sjeremy
1691.11Sgwr# Emulex SCSI (3/80 only)
1701.24Sgwr# Both `dma' and `esp' are needed.
1711.24Sgwr# The following flags may be set for the NCR53c94 based esp driver:
1721.6Sgwr#	bits 0-7:  disable disconnect/reselect for the corresponding target
1731.24Sgwr#	bits 8-15: disable synchronous negotiation for target [bit-8]
1741.6Sgwr#
1751.24Sgwrdma0 at obio0 addr 0x66001000 ipl 2
1761.69Stsutsuiesp0 at obio0 addr 0x66000000 ipl 2 flags 0x000000
1771.5Sjeremy
1781.5Sjeremy# Floppy drive
1791.5Sjeremyfdc0 at obio0 addr 0x6e000000 ipl 6 vect 0x40
1801.44Slukemfd0	at fdc0	# First (and only) floppy drive.
1811.12Sgwr
1821.12Sgwr# Sun3 "si" SCSI controller (NCR 5380)
1831.12Sgwr# This driver has several flags which may be enabled using
1841.12Sgwr# the "flags" directive.  Valid flags are:
1851.12Sgwr#
1861.12Sgwr# 0x000ff	Set (1<<target) to disable disconnect/reselect
1871.12Sgwr# 0x0ff00	Set (1<<(target+8)) to disable parity checking
1881.12Sgwr# 0x10000	Set this bit to disable DMA interrupts (poll)
1891.12Sgwr# 0x20000	Set this bit to disable DMA entirely (use PIO)
1901.12Sgwr#
1911.12Sgwr# For example: "flags 0x1000f" would disable DMA interrupts,
1921.12Sgwr# and disable disconnect/reselect for targets 0-3
1931.44Slukemsi0 at vme2 addr 0x200000 ipl 2 vect 0x40
1941.44Slukemsi1 at vme2 addr 0x204000 ipl 2 vect 0x41
1951.18Sgwr
1961.18Sgwr# Xylogics 450/451 controllers (VME A16/D16)
1971.18Sgwrxyc0 at vme0 addr 0xee40 ipl 2 vect 0x48
1981.18Sgwrxyc1 at vme0 addr 0xee48 ipl 2 vect 0x49
1991.18Sgwrxy* at xyc? drive ?
2001.18Sgwr
2011.18Sgwr# Xylogics 7053 controllers (VME A16/D32)
2021.18Sgwrxdc0 at vme1 addr 0xee80 ipl 2 vect 0x44
2031.18Sgwrxdc1 at vme1 addr 0xee90 ipl 2 vect 0x45
2041.18Sgwrxd* at xdc? drive ?
2051.18Sgwr
2061.18Sgwr# Xylogics 472 tape controllers?
2071.1Sjeremy
2081.1Sjeremy#
2091.1Sjeremy# Frame buffer devices
2101.1Sjeremy#
2111.1Sjeremy
2121.19Sgwr# P4 Monochrome frame buffer.
2131.44Slukembwtwo0	at obmem0 addr 0x50300000
2141.19Sgwr
2151.19Sgwr# P4 8-bit color frame buffer
2161.19Sgwrcgfour0 at obmem0 addr 0x50300000
2171.19Sgwr
2181.19Sgwr# P4 accelerated 8-bit color frame buffer
2191.23Sgwr# cgsix0 at obmem0 addr 0x50000000
2201.19Sgwr
2211.19Sgwr# P4 24-bit color frame buffer
2221.19Sgwr# cgeight0 at obmem0 addr 0x50300000
2231.19Sgwr
2241.19Sgwr# Sun-3 color board, or CG5 8-bit frame buffer (VME A24/D16).
2251.19Sgwr# This driver is going to need work in its mmap function.
2261.19Sgwr# cgtwo0 at vme2 addr 0x400000 ipl 4 vect 0xA8
2271.19Sgwr
2281.19Sgwr# Support for the CG9 24-bit frame buffer (VME A32/D32).
2291.19Sgwr# cgnine0 at vme5 addr 0x08000000 ipl 4 vect 0xAA
2301.1Sjeremy
2311.1Sjeremy#
2321.1Sjeremy# SCSI infrastructure
2331.1Sjeremy#
2341.1Sjeremyscsibus* at scsi?
2351.1Sjeremy
2361.1Sjeremysd* at scsibus? target ? lun ?		# SCSI disks
2371.1Sjeremyst* at scsibus? target ? lun ?		# SCSI tapes
2381.1Sjeremycd* at scsibus? target ? lun ?		# SCSI CD-ROMs
2391.100Stsutsui#ch* at scsibus? target ? lun ?		# SCSI changer devices
2401.100Stsutsui#ss* at scsibus? target ? lun ?		# SCSI scanners
2411.1Sjeremyuk* at scsibus? target ? lun ?		# unknown SCSI devices
2421.1Sjeremy
2431.102Stsutsui#
2441.102Stsutsui# accept filters
2451.102Stsutsuipseudo-device	accf_data		# "dataready" accept filter
2461.102Stsutsuipseudo-device	accf_http		# "httpready" accept filter
2471.102Stsutsui
2481.1Sjeremy# Memory-disk drivers
2491.109Shannkenpseudo-device	md		
2501.1Sjeremy
2511.1Sjeremy# Misc.
2521.119Schristospseudo-device	loop			# network loopback
2531.86Srpaulopseudo-device	bpfilter		# packet filter
2541.89Stsutsui#pseudo-device	carp			# Common Address Redundancy Protocol
2551.87Scubepseudo-device	sl			# CSLIP
2561.87Scubepseudo-device	ppp			# PPP
2571.100Stsutsui#pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
2581.100Stsutsui#pseudo-device	tun			# network tunneling over tty
2591.100Stsutsui#pseudo-device	tap			# virtual Ethernet
2601.87Scube#pseudo-device	gre			# generic L3 over IP tunnel
2611.1Sjeremy#pseudo-device	ipfilter		# ip filter
2621.100Stsutsui#pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
2631.87Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
2641.100Stsutsui#pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
2651.36Stsutsuipseudo-device	vlan			# IEEE 802.1q encapsulation
2661.100Stsutsui#pseudo-device	bridge			# simple inter-network bridging
2671.100Stsutsui#pseudo-device	agr			# IEEE 802.3ad link aggregation
2681.57Stsutsui#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
2691.1Sjeremy
2701.33Sjdolecekpseudo-device	pty			# pseudo-terminals
2711.87Scubepseudo-device	vnd			# paging to files
2721.76Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
2731.119Schristos#pseudo-device	ccd			# concatenated disks
2741.119Schristos#pseudo-device	cgd			# cryptographic disk devices
2751.120Schristos#pseudo-device	raid			# RAIDframe disk driver
2761.29Stsutsui#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
2771.47Soster# Options to enable various other RAIDframe RAID types.
2781.96Stsutsui#options 	RF_INCLUDE_EVENODD=1
2791.96Stsutsui#options 	RF_INCLUDE_RAID5_RS=1
2801.96Stsutsui#options 	RF_INCLUDE_PARITYLOGGING=1
2811.96Stsutsui#options 	RF_INCLUDE_CHAINDECLUSTER=1
2821.96Stsutsui#options 	RF_INCLUDE_INTERDECLUSTER=1
2831.96Stsutsui#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
2841.96Stsutsui#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
2851.106Spooka#pseudo-device	fss			# file system snapshot device
2861.51Slukempseudo-device	clockctl		# user control of clock subsystem
2871.57Stsutsuipseudo-device	ksyms			# /dev/ksyms
2881.61Sitojun#pseudo-device	pf			# PF packet filter
2891.61Sitojun#pseudo-device	pflog			# PF log if
2901.84Stsutsui
2911.84Stsutsui# Veriexec
2921.84Stsutsui#
2931.84Stsutsui# a pseudo device needed for veriexec
2941.120Schristos#pseudo-device	veriexec
2951.84Stsutsui#
2961.84Stsutsui# Uncomment the fingerprint methods below that are desired. Note that
2971.84Stsutsui# removing fingerprint methods will have almost no impact on the kernel
2981.84Stsutsui# code size.
2991.84Stsutsui#
3001.84Stsutsui#options VERIFIED_EXEC_FP_RMD160
3011.84Stsutsui#options VERIFIED_EXEC_FP_SHA256
3021.84Stsutsui#options VERIFIED_EXEC_FP_SHA384
3031.84Stsutsui#options VERIFIED_EXEC_FP_SHA512
3041.84Stsutsui#options VERIFIED_EXEC_FP_SHA1
3051.84Stsutsui#options VERIFIED_EXEC_FP_MD5
306