#	$NetBSD: INSTALL_TINY,v 1.165 2024/01/29 18:27:13 christos Exp $
#
#	This kernel should be derived from INSTALL (which is derived
#	from GENERIC) with some features commented out.
#
#	This kernel has been optimized for space. It is targeted towards
#	small memory machines (4M). It has no SCSI, PCI or EISA. It does
#	have pcmcia, for old laptops.
#

include "arch/i386/conf/std.i386"

#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary

makeoptions	COPTS="-Os"		# Optimise for space. Implies -O2
makeoptions	USE_SSP="no"

# Enable the hooks used for initializing the root memory-disk.
options 	MEMORY_DISK_HOOKS
options 	MEMORY_DISK_IS_ROOT	# force root on memory disk
options 	MEMORY_DISK_SERVER=0	# no userspace memory disk support
options 	MEMORY_DISK_ROOT_SIZE=3100	# size of memory disk, in blocks
options 	MEMORY_DISK_RBFLAGS=RB_SINGLE	# boot in single-user mode

maxusers	2		# estimated number of users

# CPU-related options.
#options 	USER_LDT	# user-settable LDT; used by WINE

# This option allows you to force a serial console at the specified
# I/O address.
#options 	CONSDEVNAME="\"com\"",CONADDR=0x3f8,CONSPEED=9600

# The following options override the memory sizes passed in from the boot
# block.  Use them *only* if the boot block is unable to determine the correct
# values.  Note that the BIOS may *correctly* report less than 640k of base
# memory if the extended BIOS data area is located at the top of base memory
# (as is the case on most recent systems).
#options 	REALBASEMEM=...	# size of base memory
#options 	REALEXTMEM=...	# size of extended memory

options 	INSECURE	# disable kernel security levels

options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
#options 	NTP		# NTP phase/frequency locked loop

#options 	KTRACE		# system call tracing via ktrace(1)

#options 	SYSVSEM		# System V-like semaphores
#options 	SYSVSHM		# System V-like memory sharing

#options 	USERCONF	# userconf(4) support
options 	PIPE_SOCKETPAIR		# smaller, but slower pipe(2)
#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
no options 	EXEC_AOUT	# we don't a.out support

# Diagnostic/debugging support options
#options 	DIAGNOSTIC	# inexpensive kernel consistency checks
#options 	DEBUG		# expensive debugging checks/support
#options 	DDB		# in-kernel debugger
#options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
#options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
#options 	KGDB		# remote debugger
#options 	KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600
#makeoptions	DEBUG="-g"	# compile full symbol table

# Compatibility options
#include 	"conf/compat_netbsd09.config"
#options 	COMPAT_NOMID	# NetBSD 0.8, 386BSD, and BSDI
#options 	COMPAT_386BSD_MBRPART # recognize old partition ID

#options 	COMPAT_LINUX	# binary compatibility with Linux
#options 	COMPAT_OSSAUDIO	# binary compatibility with Linux
options 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.

# File systems
file-system	FFS		# UFS
#file-system	EXT2FS		# second extended file system (linux)
#file-system	LFS		# log-structured file system
#file-system	MFS		# memory file system
file-system	NFS		# Network File System client
file-system	CD9660		# ISO 9660 + Rock Ridge file system
file-system	MSDOSFS		# MS-DOS file system
#file-system	FDESC		# /dev/fd
#file-system	KERNFS		# /kern
#file-system	NULLFS		# loopback file system
#file-system	PROCFS		# /proc
#file-system	UMAPFS		# NULLFS + uid and gid remapping
#file-system	UNION		# union file system
#file-system	PTYFS		# /dev/pts/N support
#file-system	TMPFS		# Efficient memory file-system

# Filesystem options
#options 	QUOTA		# legacy UFS quotas
#options 	QUOTA2		# new, in-filesystem UFS quotas
#options 	DISKLABEL_EI	# disklabel Endian Independent support
#options 	FFS_EI		# FFS Endian Independent support
#options 	NFSSERVER	# Network File System server
options 	NFS_V2_ONLY	# Exclude NFS3 code to save space
options 	FFS_NO_SNAPSHOT	# No FFS snapshot support

# Networking options
#options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
#options 	MROUTING	# IP multicast routing
#options 	PIM		# Protocol Independent Multicast
#options 	NETATALK	# AppleTalk networking protocols
#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
#options 	PPP_DEFLATE	# Deflate compression support for PPP
#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
#options 	EISAVERBOSE	# verbose EISA device autoconfig messages
#options 	PCIVERBOSE	# verbose PCI device autoconfig messages
#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
#options 	SCSIVERBOSE	# human readable SCSI error messages

# Squeeze...
options 	NVNODE=50
options 	NBUF=20
options 	BUFPAGES=20

# Kernel root file system and dump configuration.
config		netbsd	root on ? type ?
#config		netbsd	root on sd0a type ffs
#config		netbsd	root on ? type nfs

#
# wscons options
#
# builtin terminal emulations
#options 	WSEMUL_SUN		# sun terminal emulation
options 	WSEMUL_VT100		# VT100 / VT220 emulation
# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
#options 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
#options 	WS_DEFAULT_FG=WSCOL_WHITE
#options 	WS_DEFAULT_BG=WSCOL_BLACK
#options 	WS_DEFAULT_COLATTR="(0)"
#options 	WS_DEFAULT_MONOATTR="(0)"
options 	WS_KERNEL_FG=WSCOL_GREEN
#options 	WS_KERNEL_BG=WSCOL_BLACK
#options 	WS_KERNEL_COLATTR=""
#options 	WS_KERNEL_MONOATTR=""
# customization of console border color
#options 	WSDISPLAY_CUSTOM_BORDER	# border customization from wsconsctl(8)
#options 	WSDISPLAY_BORDER_COLOR=WSCOL_BLUE	# default color
# compatibility to other console drivers
options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)" # for pckbd driver
#options 	UKBD_LAYOUT="(KB_DE | KB_NODEAD)"  # for ukbd driver
# allocate a number of virtual screens at autoconfiguration time
#options 	WSDISPLAY_DEFAULTSCREENS=4
# use a large software cursor that doesn't blink
options 	PCDISPLAY_SOFTCURSOR

#
# Device configuration
#

#apm0	at mainbus0			# Advanced power management


# Basic Bus Support

# PCI bus support
#pci*	at mainbus? bus ?
#pci*	at pchb? bus ?
#pci*	at ppb? bus ?

# PCI bridges
#pchb*	at pci? dev ? function ?	# PCI-Host bridges
#pceb*	at pci? dev ? function ?	# PCI-EISA bridges
#pcib*	at pci? dev ? function ?	# PCI-ISA bridges
#ppb*	at pci? dev ? function ?	# PCI-PCI bridges
# XXX 'puc's aren't really bridges, but there's no better place for them here
#puc*	at pci? dev ? function ?	# PCI "universal" comm. cards

# As well as 5 and 7, avoid irq 4 and 3 because we do not probe com* here
options 	PCIC_ISA_INTR_ALLOC_MASK=0xff47

# PCMCIA bus support
pcmcia* at pcic? controller ? socket ?
#pcmcia* at tcic? controller ? socket ?

# ISA PCMCIA controllers
pcic0	at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000
pcic1	at isa? port 0x3e2 iomem 0xe0000 iosiz 0x4000

# EISA bus support
#eisa0	at mainbus?
#eisa0	at pceb?

# ISA bus support
isa0	at mainbus?
#isa0	at pceb?
#isa0	at pcib?

# ISA Plug-and-Play bus support
#isapnp0 at isa?


# Console Devices

# wscons
pckbc0		at isa?			# PC keyboard controller
pckbd*		at pckbc?		# PC keyboard
pcdisplay0	at isa?			# CGA, MDA, EGA, HGA
wsdisplay*	at pcdisplay? console ?
wskbd*		at pckbd? console ?
#wsmouse*	at pms? mux 0

# Serial Devices

# PCI serial interfaces
#com*	at puc? port ?			# 16x50s on "universal" comm boards
#cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards

# ISA Plug-and-Play serial interfaces
#com*	at isapnp?			# Modems and serial boards

# PCMCIA serial interfaces
#com*	at pcmcia? function ?		# Modems and serial cards

# ISA serial interfaces
#options 	COM_HAYESP		# adds Hayes ESP serial board support
#com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
#com1	at isa? port 0x2f8 irq 3
#com2	at isa? port 0x3e8 irq 5
#com3	at isa? port 0x2e8 irq 9
#ast0	at isa? port 0x1a0 irq 5	# AST 4-port serial cards
#com*	at ast? slave ?
#boca0	at isa? port 0x100 irq 5	# BOCA 8-port serial cards
#com*	at boca? slave ?
#rtfps0	at isa? port 0x1230 irq 10	# RT 4-port serial cards
#com*	at rtfps? slave ?
#cy0	at isa? iomem 0xd4000 irq 12	# Cyclades serial cards


# Parallel Printer Interfaces

# PCI parallel printer interfaces
#lpt*	at puc? port ?			# || ports on "universal" comm boards

# ISA parallel printer interfaces
#lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports
#lpt1	at isa? port 0x278
#lpt2	at isa? port 0x3bc

# I2O devices
#iop*	at pci? dev ? function ?	# I/O processor
#iopsp*	at iop? tid ?			# SCSI/FC-AL ports
#ld*	at iop? tid ?			# block devices
#dpti*	at iop? tid 0			# DPT/Adaptec control interface

# SCSI Controllers and Devices

# PCI SCSI controllers
#ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
#bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
#dpt*	at pci? dev ? function ?	# DPT SmartCache/SmartRAID
#isp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
#mly*	at pci? dev ? function ?	# Mylex AcceleRAID and eXtremeRAID
#siop*	at pci? dev ? function ?	# NCR 53c8xx SCSI

# EISA SCSI controllers
#ahb*	at eisa? slot ?			# Adaptec 174[02] SCSI
#ahc*	at eisa? slot ?			# Adaptec 274x, aic7770 SCSI
#bha*	at eisa? slot ?			# BusLogic 7xx SCSI
#dpt*	at eisa? slot ?			# DPT SmartCache/SmartRAID
#uha*	at eisa? slot ?			# UltraStor 24f SCSI

# PCMCIA SCSI controllers
#aic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI

# ISA Plug-and-Play SCSI controllers
#aic*	at isapnp?			# Adaptec AHA-1520B

# ISA SCSI controllers
#aha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI
#aha1	at isa? port 0x334 irq ? drq ?
#ahc0	at isa? port ? irq ?		# Adaptec 284x SCSI
#aic0	at isa? port 0x340 irq 11	# Adaptec 152[02] SCSI
#bha0	at isa? port 0x330 irq ? drq ?	# BusLogic [457]4X SCSI
#bha1	at isa? port 0x334 irq ? drq ?
# The "nca" and "dpt" probes might give false hits or hang your machine.
#dpt0	at isa? port 0x170 irq ? drq ?	# DPT SmartCache/SmartRAID
#nca0	at isa? port 0x360 irq 15	# Port-mapped NCR 53C80 controller
#nca1	at isa? iomem 0xd8000 irq 5	# Memory-mapped controller (T128, etc.)
#sea0	at isa? iomem 0xc8000 irq 5	# Seagate/Future Domain SCSI
#uha0	at isa? port 0x330 irq ? drq ?	# UltraStor [13]4f SCSI
#uha1	at isa? port 0x340 irq ? drq ?
#wds0	at isa? port 0x350 irq 15 drq 6	# WD7000 and TMC-7000 controllers
#wds1	at isa? port 0x358 irq 11 drq 5

# SCSI bus support
#scsibus* at scsi?

# SCSI devices
#sd*	at scsibus? target ? lun ?	# SCSI disk drives
#st*	at scsibus? target ? lun ?	# SCSI tape drives
#cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
#ch*	at scsibus? target ? lun ?	# SCSI autochangers
#ss*	at scsibus? target ? lun ?	# SCSI scanners
#uk*	at scsibus? target ? lun ?	# SCSI unknown


# RAID controllers and devices
#aac*	at pci? dev ? function ?	# Adaptec AAC family
#cac*	at eisa? slot ?			# Compaq EISA array controllers
#cac*	at pci? dev ? function ?	# Compaq PCI array controllers
#ciss*	at pci? dev ? function ?	# HP Smart Array controllers
#icp*	at pci? dev ? function ?	# ICP-Vortex GDT & Intel RAID
#mlx*	at pci? dev ? function ?	# Mylex DAC960 & DEC SWXCR family
#mlx*	at eisa? slot ?			# Mylex DAC960 & DEC SWXCR family
#twe*	at pci? dev ? function ?	# 3ware Escalade RAID controllers

#ld*	at aac? unit ?			# logical disk devices
#ld*	at cac? unit ?
#ld*	at icp? unit ?
#ld*	at twe? unit ?
#ld*	at mlx? unit ?

#icpsp*	at icp? unit ?			# SCSI pass-through


# IDE and related devices

# PCMCIA IDE controllers
wdc*	at pcmcia? function ?

# ST506, ESDI, and ISA IDE controllers
# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
# fall back to 16bits I/O if 32bits I/O are not functional).
# Some controllers pass the initial 32bit test, but will fail later.
wdc0	at isa? port 0x1f0 irq 14 flags 0x00
wdc1	at isa? port 0x170 irq 15 flags 0x00

# ATA (IDE) bus support
atabus* at ata?

# IDE drives
wd*	at atabus? drive ?		# the drives themselves

# ATAPI bus support
atapibus* at atapi?

# ATAPI devices
cd*	at atapibus? drive ?		# ATAPI CD-ROM drives
#sd*	at atapibus? drive ?		# ATAPI disk drives


# Miscellaneous mass storage devices

# ISA floppy
fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
#fdc1	at isa? port 0x370 irq ? drq ?
fd*	at fdc? drive ?			# the drives themselves
# some machines need you to do this instead of fd*
#fd0	at fdc0 drive 0

# ISA CD-ROM devices
#mcd0	at isa? port 0x300 irq 10	# Mitsumi CD-ROM drives

# ISA tape devices
# note: the wt driver conflicts unpleasantly with ed devices at the
# same I/O address. The probe reprograms their EEPROMs. Don't
# uncomment it unless you are actually using it.
#wt0	at isa? port 0x308 irq 5 drq 1	# Archive and Wangtek QIC tape drives


# Network Interfaces

# PCI network interfaces
#ep*	at pci? dev ? function ?	# 3Com 3c59x/3c90x Ethernet
#fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
#pcn*	at pci? dev ? function ?	# PCnet-PCI Ethernet
#ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
#tl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
#tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones

# EISA network interfaces
#ep*	at eisa? slot ?			# 3Com 3c579 Ethernet

# ISA Plug-and-Play network interfaces
#ep*	at isapnp?			# 3Com 3c509 Ethernet
#ne*	at isapnp?			# NE2000-compatible Ethernet

# PCMCIA network interfaces
ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
mbe*	at pcmcia? function ?		# MB8696x based Ethernet
ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
sm*	at pcmcia? function ?		# Megahertz Ethernet

# ISA network interfaces
ate0	at isa? port 0x2a0 irq ?		# AT1700
ec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
#eg0	at isa? port 0x280 irq 9		# 3c505 Ethernet cards
#el0	at isa? port 0x300 irq 9		# 3c501 Ethernet cards
ep0	at isa? port ? irq ?			# 3c509 Ethernet cards
#ef0	at isa? port 0x360 iomem 0xd0000 irq 7	# 3c507
ai0	at isa? port 0x360 iomem 0xd0000 irq 7	# StarLAN
fmv0	at isa? port 0x2a0 irq ?		# FMV-180 series
ix0	at isa? port 0x300 irq 10		# EtherExpress/16
iy0	at isa? port 0x360 irq ?		# EtherExpress PRO 10 ISA
lc0	at isa? port 0x320 iomem ? irq ?	# DEC EtherWORKS III (LEMAC)
#depca0	at isa? port 0x300 iomem 0xc8000 iosiz 0x8000 irq 5	# DEPCA
#le*	at depca?
#nele0	at isa? port 0x320 irq 9 drq 7		# NE2100
#le*	at nele?
#bicc0	at isa? port 0x320 irq 10 drq 7		# BICC IsoLan
#le*	at bicc?
ne0	at isa? port 0x280 irq 9		# NE[12]000 Ethernet cards
ne1	at isa? port 0x300 irq 10
sm0	at isa? port 0x300 irq 10		# SMC91C9x Ethernet
we0	at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
we1	at isa? port 0x300 iomem 0xcc000 irq 10

# MII bus support
#mii*	at tl?

# MII PHY network interfaces
#tlphy*	at mii? dev ?			# ThunderLAN PHYs
#nsphy*	at mii? dev ?			# NS and compatible PHYs
#ukphy*	at mii? phy ?			# generic unknown PHYs


# Audio Devices

# ISA Plug-and-Play audio devices
#guspnp* at isapnp?			# Gravis Ultra Sound PnP audio
#sb*	at isapnp?			# SoundBlaster-compatible audio

# ISA audio devices
#gus0	at isa? port 0x220 irq 7 drq 1 drq2 6	# Gravis Ultra Sound
#pas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum
#sb0	at isa? port 0x220 irq 7 drq 1 drq2 5	# SoundBlaster
#wss0	at isa? port 0x530 irq 10 drq 0	drq2 1	# Windows Sound System

# Audio support
#audio*	at audiobus?

# The spkr driver provides a simple tone interface to the built in speaker.
#spkr*	at pcppi?		# PC speaker
#spkr*	at audio?		# PC speaker (synthesized)


# Joysticks

# ISA Plug-and-Play joysticks
#joy*	at isapnp?			# Game ports (usually on audio cards)

# ISA joysticks. Probe is a little strange; add only if you have one.
#joy0	at isa? port 0x201

# Pseudo-Devices

# disk/mass storage pseudo-devices
#pseudo-device	ccd			# concatenated/striped disk devices
#pseudo-device	fss			# file system snapshot device
pseudo-device	md			# memory disk device (ramdisk)
#pseudo-device	vnd			# disk-like interface to files

# network pseudo-devices
#pseudo-device	bpfilter		# Berkeley packet filter
pseudo-device	loop			# network loopback
#pseudo-device	ppp			# Point-to-Point Protocol
#pseudo-device	sl			# Serial Line IP
#pseudo-device	tun			# network tunneling over tty

# miscellaneous pseudo-devices
pseudo-device	pty			# pseudo-terminals
options 	NO_DEV_PTM
#options 	RND_COM			# use "com" randomness as well (BROKEN)

# Pull in optional local configuration - always at end
cinclude	"arch/i386/conf/INSTALL.local"
