GENERIC3X revision 1.137
11.137Srin# $NetBSD: GENERIC3X,v 1.137 2020/08/10 06:32:58 rin 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.131Smrg#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
91.1Sjeremy
101.137Srin#ident		"GENERIC3X-$Revision: 1.137 $"
111.100Stsutsui
121.137Srinmakeoptions	COPTS="-Os -fno-unwind-tables -fno-omit-frame-pointer"
131.137Srin	# Bootloader has size limit (~2MB). -fno-omit-frame-pointer is
141.137Srin	# necessary for backtraces in DDB.
151.82Stsutsui
161.19Sgwr# Machines to be supported by this kernel
171.82Stsutsui#options 	FPU_EMULATE	# XXX - Ever needed?
181.82Stsutsui#options 	HAVE_IOCACHE	# XXX - Not yet supported.
191.1Sjeremy
201.1Sjeremy# Needs to be set per system.  i.e change these as you see fit
211.1Sjeremymaxusers	4
221.1Sjeremy
231.1Sjeremy# Standard system options
241.10Sgwroptions 	KTRACE		# system call tracing
251.10Sgwroptions 	SYSVMSG		# System V message queues
261.10Sgwroptions 	SYSVSEM		# System V semaphores
271.10Sgwroptions 	SYSVSHM		# System V shared memory
281.108Stsutsui
291.110Stsutsui#options 	MODULAR		# new style module(7) framework
301.125Sjnemeth#options 	MODULAR_DEFAULT_AUTOLOAD
311.108Stsutsui
321.10Sgwr#options 	INSECURE	# disable kernel security level
331.100Stsutsui#options 	USERCONF	# userconf(4) support
341.131Smrgoptions 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
351.131Smrg#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
361.1Sjeremy
371.130Ssevan# Alternate buffer queue strategies for better responsiveness under high
381.130Ssevan# disk I/O load.
391.73Stsutsui#options 	BUFQ_READPRIO
401.73Stsutsui#options 	BUFQ_PRIOCSCAN
411.54Stsutsui
421.10Sgwr# Which kernel debugger?  Uncomment either this:
431.1Sjeremyoptions 	DDB
441.1Sjeremy# ... or these for KGDB (gdb remote target)
451.44Slukem#makeoptions	DEBUG="-g"	# debugging symbols for gdb
461.1Sjeremy#options 	KGDB
471.43Slukem#options 	KGDB_DEV=0x0C01	# ttya=0C00 ttyb=0C01
481.10Sgwr
491.10Sgwr# Other debugging options
501.14Slukem#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
511.10Sgwr#options 	DEBUG		# kernel debugging code
521.10Sgwr#options 	DIAGNOSTIC	# extra kernel sanity checking
531.10Sgwr#options 	PMAP_DEBUG
541.10Sgwr#options 	SCSIDEBUG
551.9Smjacob#options 	SCSIVERBOSE		# Verbose SCSI errors
561.1Sjeremy
571.39Swiz# Compatibility options
581.131Smrg# Originally in NetBSD 1.0, but limited to 6.0 for size.
591.131Smrg#include 	"conf/compat_netbsd10.config"
601.131Smrginclude 	"conf/compat_netbsd60.config"
611.131Smrg#options 	COMPAT_AOUT_M68K # support for NetBSD a.out executables
621.23Sgwr#options 	COMPAT_LINUX	# can run Linux/m68k executables
631.131Smrg#options 	EXEC_AOUT	# support for a.out executables
641.131Smrg#options 	COMPAT_SUNOS	# can run SunOS 4.1.1 executables
651.10Sgwr
661.1Sjeremy# Filesystem options
671.10Sgwrfile-system	FFS		# Berkeley Fast Filesystem
681.10Sgwrfile-system	NFS		# Sun NFS client support
691.7Slukemfile-system	CD9660		# ISO 9660 + Rock Ridge file system
701.5Sjeremyfile-system	MSDOSFS		# MS-DOS FAT file system
711.131Smrg#file-system	FDESC		# /dev/fd/*
721.131Smrg#file-system	KERNFS		# /kern
731.7Slukemfile-system	NULLFS		# loopback file system
741.100Stsutsui#file-system	OVERLAY		# overlay file system
751.7Slukemfile-system	PROCFS		# /proc
761.100Stsutsui#file-system	UNION		# union file system
771.7Slukemfile-system	MFS		# memory-based filesystem
781.80Schristosfile-system	PTYFS		# /dev/pts/N support
791.131Smrg# Disabled as 20KB larger than MFS.
801.131Smrg#file-system	TMPFS		# Efficient memory file-system
811.85Stsutsui#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
821.1Sjeremy
831.131Smrg#options 	NFSSERVER	# nfs server support
841.111Sbouyer#options 	QUOTA		# legacy UFS quotas
851.111Sbouyer#options 	QUOTA2		# new, in-filesystem UFS quotas
861.112Swiz#options 	FFS_EI		# FFS Endian Independent support
871.131Smrg#options 	WAPBL		# File system journaling support
881.96Stsutsui#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
891.100Stsutsuioptions 	FFS_NO_SNAPSHOT	# No FFS snapshot support
901.28Stsutsui
911.1Sjeremy# Networking options
921.81Sisakioptions 	INET		# IP protocol stack support
931.131Smrg#options 	INET6		# IPV6
941.28Stsutsui#options 	IPSEC		# IP security
951.28Stsutsui#options 	IPSEC_DEBUG	# debug for IP security
961.7Slukem#options 	GATEWAY		# IP packet forwarding
971.40Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
981.10Sgwr
991.62Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
1001.62Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
1011.62Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
1021.62Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1031.62Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1041.62Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1051.62Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1061.62Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
1071.62Sabs#options 	ALTQ_PRIQ	# Priority Queueing
1081.62Sabs#options 	ALTQ_RED	# Random Early Detection
1091.62Sabs#options 	ALTQ_RIO	# RED with IN/OUT
1101.62Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
1111.62Sabs
1121.10Sgwr# Work-around for root on slow servers (insurance...)
1131.1Sjeremyoptions 	NFS_BOOT_RWSIZE=1024
1141.18Sgwroptions 	NFS_BOOT_BOOTPARAM
1151.1Sjeremy
1161.1Sjeremyconfig		netbsd root on ? type ?
1171.1Sjeremy
1181.18Sgwr# On-board I/O space (required)
1191.18Sgwrinclude "arch/sun3/conf/obio.sun3x"
1201.18Sgwr
1211.18Sgwr# On-board memory (optional)
1221.18Sgwr# See frame-buffers
1231.18Sgwrobmem0 at mainbus?
1241.18Sgwr
1251.18Sgwr# VME bus support (optional)
1261.18Sgwr# One unit for each address space
1271.18Sgwrvme0 at mainbus? # A16/D16
1281.18Sgwrvme1 at mainbus? # A16/D32
1291.18Sgwrvme2 at mainbus? # A24/D16
1301.18Sgwrvme3 at mainbus? # A24/D32
1311.18Sgwrvme4 at mainbus? # A32/D16
1321.18Sgwrvme5 at mainbus? # A32/D32
1331.18Sgwr
1341.1Sjeremy#
1351.1Sjeremy# Serial ports
1361.1Sjeremy#
1371.11Sgwrzstty0	at zsc1 channel 0	# ttya
1381.11Sgwrzstty1	at zsc1 channel 1	# ttyb
1391.1Sjeremy
1401.11Sgwrkbd0	at zsc0 channel 0	# keyboard
1411.11Sgwrms0	at zsc0 channel 1	# mouse
1421.1Sjeremy
1431.1Sjeremy#
1441.1Sjeremy# Network devices
1451.1Sjeremy#
1461.10Sgwr
1471.18Sgwr# Intel Ethernet (onboard, or VME)
1481.10Sgwrie0 at obio0 addr 0x65000000 ipl 3
1491.44Slukemie1 at vme2 addr 0xe88000 ipl 3 vect 0x75
1501.1Sjeremy
1511.1Sjeremy# Lance Ethernet (only onboard)
1521.1Sjeremyle0 at obio0 addr 0x65002000 ipl 3
1531.1Sjeremy
1541.1Sjeremy#
1551.1Sjeremy# Disk and tape devices
1561.1Sjeremy#
1571.1Sjeremy
1581.11Sgwr# Emulex SCSI (3/80 only)
1591.24Sgwr# Both `dma' and `esp' are needed.
1601.24Sgwr# The following flags may be set for the NCR53c94 based esp driver:
1611.6Sgwr#	bits 0-7:  disable disconnect/reselect for the corresponding target
1621.24Sgwr#	bits 8-15: disable synchronous negotiation for target [bit-8]
1631.6Sgwr#
1641.24Sgwrdma0 at obio0 addr 0x66001000 ipl 2
1651.69Stsutsuiesp0 at obio0 addr 0x66000000 ipl 2 flags 0x000000
1661.5Sjeremy
1671.5Sjeremy# Floppy drive
1681.5Sjeremyfdc0 at obio0 addr 0x6e000000 ipl 6 vect 0x40
1691.44Slukemfd0	at fdc0	# First (and only) floppy drive.
1701.12Sgwr
1711.12Sgwr# Sun3 "si" SCSI controller (NCR 5380)
1721.12Sgwr# This driver has several flags which may be enabled using
1731.12Sgwr# the "flags" directive.  Valid flags are:
1741.12Sgwr#
1751.12Sgwr# 0x000ff	Set (1<<target) to disable disconnect/reselect
1761.12Sgwr# 0x0ff00	Set (1<<(target+8)) to disable parity checking
1771.12Sgwr# 0x10000	Set this bit to disable DMA interrupts (poll)
1781.12Sgwr# 0x20000	Set this bit to disable DMA entirely (use PIO)
1791.12Sgwr#
1801.12Sgwr# For example: "flags 0x1000f" would disable DMA interrupts,
1811.12Sgwr# and disable disconnect/reselect for targets 0-3
1821.44Slukemsi0 at vme2 addr 0x200000 ipl 2 vect 0x40
1831.44Slukemsi1 at vme2 addr 0x204000 ipl 2 vect 0x41
1841.18Sgwr
1851.18Sgwr# Xylogics 450/451 controllers (VME A16/D16)
1861.18Sgwrxyc0 at vme0 addr 0xee40 ipl 2 vect 0x48
1871.18Sgwrxyc1 at vme0 addr 0xee48 ipl 2 vect 0x49
1881.18Sgwrxy* at xyc? drive ?
1891.18Sgwr
1901.18Sgwr# Xylogics 7053 controllers (VME A16/D32)
1911.18Sgwrxdc0 at vme1 addr 0xee80 ipl 2 vect 0x44
1921.18Sgwrxdc1 at vme1 addr 0xee90 ipl 2 vect 0x45
1931.18Sgwrxd* at xdc? drive ?
1941.18Sgwr
1951.18Sgwr# Xylogics 472 tape controllers?
1961.1Sjeremy
1971.1Sjeremy#
1981.1Sjeremy# Frame buffer devices
1991.1Sjeremy#
2001.1Sjeremy
2011.19Sgwr# P4 Monochrome frame buffer.
2021.44Slukembwtwo0	at obmem0 addr 0x50300000
2031.19Sgwr
2041.19Sgwr# P4 8-bit color frame buffer
2051.19Sgwrcgfour0 at obmem0 addr 0x50300000
2061.19Sgwr
2071.19Sgwr# P4 accelerated 8-bit color frame buffer
2081.23Sgwr# cgsix0 at obmem0 addr 0x50000000
2091.19Sgwr
2101.19Sgwr# P4 24-bit color frame buffer
2111.19Sgwr# cgeight0 at obmem0 addr 0x50300000
2121.19Sgwr
2131.19Sgwr# Sun-3 color board, or CG5 8-bit frame buffer (VME A24/D16).
2141.19Sgwr# This driver is going to need work in its mmap function.
2151.19Sgwr# cgtwo0 at vme2 addr 0x400000 ipl 4 vect 0xA8
2161.19Sgwr
2171.19Sgwr# Support for the CG9 24-bit frame buffer (VME A32/D32).
2181.19Sgwr# cgnine0 at vme5 addr 0x08000000 ipl 4 vect 0xAA
2191.1Sjeremy
2201.1Sjeremy#
2211.1Sjeremy# SCSI infrastructure
2221.1Sjeremy#
2231.1Sjeremyscsibus* at scsi?
2241.1Sjeremy
2251.1Sjeremysd* at scsibus? target ? lun ?		# SCSI disks
2261.1Sjeremyst* at scsibus? target ? lun ?		# SCSI tapes
2271.1Sjeremycd* at scsibus? target ? lun ?		# SCSI CD-ROMs
2281.100Stsutsui#ch* at scsibus? target ? lun ?		# SCSI changer devices
2291.100Stsutsui#ss* at scsibus? target ? lun ?		# SCSI scanners
2301.1Sjeremyuk* at scsibus? target ? lun ?		# unknown SCSI devices
2311.1Sjeremy
2321.102Stsutsui#
2331.102Stsutsui# accept filters
2341.131Smrg#pseudo-device	accf_data		# "dataready" accept filter
2351.131Smrg#pseudo-device	accf_http		# "httpready" accept filter
2361.102Stsutsui
2371.1Sjeremy# Memory-disk drivers
2381.109Shannkenpseudo-device	md		
2391.1Sjeremy
2401.1Sjeremy# Misc.
2411.119Schristospseudo-device	loop			# network loopback
2421.86Srpaulopseudo-device	bpfilter		# packet filter
2431.89Stsutsui#pseudo-device	carp			# Common Address Redundancy Protocol
2441.87Scubepseudo-device	sl			# CSLIP
2451.87Scubepseudo-device	ppp			# PPP
2461.100Stsutsui#pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
2471.100Stsutsui#pseudo-device	tun			# network tunneling over tty
2481.100Stsutsui#pseudo-device	tap			# virtual Ethernet
2491.87Scube#pseudo-device	gre			# generic L3 over IP tunnel
2501.132Smaxv#pseudo-device	npf			# NPF packet filter
2511.100Stsutsui#pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
2521.87Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
2531.100Stsutsui#pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
2541.36Stsutsuipseudo-device	vlan			# IEEE 802.1q encapsulation
2551.100Stsutsui#pseudo-device	bridge			# simple inter-network bridging
2561.100Stsutsui#pseudo-device	agr			# IEEE 802.3ad link aggregation
2571.1Sjeremy
2581.33Sjdolecekpseudo-device	pty			# pseudo-terminals
2591.87Scubepseudo-device	vnd			# paging to files
2601.76Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
2611.119Schristos#pseudo-device	ccd			# concatenated disks
2621.119Schristos#pseudo-device	cgd			# cryptographic disk devices
2631.120Schristos#pseudo-device	raid			# RAIDframe disk driver
2641.29Stsutsui#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
2651.47Soster# Options to enable various other RAIDframe RAID types.
2661.96Stsutsui#options 	RF_INCLUDE_EVENODD=1
2671.96Stsutsui#options 	RF_INCLUDE_RAID5_RS=1
2681.96Stsutsui#options 	RF_INCLUDE_PARITYLOGGING=1
2691.96Stsutsui#options 	RF_INCLUDE_CHAINDECLUSTER=1
2701.96Stsutsui#options 	RF_INCLUDE_INTERDECLUSTER=1
2711.96Stsutsui#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
2721.96Stsutsui#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
2731.106Spooka#pseudo-device	fss			# file system snapshot device
2741.51Slukempseudo-device	clockctl		# user control of clock subsystem
2751.57Stsutsuipseudo-device	ksyms			# /dev/ksyms
2761.84Stsutsui
2771.84Stsutsui# Veriexec
2781.134Ssevan# include "dev/veriexec.config"
279