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