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