RAMDISK revision 1.62 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