GENERIC revision 1.92
11.92Sdholland# $NetBSD: GENERIC,v 1.92 2014/08/23 20:27:00 dholland Exp $ 21.11Sgmcgarry# 31.11Sgmcgarry# GENERIC machine description file 41.11Sgmcgarry# 51.11Sgmcgarry# This machine description file is used to generate the default NetBSD 61.11Sgmcgarry# kernel. The generic kernel does not include all options, subsystems 71.11Sgmcgarry# and device drivers, but should be useful for most applications. 81.11Sgmcgarry# 91.11Sgmcgarry# The machine description file can be customised for your specific 101.11Sgmcgarry# machine to reduce the kernel size and improve its performance. 111.11Sgmcgarry# 121.11Sgmcgarry# For further information on compiling NetBSD kernels, see the config(8) 131.11Sgmcgarry# man page. 141.11Sgmcgarry# 151.11Sgmcgarry# For further information on hardware support for this architecture, see 161.11Sgmcgarry# the intro(4) man page. For further information about kernel options 171.11Sgmcgarry# for this architecture, see the options(4) man page. For an explanation 181.11Sgmcgarry# of each device driver in this file see the section 4 man page for the 191.11Sgmcgarry# device. 201.1Sfredette 211.11Sgmcgarry# Supports Sun2 (2/120, 2/170, 2/50, ...) 221.1Sfredette# Supports root on: ie0, sd*, ... 231.1Sfredette 241.11Sgmcgarryinclude "arch/sun2/conf/std.sun2" 251.1Sfredette 261.90Stsutsui#options INCLUDE_CONFIG_FILE # embed config file in kernel binary 271.16Satatat 281.92Sdholland#ident "GENERIC-$Revision: 1.92 $" 291.68Stsutsui 301.68Stsutsuimakeoptions COPTS="-Os" # optimize for size 311.1Sfredette 321.1Sfredette# Machines to be supported by this kernel 331.1Sfredette#options FPU_EMULATE 341.1Sfredette 351.1Sfredette# Needs to be set per system. i.e change these as you see fit 361.68Stsutsuimaxusers 4 371.1Sfredette 381.1Sfredette# Standard system options 391.1Sfredetteoptions KTRACE # system call tracing 401.1Sfredetteoptions SYSVMSG # System V message queues 411.1Sfredetteoptions SYSVSEM # System V semaphores 421.1Sfredetteoptions SYSVSHM # System V shared memory 431.1Sfredette#options INSECURE # disable kernel security level 441.68Stsutsui#options USERCONF # userconf(4) support 451.14Sjdolecek#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 461.90Stsutsui#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 471.21Sjunyoung 481.22Swiz# Enable experimental buffer queue strategy for better responsiveness under 491.21Sjunyoung# high disk I/O load. Use it with caution - it's not proven to be stable yet. 501.40Stsutsui#options BUFQ_READPRIO 511.40Stsutsui#options BUFQ_PRIOCSCAN 521.1Sfredette 531.1Sfredette# Which kernel debugger? Uncomment either this: 541.1Sfredetteoptions DDB 551.1Sfredette# ... or these for KGDB (gdb remote target) 561.80Smrg#makeoptions DEBUG="-g" # debugging symbols for gdb 571.1Sfredette#options KGDB 581.8Slukem#options KGDB_DEV=0x0C00 # ttya=0C00 ttyb=0C01 591.1Sfredette 601.1Sfredette# Other debugging options 611.1Sfredette#options DDB_HISTORY_SIZE=100 # enable history editing in DDB 621.1Sfredette#options DEBUG # kernel debugging code 631.1Sfredette#options DIAGNOSTIC # extra kernel sanity checking 641.1Sfredette#options KMEMSTATS # kernel memory statistics (vmstat -m) 651.1Sfredette#options PMAP_DEBUG 661.1Sfredette#options SCSIDEBUG 671.1Sfredette#options SCSIVERBOSE # Verbose SCSI errors 681.1Sfredette 691.3Swiz# Compatibility options 701.2Sfredette#options COMPAT_SUNOS # can run SunOS 4.1.1 executables 711.90Stsutsui#options COMPAT_43 # and 4.3BSD and ... 721.92Sdhollandoptions COMPAT_16 # NetBSD 1.6, 731.92Sdhollandoptions COMPAT_20 # NetBSD 2.0, 741.92Sdhollandoptions COMPAT_30 # NetBSD 3.0, 751.92Sdhollandoptions COMPAT_40 # NetBSD 4.0, 761.92Sdhollandoptions COMPAT_50 # NetBSD 5.0, 771.92Sdhollandoptions COMPAT_60 # NetBSD 6.0, and 781.92Sdhollandoptions COMPAT_70 # NetBSD 7.0 binary compatibility. 791.90Stsutsui#options COMPAT_AOUT_M68K # support for NetBSD a.out executables 801.6Sabs#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. 811.90Stsutsui#options EXEC_AOUT # support for a.out executables 821.33Schristosoptions COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 831.1Sfredette 841.1Sfredette# Filesystem options 851.1Sfredettefile-system FFS # Berkeley Fast Filesystem 861.1Sfredettefile-system NFS # Sun NFS client support 871.1Sfredettefile-system CD9660 # ISO 9660 + Rock Ridge file system 881.90Stsutsui#file-system FDESC # /dev/fd/* 891.1Sfredettefile-system KERNFS # /kern 901.1Sfredettefile-system NULLFS # loopback file system 911.68Stsutsui#file-system OVERLAY # overlay file system 921.2Sfredette#file-system PROCFS # /proc 931.68Stsutsui#file-system UNION # union file system 941.1Sfredettefile-system MFS # memory-based filesystem 951.47Schristosfile-system PTYFS # /dev/pts/N support 961.90Stsutsui#file-system TMPFS # Efficient memory file-system 971.53Sreinoud#file-system UDF # experimental - OSTA UDF CD/DVD file-system 981.1Sfredette 991.90Stsutsui#options NFSSERVER # nfs server support 1001.77Sbouyer#options QUOTA # legacy UFS quotas 1011.77Sbouyer#options QUOTA2 # new, in-filesystem UFS quotas 1021.78Swiz#options FFS_EI # FFS Endian Independent support 1031.90Stsutsui#options WAPBL # File system journaling support 1041.35Srumble#options UFS_DIRHASH # UFS Large Directory Hashing - Experimental 1051.64Syamt#options NFS_V2_ONLY # Exclude NFS3 code to save space 1061.50Stsutsuioptions FFS_NO_SNAPSHOT # No FFS snapshot support 1071.1Sfredette 1081.1Sfredette# Networking options 1091.48Sisakioptions INET # IP protocol stack support 1101.2Sfredette#options INET6 # IPV6 1111.1Sfredette#options IPSEC # IP security 1121.1Sfredette#options IPSEC_ESP # IP security (encryption part; define w/IPSEC) 1131.1Sfredette#options IPSEC_DEBUG # debug for IP security 1141.1Sfredette#options GATEWAY # IP packet forwarding 1151.6Sabs#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 1161.1Sfredette 1171.30Sabs#options ALTQ # Manipulate network interfaces' output queues 1181.30Sabs#options ALTQ_BLUE # Stochastic Fair Blue 1191.30Sabs#options ALTQ_CBQ # Class-Based Queueing 1201.30Sabs#options ALTQ_CDNR # Diffserv Traffic Conditioner 1211.30Sabs#options ALTQ_FIFOQ # First-In First-Out Queue 1221.30Sabs#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 1231.30Sabs#options ALTQ_HFSC # Hierarchical Fair Service Curve 1241.30Sabs#options ALTQ_LOCALQ # Local queueing discipline 1251.30Sabs#options ALTQ_PRIQ # Priority Queueing 1261.30Sabs#options ALTQ_RED # Random Early Detection 1271.30Sabs#options ALTQ_RIO # RED with IN/OUT 1281.30Sabs#options ALTQ_WFQ # Weighted Fair Queueing 1291.30Sabs 1301.1Sfredette# Work-around for root on slow servers (insurance...) 1311.1Sfredetteoptions NFS_BOOT_RWSIZE=1024 1321.1Sfredetteoptions NFS_BOOT_BOOTPARAM 1331.1Sfredette 1341.1Sfredetteconfig netbsd root on ? type ? 1351.1Sfredette 1361.1Sfredette#### Main bus. 1371.1Sfredettemainbus0 at root 1381.1Sfredette 1391.1Sfredette#### Bus types. 1401.1Sfredette 1411.1Sfredetteobio0 at mainbus? # all Sun-2 1421.1Sfredetteobmem0 at mainbus? # all Sun-2 1431.1Sfredettembmem0 at mainbus? # 2/120, 2/170 1441.1Sfredettembio0 at mainbus? # 2/120, 2/170 1451.4Sfredettesun68kvme0 at mainbus? # 2/50, 2/130, 2/160 1461.4Sfredettevme0 at sun68kvme0 # mi VME attachment 1471.1Sfredette 1481.1Sfredette#### Standard system devices. 1491.1Sfredette 1501.1Sfredette## The AM9513 clock chip. 1511.9Slukemclock0 at obio0 addr 0x002800 # 2/120, 2/170 1521.9Slukemclock0 at obio0 addr 0x7f2800 # 2/50, 2/130, 2/160 1531.1Sfredette 1541.1Sfredette## The MM58167 time-of-day chip. 1551.9Slukemtod0 at obio0 addr 0x003800 # 2/120, 2/170 1561.4Sfredettetod0 at vme0 addr 0x200800 # 2/50, 2/130, 2/160 1571.1Sfredette 1581.1Sfredette#### Serial port configuration. 1591.1Sfredette 1601.4Sfredette## Zilog 8530 serial chips. Each has two channels. 1611.1Sfredette## zs0 is ttya and ttyb. zs1 is the keyboard and mouse. 1621.2Sfredette## zs0 is REQUIRED to use KGDB. 1631.1Sfredettezs0 at obio0 addr 0x002000 # 2/120, 2/170 1641.4Sfredettezs0 at obio0 addr 0x7f2000 # 2/50 1651.1Sfredettezs1 at obmem0 addr 0x780000 # 2/120, 2/170 1661.4Sfredettezs1 at obio0 addr 0x7f1800 # 2/50 1671.2Sfredettezs2 at mbmem0 addr 0x080800 # 2/120, 2/170 (first sc SCSI) 1681.2Sfredettezs3 at mbmem0 addr 0x081000 # 2/120, 2/170 (first sc SCSI) 1691.2Sfredettezs4 at mbmem0 addr 0x084800 # 2/120, 2/170 (second sc SCSI) 1701.2Sfredettezs5 at mbmem0 addr 0x085000 # 2/120, 2/170 (second sc SCSI) 1711.4Sfredettezstty* at zs? channel ? # ttya 1721.4Sfredettekbd0 at zstty? # keyboard 1731.4Sfredettems0 at zstty? # mouse 1741.1Sfredette 1751.1Sfredette#### Disk controllers and disks. 1761.1Sfredette 1771.1Sfredette## PAL+logic-based "Sun SCSI 2" Multibus/VME SCSI controller. 1781.1Sfredette## This driver has several flags which may be enabled using 1791.1Sfredette## the "flags" directive. Valid flags are: 1801.1Sfredette## 1811.1Sfredette## 0x0ff Set (1<<target) to disable parity checking 1821.1Sfredette## 0x100 Set this bit to disable DMA interrupts (poll) 1831.1Sfredette## 0x200 Set this bit to disable DMA entirely (use PIO) 1841.1Sfredette## 1851.1Sfredette## For example: "flags 0x10f" would disable DMA interrupts, 1861.1Sfredette## and disable parity for targets 0-3 1871.1Sfredette 1881.1Sfredettesc0 at mbmem0 addr 0x80000 ipl 2 flags 0xff 1891.9Slukemsc0 at vme0 addr 0x200000 irq 2 vect 0x40 flags 0xff 1901.1Sfredettesc1 at mbmem0 addr 0x84000 ipl 2 flags 0xff 1911.1Sfredette 1921.1Sfredette## NCR5380-based "Sun SCSI 3" VME SCSI controller. 1931.1Sfredette## This driver has several flags which may be enabled by OR'ing 1941.1Sfredette## the values and using the "flags" directive. 1951.1Sfredette## Valid flags are: 1961.1Sfredette## 1971.1Sfredette## 0x01 Use DMA (may be polled) 1981.1Sfredette## 0x02 Use DMA completion interrupts 1991.1Sfredette## 0x04 Allow disconnect/reselect 2001.1Sfredette## 2011.1Sfredette## E.g. the following would enable DMA, interrupts, and reselect: 2021.1Sfredette## si0 at vme0 addr 0x200000 ipl 3 vect 0x40 flags 0x07 2031.1Sfredette## 2041.1Sfredette## By default, DMA is enabled in the driver. 2051.1Sfredette 2061.4Sfredettesi0 at vme0 addr 0x200000 irq 2 vect 0x40 2071.1Sfredette 2081.1Sfredette## These entries find devices on all SCSI busses and assign 2091.1Sfredette## unit numbers dynamically. 2101.1Sfredettescsibus* at sc? 2111.4Sfredettescsibus* at si? 2121.1Sfredettesd* at scsibus? target ? lun ? # SCSI disks 2131.1Sfredettest* at scsibus? target ? lun ? # SCSI tapes 2141.1Sfredettecd* at scsibus? target ? lun ? # SCSI CD-ROMs 2151.2Sfredette#ch* at scsibus? target ? lun ? # SCSI changer devices 2161.2Sfredette#ss* at scsibus? target ? lun ? # SCSI scanners 2171.2Sfredette#ses* at scsibus? target ? lun ? # SCSI SES/SAF-TE 2181.2Sfredette#uk* at scsibus? target ? lun ? # unknown SCSI 2191.10Sfredette 2201.10Sfredette# support old SCSI devices that don't understand the INQUIRY command 2211.10Sfredetteoptions SCSI_OLD_NOINQUIRY 2221.1Sfredette 2231.1Sfredette## Xylogics 450 or 451 Multibus/VME SMD disk controllers and disks. 2241.9Slukem#xyc0 at mbio0 addr 0xee40 ipl 2 2251.90Stsutsui#xyc0 at vme0 addr 0xee40 irq 2 vect 0x48 2261.9Slukem#xyc1 at mbio0 addr 0xee48 ipl 2 2271.90Stsutsui#xyc1 at vme0 addr 0xee48 irq 2 vect 0x49 2281.90Stsutsui#xy* at xyc? drive ? 2291.1Sfredette 2301.70Stls# 2311.70Stls# accept filters 2321.90Stsutsui#pseudo-device accf_data # "dataready" accept filter 2331.90Stsutsui#pseudo-device accf_http # "httpready" accept filter 2341.70Stls 2351.1Sfredette## Memory-disk device. 2361.76Shannkenpseudo-device md 2371.1Sfredette 2381.1Sfredette#### Network interfaces. 2391.1Sfredette 2401.1Sfredette## Intel Ethernet (onboard, or Multibus/VME) 2411.4Sfredetteie0 at obio0 addr 0x7f0800 ipl 3 # 2/50 2421.1Sfredetteie0 at mbmem0 addr 0x88000 ipl 3 2431.4Sfredetteie1 at mbmem0 addr 0x8c000 ipl 3 2441.4Sfredette## VME: the first [addr,len] pair specifies the device registers; 2451.4Sfredette## the second pair specifies the on-board memory buffer 2461.4Sfredetteie1 at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75 2471.4Sfredette 2481.4Sfredette## 3Com Ethernet (Multibus only) 2491.4Sfredetteec0 at mbmem0 addr 0xe0000 ipl 3 2501.4Sfredetteec1 at mbmem0 addr 0xe2000 ipl 3 2511.62Stsutsui# limit NFS R/W size for poor ec(4) interfaces 2521.62Stsutsuioptions NFS_RSIZE=1024,NFS_WSIZE=1024 2531.1Sfredette 2541.1Sfredette## Frame buffers. 2551.1Sfredette 2561.1Sfredette## Sun "bwtwo" black and white framebuffer. 2571.9Slukembwtwo0 at obmem0 addr 0x700000 # 2/120, 2/170 2581.4Sfredettebwtwo0 at obio0 addr 0x0 # 2/50 2591.4Sfredette 2601.4Sfredette## PROM console driver -- if all else fails 2611.4Sfredettepcons0 at mainbus0 # PROM console 2621.1Sfredette 2631.1Sfredette#### Miscellaneous. 2641.86Schristospseudo-device loop # network loopback 2651.54Srpaulo#pseudo-device bpfilter # packet filter 2661.56Sliamjfoy#pseudo-device carp # Common Address Redundancy Protocol 2671.7Satatat#pseudo-device bridge # simple inter-network bridging 2681.23Sperseant#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too 2691.55Scube#pseudo-device sl # CSLIP 2701.55Scube#pseudo-device ppp # PPP 2711.12Smartin#pseudo-device pppoe # PPP over Ethernet (RFC 2516) 2721.55Scube#pseudo-device tun # network tunneling over tty 2731.34Scube#pseudo-device tap # virtual Ethernet 2741.55Scube#pseudo-device gre # generic L3 over IP tunnel 2751.1Sfredette#pseudo-device ipfilter # ip filter 2761.55Scube#pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 2771.55Scube#pseudo-device faith # IPv[46] tcp relay translation i/f 2781.55Scube#pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 2791.1Sfredette 2801.60Stsutsuipseudo-device pty # pseudo-terminals 2811.55Scube#pseudo-device vnd # paging to files 2821.43Shubertf#options VND_COMPRESSION # compressed vnd(4) 2831.86Schristos#pseudo-device ccd # concatenated disks 2841.86Schristos#pseudo-device cgd # cryptographic disk devices 2851.87Schristos#pseudo-device raid # RAIDframe disk driver 2861.1Sfredette#options RAID_AUTOCONFIG # auto-configuration of RAID components 2871.13Soster# Options to enable various other RAIDframe RAID types. 2881.13Soster# options RF_INCLUDE_EVENODD=1 2891.13Soster# options RF_INCLUDE_RAID5_RS=1 2901.13Soster# options RF_INCLUDE_PARITYLOGGING=1 2911.13Soster# options RF_INCLUDE_CHAINDECLUSTER=1 2921.13Soster# options RF_INCLUDE_INTERDECLUSTER=1 2931.13Soster# options RF_INCLUDE_PARITY_DECLUSTERING=1 2941.13Soster# options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 2951.74Spooka#pseudo-device fss # file system snapshot device 2961.90Stsutsui#pseudo-device clockctl # user control of clock subsystem 2971.25Sraggepseudo-device ksyms # /dev/ksyms 2981.29Sitojun#pseudo-device pf # PF packet filter 2991.29Sitojun#pseudo-device pflog # PF log if 3001.52Selad 3011.52Selad# Veriexec 3021.52Selad# 3031.52Selad# a pseudo device needed for veriexec 3041.87Schristos#pseudo-device veriexec 3051.52Selad# 3061.52Selad# Uncomment the fingerprint methods below that are desired. Note that 3071.52Selad# removing fingerprint methods will have almost no impact on the kernel 3081.52Selad# code size. 3091.52Selad# 3101.52Selad#options VERIFIED_EXEC_FP_RMD160 3111.52Selad#options VERIFIED_EXEC_FP_SHA256 3121.52Selad#options VERIFIED_EXEC_FP_SHA384 3131.52Selad#options VERIFIED_EXEC_FP_SHA512 3141.52Selad#options VERIFIED_EXEC_FP_SHA1 3151.52Selad#options VERIFIED_EXEC_FP_MD5 316