1#	$NetBSD: INSTALL_TINY,v 1.165 2024/01/29 18:27:13 christos Exp $
2#
3#	This kernel should be derived from INSTALL (which is derived
4#	from GENERIC) with some features commented out.
5#
6#	This kernel has been optimized for space. It is targeted towards
7#	small memory machines (4M). It has no SCSI, PCI or EISA. It does
8#	have pcmcia, for old laptops.
9#
10
11include "arch/i386/conf/std.i386"
12
13#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
14
15makeoptions	COPTS="-Os"		# Optimise for space. Implies -O2
16makeoptions	USE_SSP="no"
17
18# Enable the hooks used for initializing the root memory-disk.
19options 	MEMORY_DISK_HOOKS
20options 	MEMORY_DISK_IS_ROOT	# force root on memory disk
21options 	MEMORY_DISK_SERVER=0	# no userspace memory disk support
22options 	MEMORY_DISK_ROOT_SIZE=3100	# size of memory disk, in blocks
23options 	MEMORY_DISK_RBFLAGS=RB_SINGLE	# boot in single-user mode
24
25maxusers	2		# estimated number of users
26
27# CPU-related options.
28#options 	USER_LDT	# user-settable LDT; used by WINE
29
30# This option allows you to force a serial console at the specified
31# I/O address.
32#options 	CONSDEVNAME="\"com\"",CONADDR=0x3f8,CONSPEED=9600
33
34# The following options override the memory sizes passed in from the boot
35# block.  Use them *only* if the boot block is unable to determine the correct
36# values.  Note that the BIOS may *correctly* report less than 640k of base
37# memory if the extended BIOS data area is located at the top of base memory
38# (as is the case on most recent systems).
39#options 	REALBASEMEM=...	# size of base memory
40#options 	REALEXTMEM=...	# size of extended memory
41
42options 	INSECURE	# disable kernel security levels
43
44options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
45#options 	NTP		# NTP phase/frequency locked loop
46
47#options 	KTRACE		# system call tracing via ktrace(1)
48
49#options 	SYSVSEM		# System V-like semaphores
50#options 	SYSVSHM		# System V-like memory sharing
51
52#options 	USERCONF	# userconf(4) support
53options 	PIPE_SOCKETPAIR		# smaller, but slower pipe(2)
54#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
55no options 	EXEC_AOUT	# we don't a.out support
56
57# Diagnostic/debugging support options
58#options 	DIAGNOSTIC	# inexpensive kernel consistency checks
59#options 	DEBUG		# expensive debugging checks/support
60#options 	DDB		# in-kernel debugger
61#options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
62#options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
63#options 	KGDB		# remote debugger
64#options 	KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600
65#makeoptions	DEBUG="-g"	# compile full symbol table
66
67# Compatibility options
68#include 	"conf/compat_netbsd09.config"
69#options 	COMPAT_NOMID	# NetBSD 0.8, 386BSD, and BSDI
70#options 	COMPAT_386BSD_MBRPART # recognize old partition ID
71
72#options 	COMPAT_LINUX	# binary compatibility with Linux
73#options 	COMPAT_OSSAUDIO	# binary compatibility with Linux
74options 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
75
76# File systems
77file-system	FFS		# UFS
78#file-system	EXT2FS		# second extended file system (linux)
79#file-system	LFS		# log-structured file system
80#file-system	MFS		# memory file system
81file-system	NFS		# Network File System client
82file-system	CD9660		# ISO 9660 + Rock Ridge file system
83file-system	MSDOSFS		# MS-DOS file system
84#file-system	FDESC		# /dev/fd
85#file-system	KERNFS		# /kern
86#file-system	NULLFS		# loopback file system
87#file-system	PROCFS		# /proc
88#file-system	UMAPFS		# NULLFS + uid and gid remapping
89#file-system	UNION		# union file system
90#file-system	PTYFS		# /dev/pts/N support
91#file-system	TMPFS		# Efficient memory file-system
92
93# Filesystem options
94#options 	QUOTA		# legacy UFS quotas
95#options 	QUOTA2		# new, in-filesystem UFS quotas
96#options 	DISKLABEL_EI	# disklabel Endian Independent support
97#options 	FFS_EI		# FFS Endian Independent support
98#options 	NFSSERVER	# Network File System server
99options 	NFS_V2_ONLY	# Exclude NFS3 code to save space
100options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
101
102# Networking options
103#options 	GATEWAY		# packet forwarding
104options 	INET		# IP + ICMP + TCP + UDP
105#options 	MROUTING	# IP multicast routing
106#options 	PIM		# Protocol Independent Multicast
107#options 	NETATALK	# AppleTalk networking protocols
108#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
109#options 	PPP_DEFLATE	# Deflate compression support for PPP
110#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
111#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
112
113# These options enable verbose messages for several subsystems.
114# Warning, these may compile large string tables into the kernel!
115#options 	EISAVERBOSE	# verbose EISA device autoconfig messages
116#options 	PCIVERBOSE	# verbose PCI device autoconfig messages
117#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
118#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
119#options 	SCSIVERBOSE	# human readable SCSI error messages
120
121# Squeeze...
122options 	NVNODE=50
123options 	NBUF=20
124options 	BUFPAGES=20
125
126# Kernel root file system and dump configuration.
127config		netbsd	root on ? type ?
128#config		netbsd	root on sd0a type ffs
129#config		netbsd	root on ? type nfs
130
131#
132# wscons options
133#
134# builtin terminal emulations
135#options 	WSEMUL_SUN		# sun terminal emulation
136options 	WSEMUL_VT100		# VT100 / VT220 emulation
137# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
138#options 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
139#options 	WS_DEFAULT_FG=WSCOL_WHITE
140#options 	WS_DEFAULT_BG=WSCOL_BLACK
141#options 	WS_DEFAULT_COLATTR="(0)"
142#options 	WS_DEFAULT_MONOATTR="(0)"
143options 	WS_KERNEL_FG=WSCOL_GREEN
144#options 	WS_KERNEL_BG=WSCOL_BLACK
145#options 	WS_KERNEL_COLATTR=""
146#options 	WS_KERNEL_MONOATTR=""
147# customization of console border color
148#options 	WSDISPLAY_CUSTOM_BORDER	# border customization from wsconsctl(8)
149#options 	WSDISPLAY_BORDER_COLOR=WSCOL_BLUE	# default color
150# compatibility to other console drivers
151options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
152options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
153options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
154options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
155# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
156#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)" # for pckbd driver
157#options 	UKBD_LAYOUT="(KB_DE | KB_NODEAD)"  # for ukbd driver
158# allocate a number of virtual screens at autoconfiguration time
159#options 	WSDISPLAY_DEFAULTSCREENS=4
160# use a large software cursor that doesn't blink
161options 	PCDISPLAY_SOFTCURSOR
162
163#
164# Device configuration
165#
166
167#apm0	at mainbus0			# Advanced power management
168
169
170# Basic Bus Support
171
172# PCI bus support
173#pci*	at mainbus? bus ?
174#pci*	at pchb? bus ?
175#pci*	at ppb? bus ?
176
177# PCI bridges
178#pchb*	at pci? dev ? function ?	# PCI-Host bridges
179#pceb*	at pci? dev ? function ?	# PCI-EISA bridges
180#pcib*	at pci? dev ? function ?	# PCI-ISA bridges
181#ppb*	at pci? dev ? function ?	# PCI-PCI bridges
182# XXX 'puc's aren't really bridges, but there's no better place for them here
183#puc*	at pci? dev ? function ?	# PCI "universal" comm. cards
184
185# As well as 5 and 7, avoid irq 4 and 3 because we do not probe com* here
186options 	PCIC_ISA_INTR_ALLOC_MASK=0xff47
187
188# PCMCIA bus support
189pcmcia* at pcic? controller ? socket ?
190#pcmcia* at tcic? controller ? socket ?
191
192# ISA PCMCIA controllers
193pcic0	at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000
194pcic1	at isa? port 0x3e2 iomem 0xe0000 iosiz 0x4000
195
196# EISA bus support
197#eisa0	at mainbus?
198#eisa0	at pceb?
199
200# ISA bus support
201isa0	at mainbus?
202#isa0	at pceb?
203#isa0	at pcib?
204
205# ISA Plug-and-Play bus support
206#isapnp0 at isa?
207
208
209# Console Devices
210
211# wscons
212pckbc0		at isa?			# PC keyboard controller
213pckbd*		at pckbc?		# PC keyboard
214pcdisplay0	at isa?			# CGA, MDA, EGA, HGA
215wsdisplay*	at pcdisplay? console ?
216wskbd*		at pckbd? console ?
217#wsmouse*	at pms? mux 0
218
219# Serial Devices
220
221# PCI serial interfaces
222#com*	at puc? port ?			# 16x50s on "universal" comm boards
223#cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
224
225# ISA Plug-and-Play serial interfaces
226#com*	at isapnp?			# Modems and serial boards
227
228# PCMCIA serial interfaces
229#com*	at pcmcia? function ?		# Modems and serial cards
230
231# ISA serial interfaces
232#options 	COM_HAYESP		# adds Hayes ESP serial board support
233#com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
234#com1	at isa? port 0x2f8 irq 3
235#com2	at isa? port 0x3e8 irq 5
236#com3	at isa? port 0x2e8 irq 9
237#ast0	at isa? port 0x1a0 irq 5	# AST 4-port serial cards
238#com*	at ast? slave ?
239#boca0	at isa? port 0x100 irq 5	# BOCA 8-port serial cards
240#com*	at boca? slave ?
241#rtfps0	at isa? port 0x1230 irq 10	# RT 4-port serial cards
242#com*	at rtfps? slave ?
243#cy0	at isa? iomem 0xd4000 irq 12	# Cyclades serial cards
244
245
246# Parallel Printer Interfaces
247
248# PCI parallel printer interfaces
249#lpt*	at puc? port ?			# || ports on "universal" comm boards
250
251# ISA parallel printer interfaces
252#lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports
253#lpt1	at isa? port 0x278
254#lpt2	at isa? port 0x3bc
255
256# I2O devices
257#iop*	at pci? dev ? function ?	# I/O processor
258#iopsp*	at iop? tid ?			# SCSI/FC-AL ports
259#ld*	at iop? tid ?			# block devices
260#dpti*	at iop? tid 0			# DPT/Adaptec control interface
261
262# SCSI Controllers and Devices
263
264# PCI SCSI controllers
265#ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
266#bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
267#dpt*	at pci? dev ? function ?	# DPT SmartCache/SmartRAID
268#isp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
269#mly*	at pci? dev ? function ?	# Mylex AcceleRAID and eXtremeRAID
270#siop*	at pci? dev ? function ?	# NCR 53c8xx SCSI
271
272# EISA SCSI controllers
273#ahb*	at eisa? slot ?			# Adaptec 174[02] SCSI
274#ahc*	at eisa? slot ?			# Adaptec 274x, aic7770 SCSI
275#bha*	at eisa? slot ?			# BusLogic 7xx SCSI
276#dpt*	at eisa? slot ?			# DPT SmartCache/SmartRAID
277#uha*	at eisa? slot ?			# UltraStor 24f SCSI
278
279# PCMCIA SCSI controllers
280#aic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI
281
282# ISA Plug-and-Play SCSI controllers
283#aic*	at isapnp?			# Adaptec AHA-1520B
284
285# ISA SCSI controllers
286#aha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI
287#aha1	at isa? port 0x334 irq ? drq ?
288#ahc0	at isa? port ? irq ?		# Adaptec 284x SCSI
289#aic0	at isa? port 0x340 irq 11	# Adaptec 152[02] SCSI
290#bha0	at isa? port 0x330 irq ? drq ?	# BusLogic [457]4X SCSI
291#bha1	at isa? port 0x334 irq ? drq ?
292# The "nca" and "dpt" probes might give false hits or hang your machine.
293#dpt0	at isa? port 0x170 irq ? drq ?	# DPT SmartCache/SmartRAID
294#nca0	at isa? port 0x360 irq 15	# Port-mapped NCR 53C80 controller
295#nca1	at isa? iomem 0xd8000 irq 5	# Memory-mapped controller (T128, etc.)
296#sea0	at isa? iomem 0xc8000 irq 5	# Seagate/Future Domain SCSI
297#uha0	at isa? port 0x330 irq ? drq ?	# UltraStor [13]4f SCSI
298#uha1	at isa? port 0x340 irq ? drq ?
299#wds0	at isa? port 0x350 irq 15 drq 6	# WD7000 and TMC-7000 controllers
300#wds1	at isa? port 0x358 irq 11 drq 5
301
302# SCSI bus support
303#scsibus* at scsi?
304
305# SCSI devices
306#sd*	at scsibus? target ? lun ?	# SCSI disk drives
307#st*	at scsibus? target ? lun ?	# SCSI tape drives
308#cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
309#ch*	at scsibus? target ? lun ?	# SCSI autochangers
310#ss*	at scsibus? target ? lun ?	# SCSI scanners
311#uk*	at scsibus? target ? lun ?	# SCSI unknown
312
313
314# RAID controllers and devices
315#aac*	at pci? dev ? function ?	# Adaptec AAC family
316#cac*	at eisa? slot ?			# Compaq EISA array controllers
317#cac*	at pci? dev ? function ?	# Compaq PCI array controllers
318#ciss*	at pci? dev ? function ?	# HP Smart Array controllers
319#icp*	at pci? dev ? function ?	# ICP-Vortex GDT & Intel RAID
320#mlx*	at pci? dev ? function ?	# Mylex DAC960 & DEC SWXCR family
321#mlx*	at eisa? slot ?			# Mylex DAC960 & DEC SWXCR family
322#twe*	at pci? dev ? function ?	# 3ware Escalade RAID controllers
323
324#ld*	at aac? unit ?			# logical disk devices
325#ld*	at cac? unit ?
326#ld*	at icp? unit ?
327#ld*	at twe? unit ?
328#ld*	at mlx? unit ?
329
330#icpsp*	at icp? unit ?			# SCSI pass-through
331
332
333# IDE and related devices
334
335# PCMCIA IDE controllers
336wdc*	at pcmcia? function ?
337
338# ST506, ESDI, and ISA IDE controllers
339# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
340# fall back to 16bits I/O if 32bits I/O are not functional).
341# Some controllers pass the initial 32bit test, but will fail later.
342wdc0	at isa? port 0x1f0 irq 14 flags 0x00
343wdc1	at isa? port 0x170 irq 15 flags 0x00
344
345# ATA (IDE) bus support
346atabus* at ata?
347
348# IDE drives
349wd*	at atabus? drive ?		# the drives themselves
350
351# ATAPI bus support
352atapibus* at atapi?
353
354# ATAPI devices
355cd*	at atapibus? drive ?		# ATAPI CD-ROM drives
356#sd*	at atapibus? drive ?		# ATAPI disk drives
357
358
359# Miscellaneous mass storage devices
360
361# ISA floppy
362fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
363#fdc1	at isa? port 0x370 irq ? drq ?
364fd*	at fdc? drive ?			# the drives themselves
365# some machines need you to do this instead of fd*
366#fd0	at fdc0 drive 0
367
368# ISA CD-ROM devices
369#mcd0	at isa? port 0x300 irq 10	# Mitsumi CD-ROM drives
370
371# ISA tape devices
372# note: the wt driver conflicts unpleasantly with ed devices at the
373# same I/O address. The probe reprograms their EEPROMs. Don't
374# uncomment it unless you are actually using it.
375#wt0	at isa? port 0x308 irq 5 drq 1	# Archive and Wangtek QIC tape drives
376
377
378# Network Interfaces
379
380# PCI network interfaces
381#ep*	at pci? dev ? function ?	# 3Com 3c59x/3c90x Ethernet
382#fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
383#pcn*	at pci? dev ? function ?	# PCnet-PCI Ethernet
384#ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
385#tl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
386#tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
387
388# EISA network interfaces
389#ep*	at eisa? slot ?			# 3Com 3c579 Ethernet
390
391# ISA Plug-and-Play network interfaces
392#ep*	at isapnp?			# 3Com 3c509 Ethernet
393#ne*	at isapnp?			# NE2000-compatible Ethernet
394
395# PCMCIA network interfaces
396ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
397mbe*	at pcmcia? function ?		# MB8696x based Ethernet
398ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
399sm*	at pcmcia? function ?		# Megahertz Ethernet
400
401# ISA network interfaces
402ate0	at isa? port 0x2a0 irq ?		# AT1700
403ec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
404#eg0	at isa? port 0x280 irq 9		# 3c505 Ethernet cards
405#el0	at isa? port 0x300 irq 9		# 3c501 Ethernet cards
406ep0	at isa? port ? irq ?			# 3c509 Ethernet cards
407#ef0	at isa? port 0x360 iomem 0xd0000 irq 7	# 3c507
408ai0	at isa? port 0x360 iomem 0xd0000 irq 7	# StarLAN
409fmv0	at isa? port 0x2a0 irq ?		# FMV-180 series
410ix0	at isa? port 0x300 irq 10		# EtherExpress/16
411iy0	at isa? port 0x360 irq ?		# EtherExpress PRO 10 ISA
412lc0	at isa? port 0x320 iomem ? irq ?	# DEC EtherWORKS III (LEMAC)
413#depca0	at isa? port 0x300 iomem 0xc8000 iosiz 0x8000 irq 5	# DEPCA
414#le*	at depca?
415#nele0	at isa? port 0x320 irq 9 drq 7		# NE2100
416#le*	at nele?
417#bicc0	at isa? port 0x320 irq 10 drq 7		# BICC IsoLan
418#le*	at bicc?
419ne0	at isa? port 0x280 irq 9		# NE[12]000 Ethernet cards
420ne1	at isa? port 0x300 irq 10
421sm0	at isa? port 0x300 irq 10		# SMC91C9x Ethernet
422we0	at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
423we1	at isa? port 0x300 iomem 0xcc000 irq 10
424
425# MII bus support
426#mii*	at tl?
427
428# MII PHY network interfaces
429#tlphy*	at mii? dev ?			# ThunderLAN PHYs
430#nsphy*	at mii? dev ?			# NS and compatible PHYs
431#ukphy*	at mii? phy ?			# generic unknown PHYs
432
433
434# Audio Devices
435
436# ISA Plug-and-Play audio devices
437#guspnp* at isapnp?			# Gravis Ultra Sound PnP audio
438#sb*	at isapnp?			# SoundBlaster-compatible audio
439
440# ISA audio devices
441#gus0	at isa? port 0x220 irq 7 drq 1 drq2 6	# Gravis Ultra Sound
442#pas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum
443#sb0	at isa? port 0x220 irq 7 drq 1 drq2 5	# SoundBlaster
444#wss0	at isa? port 0x530 irq 10 drq 0	drq2 1	# Windows Sound System
445
446# Audio support
447#audio*	at audiobus?
448
449# The spkr driver provides a simple tone interface to the built in speaker.
450#spkr*	at pcppi?		# PC speaker
451#spkr*	at audio?		# PC speaker (synthesized)
452
453
454# Joysticks
455
456# ISA Plug-and-Play joysticks
457#joy*	at isapnp?			# Game ports (usually on audio cards)
458
459# ISA joysticks. Probe is a little strange; add only if you have one.
460#joy0	at isa? port 0x201
461
462# Pseudo-Devices
463
464# disk/mass storage pseudo-devices
465#pseudo-device	ccd			# concatenated/striped disk devices
466#pseudo-device	fss			# file system snapshot device
467pseudo-device	md			# memory disk device (ramdisk)
468#pseudo-device	vnd			# disk-like interface to files
469
470# network pseudo-devices
471#pseudo-device	bpfilter		# Berkeley packet filter
472pseudo-device	loop			# network loopback
473#pseudo-device	ppp			# Point-to-Point Protocol
474#pseudo-device	sl			# Serial Line IP
475#pseudo-device	tun			# network tunneling over tty
476
477# miscellaneous pseudo-devices
478pseudo-device	pty			# pseudo-terminals
479options 	NO_DEV_PTM
480#options 	RND_COM			# use "com" randomness as well (BROKEN)
481
482# Pull in optional local configuration - always at end
483cinclude	"arch/i386/conf/INSTALL.local"
484