1#         $NetBSD: INSTALL,v 1.68 2024/09/03 19:51:02 andvar Exp $
2#
3#         INSTALL -- Installation kernel
4#
5
6include "arch/prep/conf/std.prep"
7
8#options  INCLUDE_CONFIG_FILE # embed config file in kernel binary
9
10makeoptions         COPTS="-Os" # Reduce size.
11
12# Enable the hooks used for initializing the ram-disk.
13options   MEMORY_DISK_HOOKS
14options   MEMORY_DISK_IS_ROOT # Force root on ram-disk
15options   MEMORY_DISK_ROOT_SIZE=4608    # 2.25mb
16options   MEMORY_DISK_SERVER=0          # don't need for install
17options   MEMORY_DISK_RBFLAGS=RB_SINGLE # boot in single-user mode
18
19maxusers  8
20
21# Platform support
22options   PIC_OPENPIC         # OpenPIC support (7043-140)
23options   PIC_PREPIVR
24options   PIC_I8259
25
26# Compatibility options
27include   "conf/compat_netbsd20.config"
28
29# File systems
30file-system         FFS                 # UFS
31#file-system        EXT2FS              # second extended file system (linux)
32file-system         MFS                 # memory file system
33file-system         NFS                 # Network File System client
34file-system         CD9660              # ISO 9660 + Rock Ridge file system
35file-system         MSDOSFS             # MS-DOS file system
36#file-system        PTYFS               # /dev/pts/N support
37
38# File system options
39#options  DISKLABEL_EI        # disklabel Endian Independent support
40#options  FFS_EI              # FFS Endian Independent support
41options   FFS_NO_SNAPSHOT     # No FFS snapshot support
42options   WAPBL               # File system journaling support
43
44#options  USERCONF  # userconf(4) support
45options   PIPE_SOCKETPAIR               # smaller, but slower pipe(2)
46#options  SYSCTL_INCLUDE_DESCR          # Include sysctl descriptions in kernel
47options   NFS_V2_ONLY         # Exclude NFS3 code to save space
48
49# Networking options
50options   INET                # IP + ICMP + TCP + UDP
51#options  NFS_BOOT_BOOTPARAM
52#options  NFS_BOOT_DHCP
53
54#
55# wscons options
56#
57# builtin terminal emulations
58options   WSEMUL_VT100                  # VT100 / VT220 emulation
59options   WSDISPLAY_COMPAT_USL                    # wsconscfg VT handling
60# different kernel output - see dev/wscons/wsdisplayvar.h
61options   WS_KERNEL_FG=WSCOL_GREEN
62#options  WS_KERNEL_BG=WSCOL_BLACK
63# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
64#options  PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
65# allocate a number of virtual screens at autoconfiguration time
66#options  WSDISPLAY_DEFAULTSCREENS=4
67# use a large software cursor that doesn't blink
68options   PCDISPLAY_SOFTCURSOR
69
70# Kernel root file system and dump configuration.
71config    netbsd    root on ? type ?
72
73#
74# Device configuration
75#
76
77mainbus0 at root
78cpu0      at mainbus0
79
80# Basic Bus Support
81
82# PCI bus support
83pci0      at mainbus0 bus ?
84pci*      at pchb? bus ?
85pci*      at ppb? bus ?
86
87# PCI bridges
88pchb*     at pci? dev ? function ?      # PCI-Host bridges
89pcib*     at pci? dev ? function ?      # PCI-ISA bridges
90ppb*      at pci? dev ? function ?      # PCI-PCI bridges
91pceb*     at pci? dev ? function ?      # PCI-EISA bridges
92
93# EISA bus support
94eisa*   at pceb?
95
96# ISA bus support
97isa*      at pcib?                      # ISA on PCI-ISA bridge
98isa*      at pceb?
99
100# PCMCIA bus support
101pcmcia* at pcic? controller ? socket ?
102
103# ISA PCMCIA controllers
104pcic0     at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000
105
106#options  PCIC_ISA_INTR_ALLOC_MASK=0x4a00 # free irq 9,11,14
107#options  PCIC_ISA_ALLOC_IOBASE=0x0400
108#options  PCIC_ISA_ALLOC_IOSIZE=0x0100
109
110# ISA Plug-and-Play bus support
111#isapnp0 at isa?
112
113# PNP bus device for attaching objects described in the residual
114pnpbus0   at mainbus0
115
116# Console Devices
117
118# wscons
119pckbc0              at isa?                       # pc keyboard controller
120pckbd*              at pckbc?           # PC keyboard
121#pms*               at pckbc?           # PS/2 mouse for wsmouse
122vga*                at pci?
123wsdisplay*          at vga? console ?
124wskbd*              at pckbd? console ?
125#wsmouse* at pms? mux 0
126
127mcclock* at pnpbus?                     # mc146818 and compatible
128mkclock* at pnpbus?                     # mk48t18 and compatible
129nvram* at pnpbus?
130
131# Serial Devices
132
133# ISA serial interfaces
134com0      at isa? port 0x3f8 irq 4      # standard PC serial ports
135com1      at isa? port 0x2f8 irq 3
136
137# Parallel Printer Interfaces
138
139# ISA parallel printer interfaces
140#lpt0     at isa? port 0x3bc irq 7      # standard PC parallel ports
141
142
143# SCSI Controllers and Devices
144
145# PCI SCSI controllers
146#adw*     at pci? dev ? function ?      # AdvanSys 9x0UW[D], 3940U[2,3]W SCSI
147#ahc*     at pci? dev ? function ?      # Adaptec [23]94x, aic78x0 SCSI
148#esiop*   at pci? dev ? function ?      # Symbios 53c825/875 and newer chips
149#iha*     at pci? dev ? function ?      # Initio INIC-940/950 SCSI
150#pcscp*   at pci? dev ? function ?      # AMD 53c974 PCscsi-PCI SCSI
151siop*     at pci? dev ? function ?      # Symbios 53c8xx SCSI
152
153# PCMCIA SCSI controllers
154#aic*     at pcmcia? function ?                   # Adaptec APA-1460 SCSI
155
156# SCSI bus support
157#scsibus* at adw?
158#scsibus* at ahc?
159#scsibus* at aic?
160#scsibus* at esiop?
161#scsibus* at iha?
162#scsibus* at pcscp?
163scsibus* at siop?
164
165# SCSI devices
166sd*       at scsibus? target ? lun ?    # SCSI disk drives
167st*       at scsibus? target ? lun ?    # SCSI tape drives
168cd*       at scsibus? target ? lun ?    # SCSI CD-ROM drives
169
170
171# IDE and related devices
172
173# IDE controller found on most Power Personal machines
174wdc*      at pnpbus?
175
176# PCI IDE controllers
177pciide*             at pci? dev ? function ? flags 0x0000
178hptide*             at pci? dev ? function ?
179slide*              at pci? dev ? function ?
180
181# PCMCIA IDE controllers
182#wdc*     at pcmcia? function ?
183
184# ATA (IDE) bus support
185atabus* at ata?
186
187# IDE drives
188# Flags are used only with controllers that support DMA operations
189# and mode settings (e.g. some pciide controllers)
190# The lowest order four bits (rightmost digit) of the flags define the PIO
191# mode to use, the next set of four bits the DMA mode and the third set the
192# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
193# to use, and the last bit must be 1 for this setting to be used.
194# For DMA and UDMA, 0xf (1111) means 'disable'.
195# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
196# (0xc=1100, 0xa=1010, 0xf=1111)
197# 0x0000 means "use whatever the drive claims to support".
198wd*       at atabus? drive ? flags 0x0000
199
200# ATAPI bus support
201atapibus* at atapi?
202
203# ATAPI devices
204# flags have the same meaning as for IDE drives.
205cd*       at atapibus? drive ? flags 0x0000       # ATAPI CD-ROM drives
206sd*       at atapibus? drive ? flags 0x0000       # ATAPI disk drives
207
208# Miscellaneous mass storage devices
209
210# ISA floppy
211#fdc0     at isa? port 0x3f0 irq 6 drq 2          # standard PC floppy controllers
212#fd*      at fdc? drive ?
213
214# Network Interfaces
215
216# PCI network interfaces
217ep*       at pci? dev ? function ?      # 3Com 3c59x
218ex*       at pci? dev ? function ?      # 3Com 3c90x[BC]
219fxp*      at pci? dev ? function ?      # Intel EtherExpress PRO 10+/100B
220ne*       at pci? dev ? function ?      # NE2000-compatible Ethernet
221pcn*      at pci? dev ? function ?      # AMD PCnet-PCI Ethernet
222rtk*      at pci? dev ? function ?      # Realtek 8129/8139
223sip*      at pci? dev ? function ?      # SiS 900/DP83815 Ethernet
224tlp*      at pci? dev ? function ?      # DECchip 21x4x and clones
225vr*       at pci? dev ? function ?      # VIA Rhine Fast Ethernet
226
227# ISA network interfaces
228#ep*      at isa? port ? irq ?                    # 3Com 3c509 Ethernet
229we1       at isa? port 0x300 iomem 0xe4000 irq 11 # WD/SMC Ethernet
230
231# ISA Plug-and-Play network interfaces
232#ep*      at isapnp?                              # 3Com 3c509 Ethernet
233#ne*      at isapnp?                              # NE2000-compatible Ethernet
234
235# PCMCIA network interfaces
236ep*       at pcmcia? function ?                   # 3Com 3c589 and 3c562 Ethernet
237ne*       at pcmcia? function ?                   # NE2000-compatible Ethernet
238
239# MII/PHY support
240dmphy*    at mii? phy ?                           # Davicom DM9101 PHYs
241exphy*    at mii? phy ?                           # 3Com internal PHYs
242icsphy*   at mii? phy ?                           # Integrated Circuit Systems ICS189x
243inphy*    at mii? phy ?                           # Intel 82555 PHYs
244iophy*    at mii? phy ?                           # Intel 82553 PHYs
245lxtphy*   at mii? phy ?                           # Level One LXT-970 PHYs
246nsphy*    at mii? phy ?                           # NS83840 PHYs
247nsphyter* at mii? phy ?                           # NS83843 PHYs
248qsphy*    at mii? phy ?                           # Quality Semiconductor QS6612 PHYs
249sqphy*    at mii? phy ?                           # Seeq 80220/80221/80223 PHYs
250tlphy*    at mii? phy ?                           # ThunderLAN PHYs
251tqphy*    at mii? phy ?                           # TDK Semiconductor PHYs
252ukphy*    at mii? phy ?                           # generic unknown PHYs
253
254# Pull in optional local configuration - always at end
255include "arch/prep/conf/INSTALL.local"
256
257# Pseudo-Devices
258
259# disk/mass storage pseudo-devices
260pseudo-device       md                            # memory disk device (ramdisk)
261#pseudo-device      fss                           # file system snapshot device
262pseudo-device       raid                          # RAIDframe disk driver
263options   RAID_AUTOCONFIG               # auto-configuration of RAID components
264
265# network pseudo-devices
266pseudo-device       loop                          # network loopback
267
268# miscellaneous pseudo-devices
269pseudo-device       pty                           # pseudo-terminals
270#options  RND_COM                       # use "com" randomness as well
271