RAMDISK revision 1.20
11.20Shannken# $NetBSD: RAMDISK,v 1.20 2005/01/31 16:55:29 hannken Exp $ 21.1Sfredette 31.1Sfredette# RAMDISK: Root/swap on ramdisk 41.1Sfredette# This kernel is used to: 51.6Slukem# format the disk (not yet implemented) 61.6Slukem# partition the disk (disklabel) 71.6Slukem# install the miniroot in the swap partition 81.1Sfredette 91.1Sfredette# GENERIC Sun2 (2/120, 2/170, 2/50, ...) 101.1Sfredette# Supports root on: ie0, sd*, ... 111.1Sfredette 121.1Sfredetteinclude "arch/sun2/conf/std.sun2" 131.14Satatat 141.14Satatat#options INCLUDE_CONFIG_FILE # embed config file in kernel binary 151.1Sfredette 161.1Sfredette# Machines to be supported by this kernel 171.1Sfredette#options FPU_EMULATE 181.1Sfredette 191.1Sfredette# Needs to be set per system. i.e change these as you see fit 201.1Sfredettemaxusers 2 211.1Sfredette 221.1Sfredette# Standard system options 231.1Sfredette#options KTRACE # system call tracing 241.1Sfredette#options SYSVMSG # System V message queues 251.1Sfredette#options SYSVSEM # System V semaphores 261.1Sfredette#options SYSVSHM # System V shared memory 271.1Sfredette#options SHMMAXPGS=1024 # 1024 pages is the default 281.1Sfredette#options LKM # loadable kernel modules 291.1Sfredette#options INSECURE # disable kernel security level 301.15Slukemoptions USERCONF # userconf(4) support 311.10Sjdolecek#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 321.18Satatat#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 331.1Sfredette 341.1Sfredette# Which kernel debugger? Uncomment either this: 351.1Sfredette#options DDB 361.1Sfredette# ... or these for KGDB (gdb remote target) 371.6Slukem#makeoptions DEBUG="-g" # debugging symbols for gdb 381.1Sfredette#options KGDB 391.5Slukem#options KGDB_DEV=0x0C00 # ttya=0C00 ttyb=0C01 401.1Sfredette 411.1Sfredette# Other debugging options 421.1Sfredette#options DDB_HISTORY_SIZE=100 # enable history editing in DDB 431.1Sfredette#options DEBUG # kernel debugging code 441.1Sfredette#options DIAGNOSTIC # extra kernel sanity checking 451.1Sfredette#options KMEMSTATS # kernel memory statistics (vmstat -m) 461.1Sfredette#options PMAP_DEBUG 471.1Sfredette#options SCSIDEBUG 481.1Sfredette#options SCSIVERBOSE # Verbose SCSI errors 491.1Sfredette 501.2Swiz# Compatibility options 511.1Sfredette#options COMPAT_SUNOS # can run SunOS 4.1.1 executables 521.1Sfredette#options COMPAT_43 # and 4.3BSD and ... 531.7Sfredette#options COMPAT_AOUT_M68K # support for NetBSD a.out executables 541.7Sfredette#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. 551.6Slukemoptions EXEC_AOUT # support for a.out executables 561.19Schristosoptions COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 571.1Sfredette 581.1Sfredette# Filesystem options 591.1Sfredettefile-system FFS # Berkeley Fast Filesystem 601.1Sfredettefile-system NFS # Sun NFS client support 611.1Sfredettefile-system CD9660 # ISO 9660 + Rock Ridge file system 621.1Sfredette#file-system FDESC # /dev/fd/* 631.1Sfredette#file-system KERNFS # /kern 641.1Sfredette#file-system NULLFS # loopback file system 651.1Sfredette#file-system OVERLAY # overlay file system 661.1Sfredette#file-system PROCFS # /proc 671.1Sfredette#file-system UNION # union file system 681.1Sfredette#file-system MFS # memory-based filesystem 691.1Sfredette 701.1Sfredette#options NFSSERVER # nfs server support 711.1Sfredette#options QUOTA # FFS quotas 721.7Sfredette#options FFS_EI # FFS Endian Independant support 731.6Slukem#options SOFTDEP # FFS soft updates support. 741.9Sfredette#options NFS_V2_ONLY # Exclude NFS3 and NQNFS code to save space 751.8Sfredetteoptions VNODE_OP_NOINLINE # Save space by not inlining vnode op calls 761.1Sfredette 771.1Sfredette# Networking options 781.1Sfredetteoptions INET # IP prototol stack support 791.1Sfredette#options INET6 # IPV6 801.1Sfredette#options IPSEC # IP security 811.1Sfredette#options IPSEC_ESP # IP security (encryption part; define w/IPSEC) 821.1Sfredette#options IPSEC_DEBUG # debug for IP security 831.1Sfredette#options GATEWAY # IP packet forwarding 841.1Sfredette#options ISO,TPIP # OSI networking 851.1Sfredette#options EON # OSI tunneling over IP 861.1Sfredette#options CCITT,LLC,HDLC # X.25 871.1Sfredette#options PFIL_HOOKS # pfil(9) packet filter hooks. 881.4Sabs#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 891.1Sfredette 901.1Sfredette# Work-around for root on slow servers (insurance...) 911.1Sfredette#options NFS_BOOT_RWSIZE=1024 921.1Sfredette#options NFS_BOOT_BOOTPARAM 931.1Sfredette 941.1Sfredette# Enable the hooks used for initializing the root memory-disk. 951.6Slukemoptions MEMORY_DISK_HOOKS 961.6Slukemoptions MEMORY_DISK_IS_ROOT # force root on memory disk 971.6Slukemoptions MEMORY_DISK_SERVER=0 # no userspace memory disk support 981.17Schsoptions MEMORY_DISK_ROOT_SIZE=1000 # size of memory disk, in blocks 991.1Sfredette 1001.1Sfredetteconfig netbsd root on ? type ffs 1011.1Sfredette 1021.1Sfredette#### Main bus. 1031.1Sfredettemainbus0 at root 1041.1Sfredette 1051.1Sfredette#### Bus types. 1061.1Sfredette 1071.1Sfredetteobio0 at mainbus? # all Sun-2 1081.1Sfredetteobmem0 at mainbus? # all Sun-2 1091.1Sfredettembmem0 at mainbus? # 2/120, 2/170 1101.1Sfredettembio0 at mainbus? # 2/120, 2/170 1111.3Sfredettesun68kvme0 at mainbus? # 2/50, 2/130, 2/160 1121.3Sfredettevme0 at sun68kvme0 # mi VME attachment 1131.1Sfredette 1141.1Sfredette#### Standard system devices. 1151.1Sfredette 1161.1Sfredette## The AM9513 clock chip. 1171.6Slukemclock0 at obio0 addr 0x002800 # 2/120, 2/170 1181.6Slukemclock0 at obio0 addr 0x7f2800 # 2/50, 2/130, 2/160 1191.1Sfredette 1201.1Sfredette## The MM58167 time-of-day chip. 1211.6Slukemtod0 at obio0 addr 0x003800 # 2/120, 2/170 1221.3Sfredettetod0 at vme0 addr 0x200800 # 2/50, 2/130, 2/160 1231.1Sfredette 1241.1Sfredette#### Serial port configuration. 1251.1Sfredette 1261.3Sfredette## Zilog 8530 serial chips. Each has two channels. 1271.1Sfredette## zs0 is ttya and ttyb. zs1 is the keyboard and mouse. 1281.1Sfredette## zs0 is REQUIRED to use KGDB. 1291.1Sfredettezs0 at obio0 addr 0x002000 # 2/120, 2/170 1301.3Sfredettezs0 at obio0 addr 0x7f2000 # 2/50 1311.1Sfredettezs1 at obmem0 addr 0x780000 # 2/120, 2/170 1321.3Sfredettezs1 at obio0 addr 0x7f1800 # 2/50 1331.9Sfredette#zs2 at mbmem0 addr 0x080800 # 2/120, 2/170 (first sc SCSI) 1341.9Sfredette#zs3 at mbmem0 addr 0x081000 # 2/120, 2/170 (first sc SCSI) 1351.9Sfredette#zs4 at mbmem0 addr 0x084800 # 2/120, 2/170 (second sc SCSI) 1361.9Sfredette#zs5 at mbmem0 addr 0x085000 # 2/120, 2/170 (second sc SCSI) 1371.3Sfredettezstty* at zs? channel ? # ttya 1381.3Sfredettekbd0 at zstty? # keyboard 1391.3Sfredette#ms0 at zstty? # mouse 1401.1Sfredette 1411.1Sfredette#### Disk controllers and disks. 1421.1Sfredette 1431.1Sfredette## PAL+logic-based "Sun SCSI 2" Multibus/VME SCSI controller. 1441.1Sfredette## This driver has several flags which may be enabled using 1451.1Sfredette## the "flags" directive. Valid flags are: 1461.1Sfredette## 1471.1Sfredette## 0x0ff Set (1<<target) to disable parity checking 1481.1Sfredette## 0x100 Set this bit to disable DMA interrupts (poll) 1491.1Sfredette## 0x200 Set this bit to disable DMA entirely (use PIO) 1501.1Sfredette## 1511.1Sfredette## For example: "flags 0x10f" would disable DMA interrupts, 1521.1Sfredette## and disable parity for targets 0-3 1531.1Sfredette 1541.1Sfredettesc0 at mbmem0 addr 0x80000 ipl 2 flags 0xff 1551.6Slukemsc0 at vme0 addr 0x200000 irq 2 vect 0x40 flags 0xff 1561.1Sfredettesc1 at mbmem0 addr 0x84000 ipl 2 flags 0xff 1571.1Sfredette 1581.1Sfredette## NCR5380-based "Sun SCSI 3" VME SCSI controller. 1591.1Sfredette## This driver has several flags which may be enabled by OR'ing 1601.1Sfredette## the values and using the "flags" directive. 1611.1Sfredette## Valid flags are: 1621.1Sfredette## 1631.1Sfredette## 0x01 Use DMA (may be polled) 1641.1Sfredette## 0x02 Use DMA completion interrupts 1651.1Sfredette## 0x04 Allow disconnect/reselect 1661.1Sfredette## 1671.1Sfredette## E.g. the following would enable DMA, interrupts, and reselect: 1681.1Sfredette## si0 at vme0 addr 0x200000 ipl 3 vect 0x40 flags 0x07 1691.1Sfredette## 1701.1Sfredette## By default, DMA is enabled in the driver. 1711.1Sfredette 1721.3Sfredettesi0 at vme0 addr 0x200000 irq 2 vect 0x40 1731.1Sfredette 1741.1Sfredette## These entries find devices on all SCSI busses and assign 1751.1Sfredette## unit numbers dynamically. 1761.1Sfredettescsibus* at sc? 1771.3Sfredettescsibus* at si? 1781.1Sfredettesd* at scsibus? target ? lun ? # SCSI disks 1791.1Sfredettest* at scsibus? target ? lun ? # SCSI tapes 1801.1Sfredettecd* at scsibus? target ? lun ? # SCSI CD-ROMs 1811.1Sfredette#ch* at scsibus? target ? lun ? # SCSI changer devices 1821.1Sfredette#ss* at scsibus? target ? lun ? # SCSI scanners 1831.1Sfredette#ses* at scsibus? target ? lun ? # SCSI SES/SAF-TE 1841.1Sfredette#uk* at scsibus? target ? lun ? # unknown SCSI 1851.8Sfredette 1861.8Sfredette# support old SCSI devices that don't understand the INQUIRY command 1871.8Sfredetteoptions SCSI_OLD_NOINQUIRY 1881.1Sfredette 1891.1Sfredette## Xylogics 450 or 451 Multibus/VME SMD disk controllers and disks. 1901.6Slukem#xyc0 at mbio0 addr 0xee40 ipl 2 1911.3Sfredettexyc0 at vme0 addr 0xee40 irq 2 vect 0x48 1921.6Slukem#xyc1 at mbio0 addr 0xee48 ipl 2 1931.3Sfredettexyc1 at vme0 addr 0xee48 irq 2 vect 0x49 1941.3Sfredettexy* at xyc? drive ? 1951.1Sfredette 1961.1Sfredette## Memory-disk device. 1971.1Sfredettepseudo-device md 2 1981.1Sfredette 1991.1Sfredette#### Network interfaces. 2001.1Sfredette 2011.1Sfredette## Intel Ethernet (onboard, or Multibus/VME) 2021.3Sfredetteie0 at obio0 addr 0x7f0800 ipl 3 # 2/50 2031.1Sfredetteie0 at mbmem0 addr 0x88000 ipl 3 2041.3Sfredetteie1 at mbmem0 addr 0x8c000 ipl 3 2051.3Sfredette## VME: the first [addr,len] pair specifies the device registers; 2061.3Sfredette## the second pair specifies the on-board memory buffer 2071.3Sfredetteie1 at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75 2081.3Sfredette 2091.3Sfredette## 3Com Ethernet (Multibus only) 2101.3Sfredetteec0 at mbmem0 addr 0xe0000 ipl 3 2111.3Sfredetteec1 at mbmem0 addr 0xe2000 ipl 3 2121.1Sfredette 2131.1Sfredette## Frame buffers. 2141.1Sfredette 2151.1Sfredette## Sun "bwtwo" black and white framebuffer. 2161.6Slukem#bwtwo0 at obmem0 addr 0x700000 # 2/120, 2/170 2171.3Sfredette#bwtwo0 at obio0 addr 0x0 # 2/50 2181.3Sfredette 2191.3Sfredette## PROM console driver -- if all else fails 2201.3Sfredettepcons0 at mainbus0 # PROM console 2211.1Sfredette 2221.1Sfredette#### Miscellaneous. 2231.1Sfredettepseudo-device loop 1 # network loopback 2241.1Sfredette#pseudo-device bpfilter 8 # packet filter 2251.1Sfredettepseudo-device sl 2 # CSLIP 2261.1Sfredette#pseudo-device ppp 2 # PPP 2271.1Sfredette#pseudo-device tun 2 # network tunneling over tty 2281.1Sfredette#pseudo-device gre 2 # generic L3 over IP tunnel 2291.1Sfredette#pseudo-device ipfilter # ip filter 2301.1Sfredette#pseudo-device gif 4 # IPv[46] over IPv[46] tunnel (RFC1933) 2311.1Sfredette#pseudo-device faith 1 # IPv[46] tcp relay translation i/f 2321.1Sfredette#pseudo-device stf 1 # 6to4 IPv6 over IPv4 encapsulation 2331.1Sfredette# rnd is EXPERIMENTAL 2341.1Sfredette#pseudo-device rnd # /dev/random and in-kernel generator 2351.1Sfredette 2361.7Sfredettepseudo-device pty 4 # pseudo-terminals 2371.1Sfredette#pseudo-device vnd 4 # paging to files 2381.1Sfredette#pseudo-device ccd 4 # concatenated disks 2391.1Sfredette#pseudo-device raid 4 # RAIDframe disk driver 2401.1Sfredette#options RAID_AUTOCONFIG # auto-configuration of RAID components 2411.20Shannken#pseudo-device fss 4 # file system snapshot device 242