GENERIC32_IP2x revision 1.108 1 1.108 christos # $NetBSD: GENERIC32_IP2x,v 1.108 2016/12/13 20:42:20 christos Exp $
2 1.8 pooka #
3 1.8 pooka # GENERIC32_IP2x machine description file
4 1.8 pooka #
5 1.8 pooka # This machine description file is used to generate the default NetBSD
6 1.8 pooka # kernel. The generic kernel does not include all options, subsystems
7 1.8 pooka # and device drivers, but should be useful for most applications.
8 1.8 pooka #
9 1.8 pooka # The machine description file can be customised for your specific
10 1.8 pooka # machine to reduce the kernel size and improve its performance.
11 1.8 pooka #
12 1.8 pooka # For further information on compiling NetBSD kernels, see the config(8)
13 1.8 pooka # man page.
14 1.8 pooka #
15 1.8 pooka # For further information on hardware support for this architecture, see
16 1.8 pooka # the intro(4) man page. For further information about kernel options
17 1.8 pooka # for this architecture, see the options(4) man page. For an explanation
18 1.8 pooka # of each device driver in this file see the section 4 man page for the
19 1.8 pooka # device.
20 1.8 pooka #
21 1.8 pooka #
22 1.8 pooka # Currently this config file supports Indigo R4k, Indigo2 and Indy
23 1.8 pooka # (IP20, IP22 and IP24, respectively).
24 1.1 sekiya #
25 1.1 sekiya
26 1.1 sekiya include "arch/sgimips/conf/std.sgimips"
27 1.1 sekiya
28 1.8 pooka makeoptions TEXTADDR=0x88069000 # entry point
29 1.1 sekiya
30 1.1 sekiya options INCLUDE_CONFIG_FILE # embed config file in kernel binary
31 1.1 sekiya
32 1.108 christos #ident "GENERIC32-IP2x-$Revision: 1.108 $"
33 1.1 sekiya
34 1.1 sekiya maxusers 32
35 1.1 sekiya
36 1.1 sekiya # CPU related options
37 1.1 sekiya options MIPS3 # MIPS3 support
38 1.73 tsutsui options INDY_R4600_CACHE # Include routines to handle special
39 1.9 sekiya # R4600 cache -- required for Indy.
40 1.1 sekiya
41 1.22 sekiya makeoptions WANT_ECOFF="yes" # Create an ECOFF kernel in addition
42 1.22 sekiya # to an ELF kernel -- required for
43 1.22 sekiya # netbooting Indigo (IP20) and some
44 1.22 sekiya # Indigo2 (IP22) machines
45 1.22 sekiya
46 1.73 tsutsui #options BLINK # blinkenlitzen
47 1.5 sekiya
48 1.1 sekiya # Standard system options
49 1.1 sekiya #options INSECURE # disable kernel security levels
50 1.1 sekiya
51 1.1 sekiya #options NTP # NTP phase/frequence locked loop
52 1.1 sekiya options KTRACE # system call tracing via ktrace(1)
53 1.1 sekiya
54 1.1 sekiya options SYSVMSG # System V message queues
55 1.1 sekiya options SYSVSEM # System V semaphores
56 1.1 sekiya options SYSVSHM # System V shared memory
57 1.1 sekiya
58 1.1 sekiya options USERCONF # userconf(4) support
59 1.1 sekiya #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
60 1.19 atatat options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
61 1.1 sekiya
62 1.1 sekiya # Enable experimental buffer queue strategy for better responsiveness under
63 1.1 sekiya # high disk I/O load. Use it with caution - it's not proven to be stable yet.
64 1.31 tsutsui #options BUFQ_READPRIO
65 1.31 tsutsui #options BUFQ_PRIOCSCAN
66 1.1 sekiya
67 1.1 sekiya # Diagnostic/debugging support options
68 1.1 sekiya #options DIAGNOSTIC # expensive kernel consistency checks
69 1.1 sekiya #options DEBUG # expensive debugging checks/support
70 1.1 sekiya options DDB # in-kernel debugger
71 1.1 sekiya options DDB_HISTORY_SIZE=512 # enable history editing in DDB
72 1.1 sekiya #options KGDB # remote debugger
73 1.1 sekiya #options KGDB_DEV=0x2301 # KGDB port - this is Serial(1)
74 1.1 sekiya #options KGDB_DEVRATE=19200 # KGDB Baud Rate
75 1.1 sekiya #makeoptions DEBUG="-g" # compile full symbol table
76 1.1 sekiya
77 1.1 sekiya # Compatibility options
78 1.102 dholland options COMPAT_15 # NetBSD 1.5,
79 1.102 dholland options COMPAT_16 # NetBSD 1.6,
80 1.102 dholland options COMPAT_20 # NetBSD 2.0,
81 1.102 dholland options COMPAT_30 # NetBSD 3.0,
82 1.102 dholland options COMPAT_40 # NetBSD 4.0,
83 1.102 dholland options COMPAT_50 # NetBSD 5.0,
84 1.102 dholland options COMPAT_60 # NetBSD 6.0, and
85 1.102 dholland options COMPAT_70 # NetBSD 7.0 binary compatibility.
86 1.1 sekiya #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended.
87 1.1 sekiya
88 1.83 chs options COMPAT_LINUX # binary compatibility with Linux
89 1.73 tsutsui #options COMPAT_ULTRIX # binary compatibility with Ultrix
90 1.73 tsutsui options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
91 1.1 sekiya
92 1.1 sekiya # File systems
93 1.1 sekiya file-system FFS # UFS
94 1.1 sekiya file-system EXT2FS # second extended file system (linux)
95 1.1 sekiya file-system LFS # log-structured file system
96 1.1 sekiya file-system MFS # memory file system
97 1.1 sekiya file-system NFS # Network File System client
98 1.1 sekiya file-system NTFS # Windows/NT file system (experimental)
99 1.1 sekiya file-system CD9660 # ISO 9660 + Rock Ridge file system
100 1.1 sekiya file-system MSDOSFS # MS-DOS file system
101 1.1 sekiya file-system FDESC # /dev/fd
102 1.1 sekiya file-system KERNFS # /kern
103 1.1 sekiya file-system NULLFS # loopback file system
104 1.1 sekiya file-system OVERLAY # overlay file system
105 1.81 pooka file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
106 1.1 sekiya file-system PROCFS # /proc
107 1.1 sekiya file-system UMAPFS # NULLFS + uid and gid remapping
108 1.1 sekiya file-system UNION # union file system
109 1.1 sekiya file-system CODA # Coda File System; also needs vcoda (below)
110 1.38 christos file-system PTYFS # /dev/pts/N support
111 1.72 tnn file-system TMPFS # Efficient memory file-system
112 1.44 tsutsui #file-system UDF # experimental - OSTA UDF CD/DVD file-system
113 1.67 rumble file-system EFS # Silicon Graphics Extent File System
114 1.1 sekiya
115 1.1 sekiya # File system options
116 1.86 bouyer options QUOTA # legacy UFS quotas
117 1.86 bouyer options QUOTA2 # new, in-filesystem UFS quotas
118 1.1 sekiya #options FFS_EI # FFS Endian Independent support
119 1.89 dholland options WAPBL # File system journaling support
120 1.73 tsutsui #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
121 1.1 sekiya options NFSSERVER # Network File System server
122 1.40 tsutsui #options FFS_NO_SNAPSHOT # No FFS snapshot support
123 1.103 manu options UFS_EXTATTR # Extended attribute support for UFS1
124 1.1 sekiya #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
125 1.1 sekiya # immutable) behave as system flags.
126 1.1 sekiya
127 1.1 sekiya # Networking options
128 1.1 sekiya #options GATEWAY # packet forwarding
129 1.1 sekiya options INET # IP + ICMP + TCP + UDP
130 1.1 sekiya options INET6 # IPV6
131 1.1 sekiya #options IPSEC # IP security
132 1.1 sekiya #options IPSEC_DEBUG # debug for IP security
133 1.1 sekiya #options MROUTING # IP multicast routing
134 1.20 manu #options PIM # Protocol Independent Multicast
135 1.1 sekiya options NETATALK # AppleTalk networking protocols
136 1.1 sekiya options PPP_BSDCOMP # BSD-Compress compression support for PPP
137 1.1 sekiya options PPP_DEFLATE # Deflate compression support for PPP
138 1.1 sekiya options PPP_FILTER # Active filter support for PPP (requires bpf)
139 1.1 sekiya options IPFILTER_LOG # ipmon(8) log support
140 1.55 christos options IPFILTER_LOOKUP # ippool(8) support
141 1.1 sekiya #options IPFILTER_DEFAULT_BLOCK # block all packets by default
142 1.1 sekiya #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
143 1.1 sekiya
144 1.12 abs #options ALTQ # Manipulate network interfaces' output queues
145 1.12 abs #options ALTQ_BLUE # Stochastic Fair Blue
146 1.12 abs #options ALTQ_CBQ # Class-Based Queueing
147 1.12 abs #options ALTQ_CDNR # Diffserv Traffic Conditioner
148 1.12 abs #options ALTQ_FIFOQ # First-In First-Out Queue
149 1.12 abs #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
150 1.12 abs #options ALTQ_HFSC # Hierarchical Fair Service Curve
151 1.12 abs #options ALTQ_LOCALQ # Local queueing discipline
152 1.12 abs #options ALTQ_PRIQ # Priority Queueing
153 1.12 abs #options ALTQ_RED # Random Early Detection
154 1.12 abs #options ALTQ_RIO # RED with IN/OUT
155 1.12 abs #options ALTQ_WFQ # Weighted Fair Queueing
156 1.12 abs
157 1.100 alnsn # JIT compiler for bpfilter
158 1.100 alnsn #options SLJIT
159 1.100 alnsn #options BPFJIT
160 1.100 alnsn
161 1.1 sekiya # These options enable verbose messages for several subsystems.
162 1.1 sekiya # Warning, these may compile large string tables into the kernel!
163 1.1 sekiya options MIIVERBOSE # verbose PHY autoconfig messages
164 1.1 sekiya options SCSIVERBOSE # human readable SCSI error messages
165 1.1 sekiya
166 1.1 sekiya options NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
167 1.1 sekiya
168 1.1 sekiya #options MEMORY_DISK_HOOKS
169 1.1 sekiya #options MEMORY_DISK_IS_ROOT
170 1.1 sekiya #options MEMORY_DISK_SERVER=0
171 1.1 sekiya #options MINIROOTSIZE=8192
172 1.1 sekiya
173 1.1 sekiya #options SCSI_DELAY=5
174 1.1 sekiya
175 1.4 lonewolf #
176 1.4 lonewolf # wscons options
177 1.4 lonewolf #
178 1.4 lonewolf # builtin terminal emulations
179 1.4 lonewolf #options WSEMUL_SUN # sun terminal emulation
180 1.4 lonewolf options WSEMUL_VT100 # VT100 / VT220 emulation
181 1.91 abs options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
182 1.4 lonewolf # different kernel output - see dev/wscons/wsdisplayvar.h
183 1.4 lonewolf options WS_KERNEL_FG=WSCOL_GREEN
184 1.4 lonewolf #options WS_KERNEL_BG=WSCOL_BLACK
185 1.4 lonewolf # compatibility to other console drivers
186 1.4 lonewolf options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
187 1.49 drochner # see dev/pckbport/wskbdmap_mfii.c for implemented layouts
188 1.4 lonewolf #options PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
189 1.4 lonewolf
190 1.4 lonewolf
191 1.1 sekiya # Kernel root file system and dump configuration.
192 1.1 sekiya config netbsd root on ? type ?
193 1.1 sekiya
194 1.1 sekiya # Main bus and CPU
195 1.1 sekiya mainbus0 at root
196 1.1 sekiya cpu0 at mainbus?
197 1.1 sekiya
198 1.1 sekiya sd* at scsibus? target ? lun ? # SCSI disks
199 1.1 sekiya st* at scsibus? target ? lun ? # SCSI tapes
200 1.1 sekiya cd* at scsibus? target ? lun ? # SCSI CD-ROMs
201 1.1 sekiya ch* at scsibus? target ? lun ? # SCSI changer devices
202 1.1 sekiya ss* at scsibus? target ? lun ? # SCSI scanners
203 1.1 sekiya ses* at scsibus? target ? lun ? # SCSI SES/SAF-TE devices
204 1.1 sekiya uk* at scsibus? target ? lun ? # unknown SCSI
205 1.1 sekiya
206 1.24 sekiya # Personal Iris / Indigo R3k
207 1.24 sekiya pic0 at mainbus0 addr 0x1fa00000
208 1.24 sekiya gio0 at pic0
209 1.24 sekiya
210 1.1 sekiya # Indy / Indigo^2
211 1.1 sekiya imc0 at mainbus0 addr 0x1fa00000
212 1.1 sekiya gio0 at imc0
213 1.1 sekiya eisa0 at imc0
214 1.79 rumble
215 1.9 sekiya int0 at mainbus0 # Interrupt controller
216 1.1 sekiya
217 1.79 rumble # Some clocks actually in HPC space, but not all
218 1.79 rumble dpclock0 at mainbus0 addr 0x1fb80e00 # IP12 / IP20
219 1.79 rumble dsclock0 at mainbus0 addr 0x1fbe0000 # IP22 / 24
220 1.79 rumble
221 1.1 sekiya hpc0 at gio? addr 0x1fb80000
222 1.1 sekiya hpc1 at gio? addr 0x1fb00000
223 1.1 sekiya hpc2 at gio? addr 0x1f980000
224 1.1 sekiya
225 1.63 rumble newport* at gio? # Newport (NG1) graphics
226 1.4 lonewolf wsdisplay* at newport? console ?
227 1.4 lonewolf
228 1.63 rumble grtwo* at gio? # Express (GR2) graphics
229 1.16 sekiya wsdisplay* at grtwo? console ?
230 1.14 sekiya
231 1.64 rumble light* at gio? # Light/Starter/Entry (LG1/LG2) graphics
232 1.64 rumble wsdisplay* at light? console ?
233 1.64 rumble
234 1.56 rumble # PCI Fast Ethernet cards glued to the GIO bus
235 1.56 rumble giopci* at gio? slot?
236 1.56 rumble pci* at giopci? bus?
237 1.73 tsutsui options PCI_NETBSD_CONFIGURE
238 1.56 rumble
239 1.56 rumble tlp* at pci? dev ? function ? # Phobos G100/130/160 Fast Ethernet
240 1.56 rumble lxtphy* at mii? phy ? # Level One LXT-970 PHYs
241 1.56 rumble
242 1.61 rumble tl* at pci? dev ? function ? # Set Engineering GIO Fast Ethernet
243 1.61 rumble nsphy* at mii? phy ? # NS83840 PHYs
244 1.61 rumble tlphy* at mii? phy ? # ThunderLAN PHY (unused)
245 1.56 rumble
246 1.1 sekiya # HPC devices
247 1.60 rumble sq* at hpc? offset ? # On-board ethernet / E++ adapter
248 1.65 rumble wdsc* at hpc? offset ? # On-board SCSI / GIO32 SCSI adapter
249 1.58 rumble haltwo* at hpc0 offset ? # IP22 / 24
250 1.80 macallan panel* at hpc0 offset ? # front panel buttons on Indy
251 1.4 lonewolf pckbc* at hpc0 offset ?
252 1.4 lonewolf
253 1.4 lonewolf pckbd* at pckbc?
254 1.4 lonewolf pms* at pckbc?
255 1.4 lonewolf wskbd* at pckbd? console ?
256 1.17 sekiya wskbd* at zskbd? console ?
257 1.4 lonewolf wsmouse* at pms? mux 0
258 1.18 sekiya wsmouse* at zsms? mux 0
259 1.5 sekiya
260 1.5 sekiya # I/O Controller -- IP22/24
261 1.5 sekiya ioc0 at mainbus0 addr 0x1fbd9800
262 1.1 sekiya
263 1.43 kurahone # IOC's parallel port
264 1.43 kurahone pi1ppc0 at hpc0 offset ?
265 1.73 tsutsui options PI1PPC_INDY_ACK_HACK # Indy hardware bug workaround.
266 1.43 kurahone ppbus* at pi1ppc?
267 1.43 kurahone lpt* at ppbus? # Parallel printer
268 1.43 kurahone
269 1.1 sekiya #
270 1.1 sekiya # As always, the zs chip is wired funny, so channel 1 is actually the
271 1.1 sekiya # first serial port and channel 0 is the second.
272 1.1 sekiya #
273 1.7 sekiya zsc0 at hpc0 offset ?
274 1.7 sekiya zstty* at zsc0 channel ?
275 1.7 sekiya
276 1.7 sekiya zsc1 at hpc0 offset ? # IP20 keyboard/mouse
277 1.17 sekiya zskbd0 at zsc1 channel 0
278 1.17 sekiya zsms0 at zsc1 channel 1
279 1.1 sekiya
280 1.1 sekiya scsibus* at scsi? # HPC SCSI
281 1.58 rumble audio* at audiobus?
282 1.1 sekiya
283 1.108 christos spkr* at audio? # PC speaker (synthesized)
284 1.106 nat
285 1.1 sekiya # Pseudo-Devices
286 1.1 sekiya
287 1.1 sekiya # disk/mass storage pseudo-devices
288 1.95 christos pseudo-device ccd # concatenated/striped disk devices
289 1.95 christos #pseudo-device cgd # cryptographic disk devices
290 1.96 christos #pseudo-device raid # RAIDframe disk driver
291 1.1 sekiya #options RAID_AUTOCONFIG # auto-configuration of RAID components
292 1.82 pooka pseudo-device fss # file system snapshot device
293 1.84 hannken pseudo-device md # memory disk device (ramdisk)
294 1.46 cube pseudo-device vnd # disk-like interface to files
295 1.34 hubertf #options VND_COMPRESSION # compressed vnd(4)
296 1.1 sekiya
297 1.1 sekiya # network pseudo-devices
298 1.45 rpaulo pseudo-device bpfilter # Berkeley packet filter
299 1.50 tsutsui #pseudo-device carp # Common Address Redundancy Protocol
300 1.1 sekiya pseudo-device ipfilter # IP filter (firewall) and NAT
301 1.1 sekiya pseudo-device loop # network loopback
302 1.46 cube pseudo-device ppp # Point-to-Point Protocol
303 1.46 cube pseudo-device sl # Serial Line IP
304 1.46 cube pseudo-device strip # Starmode Radio IP (Metricom)
305 1.46 cube pseudo-device tun # network tunneling over tty
306 1.26 cube pseudo-device tap # virtual Ethernet
307 1.46 cube pseudo-device gre # generic L3 over IP tunnel
308 1.46 cube pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
309 1.46 cube #pseudo-device faith # IPv[46] tcp relay translation i/f
310 1.47 pavel pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
311 1.1 sekiya pseudo-device vlan # IEEE 802.1q encapsulation
312 1.1 sekiya pseudo-device bridge # simple inter-network bridging
313 1.66 martin pseudo-device agr # IEEE 802.3ad link aggregation
314 1.73 tsutsui #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
315 1.25 rumble #pseudo-device pf # PF packet filter
316 1.25 rumble #pseudo-device pflog # PF log if
317 1.75 tsutsui pseudo-device accf_data # "dataready" accept filter
318 1.75 tsutsui pseudo-device accf_http # "httpready" accept filter
319 1.1 sekiya
320 1.1 sekiya # miscellaneous pseudo-devices
321 1.1 sekiya pseudo-device pty # pseudo-terminals
322 1.97 christos pseudo-device sequencer # MIDI sequencer
323 1.1 sekiya pseudo-device clockctl # user control of clock subsystem
324 1.1 sekiya pseudo-device ksyms # /dev/ksyms
325 1.4 lonewolf pseudo-device wsmux # mouse & keyboard multiplexor
326 1.4 lonewolf pseudo-device wsfont
327 1.81 pooka pseudo-device putter # for puffs and pud
328 1.1 sekiya
329 1.1 sekiya # a pseudo device needed for Coda # also needs CODA (above)
330 1.96 christos pseudo-device vcoda # coda minicache <-> venus comm.
331 1.1 sekiya
332 1.41 tsutsui # Veriexec
333 1.41 tsutsui #
334 1.41 tsutsui # a pseudo device needed for veriexec
335 1.96 christos #pseudo-device veriexec
336 1.41 tsutsui #
337 1.41 tsutsui # Uncomment the fingerprint methods below that are desired. Note that
338 1.41 tsutsui # removing fingerprint methods will have almost no impact on the kernel
339 1.41 tsutsui # code size.
340 1.41 tsutsui #
341 1.41 tsutsui #options VERIFIED_EXEC_FP_RMD160
342 1.41 tsutsui #options VERIFIED_EXEC_FP_SHA256
343 1.41 tsutsui #options VERIFIED_EXEC_FP_SHA384
344 1.41 tsutsui #options VERIFIED_EXEC_FP_SHA512
345 1.41 tsutsui #options VERIFIED_EXEC_FP_SHA1
346 1.41 tsutsui #options VERIFIED_EXEC_FP_MD5
347