1 1.62 thorpej # $NetBSD: RAMDISK,v 1.62 2026/07/18 01:36:16 thorpej Exp $ 2 1.1 fredette 3 1.1 fredette # RAMDISK: Root/swap on ramdisk 4 1.1 fredette # This kernel is used to: 5 1.6 lukem # format the disk (not yet implemented) 6 1.6 lukem # partition the disk (disklabel) 7 1.6 lukem # install the miniroot in the swap partition 8 1.1 fredette 9 1.1 fredette # GENERIC Sun2 (2/120, 2/170, 2/50, ...) 10 1.1 fredette # Supports root on: ie0, sd*, ... 11 1.1 fredette 12 1.1 fredette include "arch/sun2/conf/std.sun2" 13 1.62 thorpej include "arch/sun2/conf/std.tiny" 14 1.14 atatat 15 1.14 atatat #options INCLUDE_CONFIG_FILE # embed config file in kernel binary 16 1.1 fredette 17 1.1 fredette # Machines to be supported by this kernel 18 1.1 fredette #options FPU_EMULATE 19 1.1 fredette 20 1.1 fredette # Needs to be set per system. i.e change these as you see fit 21 1.1 fredette maxusers 2 22 1.1 fredette 23 1.1 fredette # Standard system options 24 1.1 fredette #options KTRACE # system call tracing 25 1.1 fredette #options SYSVMSG # System V message queues 26 1.1 fredette #options SYSVSEM # System V semaphores 27 1.1 fredette #options SYSVSHM # System V shared memory 28 1.1 fredette #options INSECURE # disable kernel security level 29 1.60 christos #options USERCONF # userconf(4) support 30 1.39 tsutsui options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 31 1.18 atatat #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 32 1.1 fredette 33 1.1 fredette # Which kernel debugger? Uncomment either this: 34 1.1 fredette #options DDB 35 1.1 fredette # ... or these for KGDB (gdb remote target) 36 1.6 lukem #makeoptions DEBUG="-g" # debugging symbols for gdb 37 1.1 fredette #options KGDB 38 1.5 lukem #options KGDB_DEV=0x0C00 # ttya=0C00 ttyb=0C01 39 1.1 fredette 40 1.1 fredette # Other debugging options 41 1.1 fredette #options DDB_HISTORY_SIZE=100 # enable history editing in DDB 42 1.1 fredette #options DEBUG # kernel debugging code 43 1.1 fredette #options DIAGNOSTIC # extra kernel sanity checking 44 1.1 fredette #options PMAP_DEBUG 45 1.1 fredette #options SCSIDEBUG 46 1.1 fredette #options SCSIVERBOSE # Verbose SCSI errors 47 1.1 fredette 48 1.2 wiz # Compatibility options 49 1.58 mrg #include "conf/compat_netbsd10.config" 50 1.1 fredette #options COMPAT_SUNOS # can run SunOS 4.1.1 executables 51 1.7 fredette #options COMPAT_AOUT_M68K # support for NetBSD a.out executables 52 1.39 tsutsui #options EXEC_AOUT # support for a.out executables 53 1.60 christos #options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 54 1.1 fredette 55 1.1 fredette # Filesystem options 56 1.1 fredette file-system FFS # Berkeley Fast Filesystem 57 1.60 christos #file-system NFS # Sun NFS client support 58 1.60 christos #file-system CD9660 # ISO 9660 + Rock Ridge file system 59 1.1 fredette #file-system FDESC # /dev/fd/* 60 1.1 fredette #file-system KERNFS # /kern 61 1.1 fredette #file-system NULLFS # loopback file system 62 1.1 fredette #file-system OVERLAY # overlay file system 63 1.1 fredette #file-system PROCFS # /proc 64 1.1 fredette #file-system UNION # union file system 65 1.1 fredette #file-system MFS # memory-based filesystem 66 1.26 christos #file-system PTYFS # /dev/pts/N support 67 1.1 fredette 68 1.1 fredette #options NFSSERVER # nfs server support 69 1.47 bouyer #options QUOTA # legacy UFS quotas 70 1.47 bouyer #options QUOTA2 # new, in-filesystem UFS quotas 71 1.48 wiz #options FFS_EI # FFS Endian Independent support 72 1.60 christos #options NFS_V2_ONLY # Exclude NFS3 code to save space 73 1.28 tsutsui options FFS_NO_SNAPSHOT # No FFS snapshot support 74 1.1 fredette 75 1.1 fredette # Networking options 76 1.27 isaki options INET # IP protocol stack support 77 1.1 fredette #options INET6 # IPV6 78 1.1 fredette #options IPSEC # IP security 79 1.1 fredette #options IPSEC_DEBUG # debug for IP security 80 1.1 fredette #options GATEWAY # IP packet forwarding 81 1.4 abs #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 82 1.1 fredette 83 1.1 fredette # Work-around for root on slow servers (insurance...) 84 1.1 fredette #options NFS_BOOT_RWSIZE=1024 85 1.1 fredette #options NFS_BOOT_BOOTPARAM 86 1.1 fredette 87 1.1 fredette # Enable the hooks used for initializing the root memory-disk. 88 1.6 lukem options MEMORY_DISK_HOOKS 89 1.6 lukem options MEMORY_DISK_IS_ROOT # force root on memory disk 90 1.6 lukem options MEMORY_DISK_SERVER=0 # no userspace memory disk support 91 1.41 he options MEMORY_DISK_ROOT_SIZE=1200 # size of memory disk, in blocks 92 1.44 jym options MEMORY_DISK_RBFLAGS=RB_SINGLE # boot in single-user mode 93 1.1 fredette 94 1.1 fredette config netbsd root on ? type ffs 95 1.1 fredette 96 1.1 fredette #### Main bus. 97 1.1 fredette mainbus0 at root 98 1.1 fredette 99 1.1 fredette #### Bus types. 100 1.1 fredette 101 1.1 fredette obio0 at mainbus? # all Sun-2 102 1.1 fredette obmem0 at mainbus? # all Sun-2 103 1.1 fredette mbmem0 at mainbus? # 2/120, 2/170 104 1.1 fredette mbio0 at mainbus? # 2/120, 2/170 105 1.3 fredette sun68kvme0 at mainbus? # 2/50, 2/130, 2/160 106 1.3 fredette vme0 at sun68kvme0 # mi VME attachment 107 1.1 fredette 108 1.1 fredette #### Standard system devices. 109 1.1 fredette 110 1.1 fredette ## The AM9513 clock chip. 111 1.6 lukem clock0 at obio0 addr 0x002800 # 2/120, 2/170 112 1.6 lukem clock0 at obio0 addr 0x7f2800 # 2/50, 2/130, 2/160 113 1.1 fredette 114 1.1 fredette ## The MM58167 time-of-day chip. 115 1.6 lukem tod0 at obio0 addr 0x003800 # 2/120, 2/170 116 1.3 fredette tod0 at vme0 addr 0x200800 # 2/50, 2/130, 2/160 117 1.1 fredette 118 1.1 fredette #### Serial port configuration. 119 1.1 fredette 120 1.3 fredette ## Zilog 8530 serial chips. Each has two channels. 121 1.1 fredette ## zs0 is ttya and ttyb. zs1 is the keyboard and mouse. 122 1.1 fredette ## zs0 is REQUIRED to use KGDB. 123 1.1 fredette zs0 at obio0 addr 0x002000 # 2/120, 2/170 124 1.3 fredette zs0 at obio0 addr 0x7f2000 # 2/50 125 1.1 fredette zs1 at obmem0 addr 0x780000 # 2/120, 2/170 126 1.3 fredette zs1 at obio0 addr 0x7f1800 # 2/50 127 1.9 fredette #zs2 at mbmem0 addr 0x080800 # 2/120, 2/170 (first sc SCSI) 128 1.9 fredette #zs3 at mbmem0 addr 0x081000 # 2/120, 2/170 (first sc SCSI) 129 1.9 fredette #zs4 at mbmem0 addr 0x084800 # 2/120, 2/170 (second sc SCSI) 130 1.9 fredette #zs5 at mbmem0 addr 0x085000 # 2/120, 2/170 (second sc SCSI) 131 1.3 fredette zstty* at zs? channel ? # ttya 132 1.3 fredette kbd0 at zstty? # keyboard 133 1.3 fredette #ms0 at zstty? # mouse 134 1.1 fredette 135 1.1 fredette #### Disk controllers and disks. 136 1.1 fredette 137 1.1 fredette ## PAL+logic-based "Sun SCSI 2" Multibus/VME SCSI controller. 138 1.1 fredette ## This driver has several flags which may be enabled using 139 1.1 fredette ## the "flags" directive. Valid flags are: 140 1.1 fredette ## 141 1.1 fredette ## 0x0ff Set (1<<target) to disable parity checking 142 1.1 fredette ## 0x100 Set this bit to disable DMA interrupts (poll) 143 1.1 fredette ## 0x200 Set this bit to disable DMA entirely (use PIO) 144 1.1 fredette ## 145 1.1 fredette ## For example: "flags 0x10f" would disable DMA interrupts, 146 1.1 fredette ## and disable parity for targets 0-3 147 1.1 fredette 148 1.1 fredette sc0 at mbmem0 addr 0x80000 ipl 2 flags 0xff 149 1.6 lukem sc0 at vme0 addr 0x200000 irq 2 vect 0x40 flags 0xff 150 1.1 fredette sc1 at mbmem0 addr 0x84000 ipl 2 flags 0xff 151 1.1 fredette 152 1.1 fredette ## NCR5380-based "Sun SCSI 3" VME SCSI controller. 153 1.1 fredette ## This driver has several flags which may be enabled by OR'ing 154 1.1 fredette ## the values and using the "flags" directive. 155 1.1 fredette ## Valid flags are: 156 1.1 fredette ## 157 1.1 fredette ## 0x01 Use DMA (may be polled) 158 1.1 fredette ## 0x02 Use DMA completion interrupts 159 1.1 fredette ## 0x04 Allow disconnect/reselect 160 1.1 fredette ## 161 1.1 fredette ## E.g. the following would enable DMA, interrupts, and reselect: 162 1.1 fredette ## si0 at vme0 addr 0x200000 ipl 3 vect 0x40 flags 0x07 163 1.1 fredette ## 164 1.1 fredette ## By default, DMA is enabled in the driver. 165 1.1 fredette 166 1.3 fredette si0 at vme0 addr 0x200000 irq 2 vect 0x40 167 1.1 fredette 168 1.1 fredette ## These entries find devices on all SCSI busses and assign 169 1.1 fredette ## unit numbers dynamically. 170 1.1 fredette scsibus* at sc? 171 1.3 fredette scsibus* at si? 172 1.1 fredette sd* at scsibus? target ? lun ? # SCSI disks 173 1.1 fredette st* at scsibus? target ? lun ? # SCSI tapes 174 1.60 christos #cd* at scsibus? target ? lun ? # SCSI CD-ROMs 175 1.1 fredette #ch* at scsibus? target ? lun ? # SCSI changer devices 176 1.1 fredette #ss* at scsibus? target ? lun ? # SCSI scanners 177 1.1 fredette #ses* at scsibus? target ? lun ? # SCSI SES/SAF-TE 178 1.1 fredette #uk* at scsibus? target ? lun ? # unknown SCSI 179 1.8 fredette 180 1.8 fredette # support old SCSI devices that don't understand the INQUIRY command 181 1.8 fredette options SCSI_OLD_NOINQUIRY 182 1.1 fredette 183 1.1 fredette ## Xylogics 450 or 451 Multibus/VME SMD disk controllers and disks. 184 1.6 lukem #xyc0 at mbio0 addr 0xee40 ipl 2 185 1.3 fredette xyc0 at vme0 addr 0xee40 irq 2 vect 0x48 186 1.6 lukem #xyc1 at mbio0 addr 0xee48 ipl 2 187 1.3 fredette xyc1 at vme0 addr 0xee48 irq 2 vect 0x49 188 1.3 fredette xy* at xyc? drive ? 189 1.1 fredette 190 1.1 fredette ## Memory-disk device. 191 1.46 hannken pseudo-device md 192 1.1 fredette 193 1.1 fredette #### Network interfaces. 194 1.1 fredette 195 1.1 fredette ## Intel Ethernet (onboard, or Multibus/VME) 196 1.3 fredette ie0 at obio0 addr 0x7f0800 ipl 3 # 2/50 197 1.1 fredette ie0 at mbmem0 addr 0x88000 ipl 3 198 1.3 fredette ie1 at mbmem0 addr 0x8c000 ipl 3 199 1.3 fredette ## VME: the first [addr,len] pair specifies the device registers; 200 1.3 fredette ## the second pair specifies the on-board memory buffer 201 1.3 fredette ie1 at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75 202 1.3 fredette 203 1.3 fredette ## 3Com Ethernet (Multibus only) 204 1.3 fredette ec0 at mbmem0 addr 0xe0000 ipl 3 205 1.3 fredette ec1 at mbmem0 addr 0xe2000 ipl 3 206 1.34 tsutsui # limit NFS R/W size for poor ec(4) interfaces 207 1.34 tsutsui options NFS_RSIZE=1024,NFS_WSIZE=1024 208 1.1 fredette 209 1.1 fredette ## Frame buffers. 210 1.1 fredette 211 1.1 fredette ## Sun "bwtwo" black and white framebuffer. 212 1.6 lukem #bwtwo0 at obmem0 addr 0x700000 # 2/120, 2/170 213 1.3 fredette #bwtwo0 at obio0 addr 0x0 # 2/50 214 1.3 fredette 215 1.3 fredette ## PROM console driver -- if all else fails 216 1.3 fredette pcons0 at mainbus0 # PROM console 217 1.1 fredette 218 1.1 fredette #### Miscellaneous. 219 1.52 christos pseudo-device loop # network loopback 220 1.30 rpaulo #pseudo-device bpfilter # packet filter 221 1.60 christos #pseudo-device sl # CSLIP 222 1.31 cube #pseudo-device ppp # PPP 223 1.31 cube #pseudo-device tun # network tunneling over tty 224 1.31 cube #pseudo-device gre # generic L3 over IP tunnel 225 1.59 maxv #pseudo-device npf # NPF packet filter 226 1.31 cube #pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 227 1.31 cube #pseudo-device faith # IPv[46] tcp relay translation i/f 228 1.31 cube #pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 229 1.1 fredette 230 1.52 christos pseudo-device pty # pseudo-terminals 231 1.31 cube #pseudo-device vnd # paging to files 232 1.52 christos #pseudo-device ccd # concatenated disks 233 1.53 christos #pseudo-device raid # RAIDframe disk driver 234 1.1 fredette #options RAID_AUTOCONFIG # auto-configuration of RAID components 235 1.45 pooka #pseudo-device fss # file system snapshot device 236 1.62 thorpej 237 1.62 thorpej no options AIO 238 1.62 thorpej no options BUFQ_FCFS 239 1.62 thorpej no options RFC2292 240 1.62 thorpej no options MQUEUE 241