RPC44 revision 1.26 1 1.26 christos # $NetBSD: RPC44,v 1.26 2006/08/12 15:29:52 christos Exp $
2 1.1 imp #
3 1.1 imp # GENERIC machine description file
4 1.1 imp #
5 1.1 imp # This machine description file is used to generate the default NetBSD
6 1.1 imp # kernel. The generic kernel does not include all options, subsystems
7 1.1 imp # and device drivers, but should be useful for most applications.
8 1.1 imp #
9 1.1 imp # The machine description file can be customised for your specific
10 1.1 imp # machine to reduce the kernel size and improve its performance.
11 1.1 imp #
12 1.1 imp # For further information on compiling NetBSD kernels, see the config(8)
13 1.1 imp # man page.
14 1.1 imp #
15 1.1 imp # For further information on hardware support for this architecture, see
16 1.1 imp # the intro(4) man page. For further information about kernel options
17 1.1 imp # for this architecture, see the options(4) man page. For an explanation
18 1.1 imp # of each device driver in this file see the section 4 man page for the
19 1.1 imp # device.
20 1.1 imp
21 1.1 imp include "arch/arc/conf/std.arc"
22 1.1 imp
23 1.1 imp options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24 1.1 imp
25 1.26 christos #ident "GENERIC-$Revision: 1.26 $"
26 1.1 imp
27 1.1 imp maxusers 32 # estimated number of users
28 1.1 imp
29 1.1 imp # Platform support
30 1.2 tsutsui options PLATFORM_DESKTECH_ARCSTATION_I # DeskStation rPC44
31 1.1 imp
32 1.1 imp # Standard system options
33 1.1 imp
34 1.1 imp options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
35 1.1 imp options NTP # NTP phase/frequency locked loop
36 1.1 imp
37 1.1 imp options KTRACE # system call tracing via ktrace(1)
38 1.26 christos #options SYSTRACE # system call vetting via systrace(1)
39 1.1 imp
40 1.1 imp options SYSVMSG # System V-like message queues
41 1.1 imp options SYSVSEM # System V-like semaphores
42 1.1 imp #options SEMMNI=10 # number of semaphore identifiers
43 1.1 imp #options SEMMNS=60 # number of semaphores in system
44 1.1 imp #options SEMUME=10 # max number of undo entries per process
45 1.1 imp #options SEMMNU=30 # number of undo structures in system
46 1.1 imp options SYSVSHM # System V-like memory sharing
47 1.1 imp #options SHMMAXPGS=1024 # 1024 pages is the default
48 1.1 imp
49 1.1 imp options LKM # loadable kernel modules
50 1.1 imp
51 1.1 imp options USERCONF # userconf(4) support
52 1.21 tsutsui #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
53 1.7 atatat options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
54 1.1 imp
55 1.1 imp # Enable experimental buffer queue strategy for better responsiveness under
56 1.1 imp # high disk I/O load. Use it with caution - it's not proven to be stable yet.
57 1.15 tsutsui #options BUFQ_READPRIO
58 1.15 tsutsui #options BUFQ_PRIOCSCAN
59 1.1 imp
60 1.1 imp # Diagnostic/debugging support options
61 1.1 imp options DIAGNOSTIC # cheap kernel consistency checks
62 1.1 imp #options DEBUG # expensive debugging checks/support
63 1.1 imp #options KMEMSTATS # kernel memory statistics (vmstat -m)
64 1.1 imp options DDB # in-kernel debugger
65 1.1 imp #options DDB_HISTORY_SIZE=100 # enable history editing in DDB
66 1.1 imp #options KGDB # remote gdb
67 1.1 imp #options KGDB_DEVRATE=19200 # kernel gdb port rate (default 9600)
68 1.1 imp #options KGDB_DEV="17*256+0" # device for kernel gdb
69 1.1 imp #makeoptions DEBUG="-g" # compile full symbol table
70 1.1 imp
71 1.1 imp # Compatibility options
72 1.1 imp #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended.
73 1.1 imp options COMPAT_10 # NetBSD 1.0,
74 1.1 imp options COMPAT_11 # NetBSD 1.1,
75 1.1 imp options COMPAT_12 # NetBSD 1.2,
76 1.1 imp options COMPAT_13 # NetBSD 1.3,
77 1.1 imp options COMPAT_14 # NetBSD 1.4,
78 1.4 tsutsui options COMPAT_16 # NetBSD 1.6,
79 1.11 tsutsui options COMPAT_20 # NetBSD 2.0,
80 1.19 christos options COMPAT_30 # NetBSD 3.0 compatibility.
81 1.1 imp options COMPAT_43 # and 4.3BSD
82 1.1 imp options COMPAT_386BSD_MBRPART # recognize old partition ID
83 1.1 imp
84 1.1 imp # mipsel specific
85 1.1 imp options COMPAT_ULTRIX # Ultrix binary compatibility
86 1.1 imp options EXEC_ECOFF # Ultrix RISC binaries are ECOFF format
87 1.21 tsutsui options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
88 1.1 imp
89 1.1 imp # File systems
90 1.1 imp file-system FFS # fast filesystem
91 1.1 imp #file-system EXT2FS # second extended file system (linux)
92 1.1 imp #file-system LFS # log-structured file system
93 1.1 imp #file-system MFS # memory file system
94 1.1 imp #file-system NTFS # Windows/NT file system (experimental)
95 1.1 imp file-system CD9660 # ISO 9660 + Rock Ridge file system
96 1.1 imp file-system MSDOSFS # MS-DOS file system
97 1.1 imp file-system NFS # Network File System client
98 1.1 imp file-system FDESC # /dev/fd
99 1.1 imp file-system KERNFS # /kern
100 1.1 imp file-system NULLFS # loopback file system
101 1.1 imp file-system OVERLAY # overlay file system
102 1.1 imp file-system PORTAL # portal filesystem (still experimental)
103 1.1 imp file-system PROCFS # /proc
104 1.1 imp file-system UMAPFS # NULLFS + uid and gid remapping
105 1.1 imp file-system UNION # union file system
106 1.1 imp #file-system CODA # Coda File System; also needs vcoda (below)
107 1.20 christos file-system PTYFS # /dev/pts/N support
108 1.1 imp
109 1.1 imp # File system options
110 1.1 imp options QUOTA # FFS quotas
111 1.1 imp #options FFS_EI # FFS Endian Independent support
112 1.1 imp options SOFTDEP # FFS soft updates support.
113 1.1 imp options NFSSERVER # Network File System server
114 1.22 tsutsui #options FFS_NO_SNAPSHOT # No FFS snapshot support
115 1.1 imp #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
116 1.1 imp # immutable) behave as system flags.
117 1.1 imp
118 1.1 imp # Networking options
119 1.1 imp #options GATEWAY # IP packet forwarding
120 1.1 imp options INET # IP + ICMP + TCP + UDP
121 1.1 imp #options INET6 # IPV6
122 1.1 imp #options IPSEC # IP security
123 1.1 imp #options IPSEC_ESP # IP security (encryption part; define w/IPSEC)
124 1.16 tron #options IPSEC_NAT_T # IPsec NAT traversal (NAT-T)
125 1.1 imp #options IPSEC_DEBUG # debug for IP security
126 1.1 imp #options MROUTING # IP multicast routing
127 1.8 manu #options PIM # Protocol Independent Multicast
128 1.1 imp #options NS # XNS
129 1.1 imp #options NSIP # XNS tunneling over IP
130 1.1 imp #options ISO,TPIP # OSI networking
131 1.1 imp #options EON # OSI tunneling over IP
132 1.1 imp #options CCITT,LLC,HDLC # X.25
133 1.1 imp #options NETATALK # AppleTalk networking protocols
134 1.1 imp #options PPP_BSDCOMP # BSD-Compress compression support for PPP
135 1.1 imp #options PPP_DEFLATE # Deflate compression support for PPP
136 1.1 imp #options PPP_FILTER # Active filter support for PPP (requires bpf)
137 1.1 imp #options PFIL_HOOKS # pfil(9) packet filter hooks
138 1.1 imp #options IPFILTER_LOG # ipmon(8) log support
139 1.1 imp ##options IPFILTER_DEFAULT_BLOCK # block all packets by default
140 1.1 imp #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
141 1.1 imp
142 1.1 imp # These options enable verbose messages for several subsystems.
143 1.1 imp # Warning, these may compile large string tables into the kernel!
144 1.1 imp options EISAVERBOSE # verbose EISA device autoconfig messages
145 1.1 imp #options PCIVERBOSE # verbose PCI device autoconfig messages
146 1.1 imp #options PCI_CONFIG_DUMP # verbosely dump PCI config space
147 1.1 imp options SCSIVERBOSE # human readable SCSI error messages
148 1.1 imp
149 1.1 imp # wscons terminal emulation
150 1.1 imp options WSEMUL_VT100 # VT100 emulation
151 1.1 imp
152 1.1 imp # Kernel root file system and dump configuration.
153 1.1 imp options NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
154 1.1 imp config netbsd root on ? type ?
155 1.1 imp #config netbsd root on sd0a type ffs
156 1.1 imp #config netbsd root on ? type nfs
157 1.1 imp
158 1.1 imp #
159 1.1 imp # Device configuration
160 1.1 imp #
161 1.1 imp
162 1.1 imp mainbus0 at root
163 1.1 imp cpu* at mainbus0
164 1.1 imp
165 1.1 imp # PLATFORM_DESKTECH_ARCSTATION_I
166 1.2 tsutsui arcsisabr* at mainbus0 # DeskStation rPC44 ISA host bridge.
167 1.1 imp isa* at arcsisabr?
168 1.1 imp #isadma0 at isa? # bogus?
169 1.1 imp timer0 at isa? port 0x40 irq 0
170 1.1 imp mcclock0 at isa? port 0x70
171 1.1 imp pc0 at isa? irq 1 # generic PC console device
172 1.1 imp opms0 at isa? irq 12 # PS/2 auxiliary port mouse
173 1.1 imp vga0 at isa?
174 1.1 imp pckbc0 at isa? # PC keyboard controller
175 1.1 imp com0 at isa? port 0x3f8 irq 4
176 1.1 imp com1 at isa? port 0x2f8 irq 3
177 1.1 imp com2 at isa? port 0x3e8 irq 4
178 1.1 imp com3 at isa? port 0x2e8 irq 3
179 1.1 imp #bha0 at isa? port 0x330 irq ? drq ? # BusLogic [457]4X SCSI
180 1.1 imp #ast0 at isa? port 0x1a0 irq 3 # AST 4-port serial cards
181 1.1 imp #com* at ast? slave ?
182 1.1 imp
183 1.1 imp # Joystick driver. Probe is a little strange; add only if you have one.
184 1.1 imp #joy0 at isa? port 0x201
185 1.1 imp
186 1.1 imp # ISA ST506, ESDI, and IDE controllers
187 1.1 imp # Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
188 1.1 imp # fall back to 16bits I/O if 32bits I/O are not functional).
189 1.1 imp # Some controllers pass the initial 32bit test, but will fail later.
190 1.1 imp # XXX - should be configured
191 1.1 imp wdc0 at isa? port 0x1f0 irq 14 flags 0x00
192 1.1 imp #wdc1 at isa? port 0x170 irq 15 flags 0x00
193 1.1 imp #wdc* at isapnp?
194 1.1 imp
195 1.1 imp # ISA parallel printer interfaces
196 1.1 imp lpt0 at isa? port 0x378 irq 7
197 1.1 imp
198 1.1 imp # ISA network interfaces
199 1.1 imp # XXX - should be configured
200 1.1 imp #ec0 at isa? port 0x250 iomem 0xd8000 irq 9 # 3Com 3c503 Ethernet
201 1.1 imp ep0 at isa? port ? irq ? # 3C509 ethernet cards
202 1.1 imp ne0 at isa? port 0x280 irq 9 # NE[12]000 ethernet cards
203 1.1 imp #ne1 at isa? port 0x300 irq 10
204 1.1 imp #ne* at isapnp? # NE[12]000 PnP ethernet
205 1.1 imp we0 at isa? port 0x280 iomem 0xd0000 irq 9 # WD/SMC Ethernet
206 1.1 imp #we1 at isa? port 0x300 iomem 0xcc000 irq 10
207 1.1 imp
208 1.1 imp # XXX - should be configured
209 1.1 imp #btl0 at isa? port 0x330 irq ? drq ?
210 1.6 tsutsui
211 1.6 tsutsui #### SCSI bus support
212 1.6 tsutsui #scsibus* at scsi?
213 1.1 imp
214 1.1 imp #### SCSI bus devices
215 1.1 imp
216 1.1 imp #sd* at scsibus? target ? lun ?
217 1.1 imp #st* at scsibus? target ? lun ?
218 1.1 imp #cd* at scsibus? target ? lun ?
219 1.1 imp #ch* at scsibus? target ? lun ?
220 1.1 imp #ss* at scsibus? target ? lun ?
221 1.1 imp #uk* at scsibus? target ? lun ?
222 1.6 tsutsui
223 1.6 tsutsui # ATA (IDE) bus support
224 1.6 tsutsui atabus* at wdc? channel ?
225 1.6 tsutsui
226 1.6 tsutsui # IDE drives
227 1.6 tsutsui # Flags are used only with controllers that support DMA operations
228 1.6 tsutsui # and mode settings (e.g. some pciide controllers)
229 1.6 tsutsui # The lowest order four bits (rightmost digit) of the flags define the PIO
230 1.6 tsutsui # mode to use, the next set of four bits the DMA mode and the third set the
231 1.6 tsutsui # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
232 1.6 tsutsui # to use, and the last bit must be 1 for this setting to be used.
233 1.6 tsutsui # For DMA and UDMA, 0xf (1111) means 'disable'.
234 1.6 tsutsui # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
235 1.6 tsutsui # (0xc=1100, 0xa=1010, 0xf=1111)
236 1.6 tsutsui # 0x0000 means "use whatever the drive claims to support".
237 1.6 tsutsui # XXX - should be configured
238 1.6 tsutsui wd* at atabus? drive ? flags 0x0000
239 1.6 tsutsui
240 1.6 tsutsui #### ATAPI bus support
241 1.6 tsutsui # XXX - should be configured
242 1.6 tsutsui #atapibus* at atabus?
243 1.1 imp
244 1.1 imp #### ATAPI bus devices
245 1.1 imp
246 1.1 imp # flags have the same meaning as for IDE drives.
247 1.1 imp #cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
248 1.1 imp #sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
249 1.1 imp #uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
250 1.1 imp
251 1.1 imp #### Workstation Console attachments
252 1.1 imp
253 1.1 imp wsdisplay* at vga?
254 1.1 imp #wsdisplay* at tga?
255 1.1 imp pckbd* at pckbc? # PC keyboard (kbd port)
256 1.1 imp wskbd* at pckbd?
257 1.1 imp pms* at pckbc? # PS/2-style mouse (aux port)
258 1.1 imp wsmouse* at pms?
259 1.1 imp
260 1.1 imp #### Pseudo devices
261 1.1 imp
262 1.1 imp # disk/mass storage pseudo-devices
263 1.1 imp #pseudo-device ccd 4 # concatenated/striped disk devices
264 1.1 imp #pseudo-device cgd 4 # cryptographic disk devices
265 1.1 imp #pseudo-device raid 8 # RAIDframe disk driver
266 1.1 imp # Options to enable various other RAIDframe RAID types.
267 1.21 tsutsui #options RF_INCLUDE_EVENODD=1
268 1.21 tsutsui #options RF_INCLUDE_RAID5_RS=1
269 1.21 tsutsui #options RF_INCLUDE_PARITYLOGGING=1
270 1.21 tsutsui #options RF_INCLUDE_CHAINDECLUSTER=1
271 1.21 tsutsui #options RF_INCLUDE_INTERDECLUSTER=1
272 1.21 tsutsui #options RF_INCLUDE_PARITY_DECLUSTERING=1
273 1.21 tsutsui #options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
274 1.12 hannken #pseudo-device fss 4 # file system snapshot device
275 1.1 imp pseudo-device md 1 # memory disk device (ramdisk)
276 1.25 cube pseudo-device vnd # disk-like interface to files
277 1.1 imp
278 1.1 imp # network pseudo-devices
279 1.24 rpaulo pseudo-device bpfilter # Berkeley packet filter
280 1.1 imp #pseudo-device ipfilter # IP filter (firewall) and NAT
281 1.1 imp pseudo-device loop 1 # network loopback
282 1.25 cube #pseudo-device ppp # Point-to-Point Protocol
283 1.1 imp #pseudo-device pppoe # PPP over Ethernet (RFC 2516)
284 1.25 cube #pseudo-device sl # Serial Line IP
285 1.25 cube #pseudo-device strip # Starmode Radio IP (Metricom)
286 1.25 cube pseudo-device tun # network tunneling over tty
287 1.10 cube #pseudo-device tap # virtual Ethernet
288 1.25 cube #pseudo-device gre # generic L3 over IP tunnel
289 1.25 cube #pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
290 1.25 cube #pseudo-device faith # IPv[46] tcp relay translation i/f
291 1.25 cube #pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
292 1.1 imp #pseudo-device vlan # IEEE 802.1q encapsulation
293 1.1 imp #pseudo-device bridge # simple inter-network bridging
294 1.1 imp
295 1.1 imp # miscellaneous pseudo-devices
296 1.1 imp pseudo-device pty # pseudo-terminals
297 1.1 imp #pseudo-device sequencer 1 # MIDI sequencer
298 1.1 imp # rnd works; RND_COM does not on port arc yet.
299 1.1 imp pseudo-device rnd # /dev/random and in-kernel generator
300 1.1 imp #options RND_COM # use "com" randomness as well (BROKEN)
301 1.1 imp pseudo-device clockctl # user control of clock subsystem
302 1.1 imp
303 1.1 imp # a pseudo device needed for Coda # also needs CODA (above)
304 1.1 imp #pseudo-device vcoda 4 # coda minicache <-> venus comm.
305 1.1 imp
306 1.1 imp # mouse & keyboard multiplexor pseudo-devices
307 1.1 imp pseudo-device wsmux
308