SMALLRAM revision 1.1 1 1.1 scottr # $NetBSD: SMALLRAM,v 1.1 2002/05/19 21:58:27 scottr Exp $
2 1.1 scottr #
3 1.1 scottr # This is an example of how to configure a small, efficient kernel for a
4 1.1 scottr # system with limited RAM. Even so it's capable of doing quite a bit. The
5 1.1 scottr # hypothetical system used for this example is a Macintosh IIx or
6 1.1 scottr # Macintosh IIcx with 8 MB of RAM and an 80 MB disk. One or more DP5380-
7 1.1 scottr # based NuBus Ethernet cards and one or more NuBus video cards are
8 1.1 scottr # configured, and basic PPP support is available. This configuration is
9 1.1 scottr # suitable for experimenting with NetBSD as a router with one or more
10 1.1 scottr # Ethernet cards, and up to two PPP connections (one on each serial port).
11 1.1 scottr
12 1.1 scottr include "arch/mac68k/conf/std.mac68k"
13 1.1 scottr
14 1.1 scottr #options INCLUDE_CONFIG_FILE # embed config file in kernel binary
15 1.1 scottr
16 1.1 scottr #ident "SMALLRAM-$Revision: 1.1 $"
17 1.1 scottr
18 1.1 scottr maxusers 8
19 1.1 scottr
20 1.1 scottr makeoptions COPTS="-O2 -m68030" # Optimize for the MC68030
21 1.1 scottr
22 1.1 scottr # CPU support. At least one is REQUIRED.
23 1.1 scottr #options M68040
24 1.1 scottr options M68030
25 1.1 scottr #options M68020 # Note: must have 68851 PMMU
26 1.1 scottr
27 1.1 scottr # CPU-related options.
28 1.1 scottr #options FPSP
29 1.1 scottr #options FPU_EMULATE
30 1.1 scottr
31 1.1 scottr # Standard system options
32 1.1 scottr
33 1.1 scottr #options UCONSOLE # users can use TIOCCONS (for xconsole)
34 1.1 scottr #options INSECURE # disable kernel security levels
35 1.1 scottr
36 1.1 scottr options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
37 1.1 scottr #options NTP # NTP phase/frequency locked loop
38 1.1 scottr
39 1.1 scottr options KTRACE # system call tracing via ktrace(1)
40 1.1 scottr
41 1.1 scottr options SYSVMSG # System V-like message queues
42 1.1 scottr options SYSVSEM # System V-like semaphores
43 1.1 scottr #options SEMMNI=10 # number of semaphore identifiers
44 1.1 scottr #options SEMMNS=60 # number of semaphores in system
45 1.1 scottr #options SEMUME=10 # max number of undo entries per process
46 1.1 scottr #options SEMMNU=30 # number of undo structures in system
47 1.1 scottr options SYSVSHM # System V-like memory sharing
48 1.1 scottr #options SHMMAXPGS=1024 # 1024 pages is the default
49 1.1 scottr
50 1.1 scottr #options LKM # loadable kernel modules
51 1.1 scottr
52 1.1 scottr #options USERCONF # userconf(4) support
53 1.1 scottr #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
54 1.1 scottr
55 1.1 scottr # Diagnostic/debugging support options
56 1.1 scottr options DIAGNOSTIC # cheap kernel consistency checks
57 1.1 scottr #options DEBUG # expensive debugging checks/support
58 1.1 scottr #options KMEMSTATS # kernel memory statistics (vmstat -m)
59 1.1 scottr options DDB # in-kernel debugger
60 1.1 scottr #options DDB_HISTORY_SIZE=100 # enable history editing in DDB
61 1.1 scottr #options KGDB # remote debugger
62 1.1 scottr #options KGDB_DEV=0xc01 # kgdb device number (dev_t)
63 1.1 scottr #options KGDB_DEVRATE=38400 # baud rate
64 1.1 scottr #makeoptions DEBUG="-g" # compile full symbol table
65 1.1 scottr
66 1.1 scottr # Compatibility options
67 1.1 scottr #options COMPAT_NOMID # NetBSD 0.8,
68 1.1 scottr #options COMPAT_09 # NetBSD 0.9,
69 1.1 scottr #options COMPAT_10 # NetBSD 1.0,
70 1.1 scottr #options COMPAT_11 # NetBSD 1.1,
71 1.1 scottr options COMPAT_12 # NetBSD 1.2,
72 1.1 scottr options COMPAT_13 # NetBSD 1.3,
73 1.1 scottr options COMPAT_14 # NetBSD 1.4,
74 1.1 scottr options COMPAT_15 # NetBSD 1.5,
75 1.1 scottr #options COMPAT_43 # and 4.3BSD
76 1.1 scottr #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended.
77 1.1 scottr
78 1.1 scottr # The following is needed to run pre-NetBSD 1.6 binaries under ELF.
79 1.1 scottr options COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
80 1.1 scottr options EXEC_AOUT # support for exec'ing a.out
81 1.1 scottr
82 1.1 scottr #options COMPAT_LINUX # compatibility with Linux/m68k binaries
83 1.1 scottr #options COMPAT_M68K4K # compatibility with NetBSD/m68k4k binaries
84 1.1 scottr #options COMPAT_SUNOS # compatibility with SunOS 4.x binaries
85 1.1 scottr #options COMPAT_SVR4 # compatibility with SVR4 binaries
86 1.1 scottr
87 1.1 scottr # File systems
88 1.1 scottr file-system FFS # UFS
89 1.1 scottr #file-system EXT2FS # second extended file system (linux)
90 1.1 scottr #file-system LFS # log-structured file system
91 1.1 scottr file-system MFS # memory file system
92 1.1 scottr file-system NFS # Network File System client
93 1.1 scottr #file-system CD9660 # ISO 9660 + Rock Ridge file system
94 1.1 scottr #file-system MSDOSFS # MS-DOS file system
95 1.1 scottr #file-system FDESC # /dev/fd
96 1.1 scottr #file-system KERNFS # /kern
97 1.1 scottr #file-system NULLFS # loopback file system
98 1.1 scottr #file-system OVERLAY # overlay file system
99 1.1 scottr #file-system PORTAL # portal filesystem (still experimental)
100 1.1 scottr #file-system PROCFS # /proc
101 1.1 scottr #file-system UMAPFS # NULLFS + uid and gid remapping
102 1.1 scottr #file-system UNION # union file system
103 1.1 scottr #file-system CODA # Venus/Coda distributed file system
104 1.1 scottr
105 1.1 scottr # File system options
106 1.1 scottr options QUOTA # UFS quotas
107 1.1 scottr #options FFS_EI # FFS Endian Independant support
108 1.1 scottr #options SOFTDEP # FFS soft updates support.
109 1.1 scottr #options NFSSERVER # Network File System server
110 1.1 scottr #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
111 1.1 scottr # immutable) behave as system flags.
112 1.1 scottr
113 1.1 scottr # Networking options
114 1.1 scottr options GATEWAY # packet forwarding
115 1.1 scottr options INET # IP + ICMP + TCP + UDP
116 1.1 scottr #options INET6 # IPV6
117 1.1 scottr #options IPSEC # IP security
118 1.1 scottr #options IPSEC_ESP # IP security (encryption part; define w/IPSEC)
119 1.1 scottr #options IPSEC_DEBUG # debug for IP security
120 1.1 scottr options MROUTING # IP multicast routing
121 1.1 scottr #options NS # XNS
122 1.1 scottr #options NSIP # XNS tunneling over IP
123 1.1 scottr #options ISO,TPIP # OSI
124 1.1 scottr #options EON # OSI tunneling over IP
125 1.1 scottr #options CCITT,LLC,HDLC # X.25
126 1.1 scottr #options NETATALK # AppleTalk networking protocols
127 1.1 scottr options PPP_BSDCOMP # BSD-Compress compression support for PPP
128 1.1 scottr #options PPP_DEFLATE # Deflate compression support for PPP
129 1.1 scottr options PPP_FILTER # Active filter support for PPP (requires bpf)
130 1.1 scottr options PFIL_HOOKS # pfil(9) packet filter hooks
131 1.1 scottr #options IPFILTER_LOG # ipmon(8) log support
132 1.1 scottr #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
133 1.1 scottr
134 1.1 scottr # These options enable verbose messages for several subsystems.
135 1.1 scottr # Warning, these may compile large string tables into the kernel!
136 1.1 scottr #options SCSIVERBOSE # human readable SCSI error messages
137 1.1 scottr
138 1.1 scottr # wscons options
139 1.1 scottr #options WSEMUL_SUN # sun terminal emulation
140 1.1 scottr options WSEMUL_VT100 # VT100 / VT220 emulation
141 1.1 scottr options WSDISPLAY_COMPAT_ITEFONT # use ite font (6x10)
142 1.1 scottr
143 1.1 scottr # rcons options; note that 1-bit and 8-bit displays are supported by default.
144 1.1 scottr #options RCONS_2BPP # Support for 2-bit display
145 1.1 scottr #options RCONS_4BPP # Support for 4-bit display
146 1.1 scottr #options RCONS_16BPP # Support for 16-bit display
147 1.1 scottr
148 1.1 scottr # Mac-specific options
149 1.1 scottr #options ALTXBUTTONS # Map Opt-{1,2,3} to mouse buttons
150 1.1 scottr #options DISABLE_EXT_CACHE # Don't use IIci external cache
151 1.1 scottr options GRF_COMPAT # Include grf compatibility code
152 1.1 scottr #options MRG_ADB # Use ROM-based ADB driver
153 1.1 scottr #options ZS_CONSOLE_ABORT
154 1.1 scottr
155 1.1 scottr
156 1.1 scottr # Kernel root file system and dump configuration.
157 1.1 scottr config netbsd root on ? type ?
158 1.1 scottr
159 1.1 scottr #
160 1.1 scottr # Device configuration
161 1.1 scottr #
162 1.1 scottr
163 1.1 scottr mainbus0 at root
164 1.1 scottr
165 1.1 scottr fpu0 at mainbus? # Floating-Point Coprocessor support
166 1.1 scottr
167 1.1 scottr
168 1.1 scottr # Basic Bus Support
169 1.1 scottr
170 1.1 scottr # On-board I/O bus support
171 1.1 scottr obio0 at mainbus?
172 1.1 scottr
173 1.1 scottr # NuBus support
174 1.1 scottr nubus0 at mainbus?
175 1.1 scottr
176 1.1 scottr
177 1.1 scottr # Console Devices
178 1.1 scottr
179 1.1 scottr # Apple Desktop Bus interface
180 1.1 scottr adb0 at obio?
181 1.1 scottr aed* at adb? # ADB event device
182 1.1 scottr akbd* at adb? # ADB keyboard
183 1.1 scottr ams* at adb? # ADB mouse
184 1.1 scottr
185 1.1 scottr # Basic frame buffer support
186 1.1 scottr #intvid0 at obio? # Internal video hardware
187 1.1 scottr macvid* at nubus? # NuBus video card
188 1.1 scottr
189 1.1 scottr # Device-independent frame buffer interface
190 1.1 scottr #macfb* at intvid?
191 1.1 scottr macfb* at macvid?
192 1.1 scottr
193 1.1 scottr # Workstation Console devices
194 1.1 scottr wsdisplay0 at macfb? console ?
195 1.1 scottr wskbd0 at akbd? console ?
196 1.1 scottr wsmouse0 at ams?
197 1.1 scottr
198 1.1 scottr
199 1.1 scottr # Serial Devices
200 1.1 scottr
201 1.1 scottr # On-board serial interface
202 1.1 scottr zsc0 at obio?
203 1.1 scottr zstty* at zsc? channel ?
204 1.1 scottr
205 1.1 scottr
206 1.1 scottr # SCSI Controllers and Devices
207 1.1 scottr
208 1.1 scottr # SCSI controllers
209 1.1 scottr # XXX - use only one of ncrscsi or sbc
210 1.1 scottr #ncrscsi0 at obio? # SCSI NCR 5380
211 1.1 scottr sbc0 at obio? flags 0x1 # MI SCSI NCR 5380
212 1.1 scottr #esp0 at obio? # SCSI NCR 53C9x
213 1.1 scottr #esp1 at obio? # SCSI NCR 53C9x
214 1.1 scottr
215 1.1 scottr # SCSI bus support
216 1.1 scottr scsibus* at scsi?
217 1.1 scottr
218 1.1 scottr # SCSI devices
219 1.1 scottr sd* at scsibus? target ? lun ? # SCSI disk drives
220 1.1 scottr #st* at scsibus? target ? lun ? # SCSI tape drives
221 1.1 scottr #cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
222 1.1 scottr #ch* at scsibus? target ? lun ? # SCSI autochangers
223 1.1 scottr #se* at scsibus? target ? lun ? # SCSI ethernet
224 1.1 scottr #ss* at scsibus? target ? lun ? # SCSI scanners
225 1.1 scottr #uk* at scsibus? target ? lun ? # SCSI unknown
226 1.1 scottr
227 1.1 scottr # IDE controller and devices
228 1.1 scottr #wdc* at obio? flags 0x1000
229 1.1 scottr #wd* at wdc? channel ? drive ?
230 1.1 scottr
231 1.1 scottr
232 1.1 scottr # Miscellaneous mass storage devices
233 1.1 scottr
234 1.1 scottr # IWM floppy disk controller
235 1.1 scottr #iwm0 at obio? # Sony driver (800K GCR)
236 1.1 scottr #fd* at iwm? drive ?
237 1.1 scottr
238 1.1 scottr
239 1.1 scottr # Network Interfaces
240 1.1 scottr
241 1.1 scottr # On-board Ethernet controllers
242 1.1 scottr #sn* at obio? # SONIC-based (DP83932, DP83916)
243 1.1 scottr #mc* at obio? # MACE-based
244 1.1 scottr
245 1.1 scottr # NuBus Ethernet controllers
246 1.1 scottr ae* at nubus? # DP8390-based
247 1.1 scottr #sn* at nubus? # SONIC-based (DP83932, DP83916)
248 1.1 scottr #sm* at nubus? # SMC 91cxx-based
249 1.1 scottr
250 1.1 scottr nsphy* at mii? phy ?
251 1.1 scottr ukphy* at mii? phy ?
252 1.1 scottr
253 1.1 scottr # Audio Devices
254 1.1 scottr
255 1.1 scottr # On-board audio hardware
256 1.1 scottr asc0 at obio? # ASC/EASC audio
257 1.1 scottr
258 1.1 scottr # Pseudo-Devices
259 1.1 scottr
260 1.1 scottr # disk/mass storage pseudo-devices
261 1.1 scottr pseudo-device ccd 4 # concatenated/striped disk devices
262 1.1 scottr #pseudo-device raid 8 # RAIDframe disk driver
263 1.1 scottr #options RAID_AUTOCONFIG # auto-configuration of RAID components
264 1.1 scottr # Options to enable various other RAIDframe RAID types.
265 1.1 scottr # options RF_INCLUDE_EVENODD=1
266 1.1 scottr # options RF_INCLUDE_RAID5_RS=1
267 1.1 scottr # options RF_INCLUDE_PARITYLOGGING=1
268 1.1 scottr # options RF_INCLUDE_CHAINDECLUSTER=1
269 1.1 scottr # options RF_INCLUDE_INTERDECLUSTER=1
270 1.1 scottr # options RF_INCLUDE_PARITY_DECLUSTERING=1
271 1.1 scottr # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
272 1.1 scottr #pseudo-device md 1 # memory disk device (ramdisk)
273 1.1 scottr #pseudo-device vcoda 1 # Venus/Coda distributed file system
274 1.1 scottr pseudo-device vnd 4 # disk-like interface to files
275 1.1 scottr
276 1.1 scottr # network pseudo-devices
277 1.1 scottr pseudo-device bpfilter 12 # Berkeley packet filter
278 1.1 scottr pseudo-device ipfilter # IP filter (firewall) and NAT
279 1.1 scottr pseudo-device loop # network loopback
280 1.1 scottr pseudo-device ppp 2 # Point-to-Point Protocol
281 1.1 scottr #pseudo-device pppoe # PPP over Ethernet (RFC 2516)
282 1.1 scottr #pseudo-device sl 2 # Serial Line IP
283 1.1 scottr #pseudo-device strip 2 # Starmode Radio IP (Metricom)
284 1.1 scottr pseudo-device tun 2 # network tunneling over tty
285 1.1 scottr #pseudo-device gre 2 # generic L3 over IP tunnel
286 1.1 scottr #pseudo-device gif 4 # IPv[46] over IPv[46] tunnel (RFC1933)
287 1.1 scottr #pseudo-device faith 1 # IPv[46] tcp relay translation i/f
288 1.1 scottr #pseudo-device stf 1 # 6to4 IPv6 over IPv4 encapsulation
289 1.1 scottr #pseudo-device vlan # IEEE 802.1q encapsulation
290 1.1 scottr #pseudo-device bridge # simple inter-network bridging
291 1.1 scottr
292 1.1 scottr # miscellaneous pseudo-devices
293 1.1 scottr pseudo-device grf 2 # grf emulation for wscons
294 1.1 scottr pseudo-device ite 1 # ite emulation for wscons
295 1.1 scottr pseudo-device pty # pseudo-terminals
296 1.1 scottr #pseudo-device tb 1 # tablet line discipline
297 1.1 scottr
298 1.1 scottr # rnd is EXPERIMENTAL at this point.
299 1.1 scottr #pseudo-device rnd # /dev/random and in-kernel generator
300 1.1 scottr #options RND_COM # use "com" randomness as well (BROKEN)
301