GENERIC.in revision 1.109 1 #
2 # $NetBSD: GENERIC.in,v 1.109 2014/11/24 08:23:48 tsutsui Exp $
3 #
4 # Generic atari
5 #
6 # Note: We have size targets for gzipped kernels:
7 # - ATARITT and FALCON - 1.44M floppy
8 # - SMALL030 - 720K (or worst case 800K) floppy
9
10 #if defined(TT030_KERNEL) || defined(FALCON_KERNEL)
11 include "arch/atari/conf/std.atari"
12 #elif defined (HADES_KERNEL)
13 include "arch/atari/conf/std.hades"
14 #elif defined (MILAN_KERNEL)
15 include "arch/atari/conf/std.milan"
16 #endif /* TT030_KERNEL / FALCON_KERNEL / HADES_KERNEL / MILAN_KERNEL */
17
18 #if !defined(SMALL030_KERNEL)
19 options INCLUDE_CONFIG_FILE # embed config file in kernel binary
20 #endif /* !SMALL030_KERNEL */
21
22 #if !defined(SMALL030_KERNEL)
23 makeoptions COPTS="-O2 -fno-reorder-blocks" # see share/mk/sys.mk
24 #else
25 makeoptions COPTS="-Os" # optimize for space
26 #endif /* !SMALL030_KERNEL */
27
28 #if defined(SMALL030_KERNEL) || \
29 (!defined(TT030_KERNEL) && !defined(HADES_KERNEL) && !defined(MILAN_KERNEL))
30 #define NO_PHYS_NETWORK 1
31 #endif /* SMALL030_KERNEL || ... */
32
33 #
34 # Add support for about 16 users. This variable is used to size
35 # various kernel structures.
36 #
37 maxusers 16
38
39 options HZ=64 # Set the clock-rate (48/64/96)
40
41 # Standard system options
42 options INSECURE # disable kernel security levels
43 #options NTP # NTP phase/frequency locked loop
44
45 # Enable experimental buffer queue strategy for better responsiveness under
46 # high disk I/O load. Use it with caution - it's not proven to be stable yet.
47 #options BUFQ_READPRIO
48 #options BUFQ_PRIOCSCAN
49
50 #
51 # (Co)processors this kernel should support
52 #
53 #if defined(TT030_KERNEL) || defined(FALCON_KERNEL)
54 options M68030 # support for 030
55 #endif /* TT030_KERNEL || FALCON_KERNEL */
56 #if defined(FALCON_KERNEL)
57 options FPU_EMULATE # Support for MC68881/MC68882 emulator
58 #endif /* FALCON_KERNEL */
59 #if (defined(FALCON_KERNEL) && !defined(SMALL030_KERNEL)) || \
60 defined(HADES_KERNEL) || defined(MILAN_KERNEL)
61 options M68040 # support for 040
62 options M68060 # support for 060
63 options FPSP # 68040 Floatingpoint support
64 options M060SP # MC68060 software support (Required for 060)
65 #endif /* ! FALCON_KERNEL & ! SMALL030_KERNEL ... */
66
67 #
68 # Networking options
69 #
70 options INET # IP + ICMP + TCP + UDP
71
72 #if !defined(SMALL030_KERNEL)
73 options INET6 # IPV6
74 #options IPSEC # IP security
75 #options IPSEC_DEBUG # debug for IP security
76 #options GATEWAY # packet forwarding
77 #options MROUTING # IP multicast routing
78 #options PIM # Protocol Independent Multicast
79 #if !defined(NO_PHYS_NETWORK)
80 #options NETATALK # AppleTalk networking protocols
81 #endif /* NO_PHYS_NETWORK */
82
83 options PPP_BSDCOMP # BSD-Compress compression support for PPP
84 options PPP_DEFLATE # Deflate compression support for PPP
85 options PPP_FILTER # Active filter support for PPP (requires bpf)
86
87 #options IPFILTER_LOG # ipmon(8) log support
88 #options IPFILTER_LOOKUP # ippool(8) support
89 #options IPFILTER_COMPAT # Compat for IP-Filter
90 #options IPFILTER_DEFAULT_BLOCK # block packages by default
91
92 #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
93
94 #options ALTQ # Manipulate network interfaces' output queues
95 #options ALTQ_BLUE # Stochastic Fair Blue
96 #options ALTQ_CBQ # Class-Based Queueing
97 #options ALTQ_CDNR # Diffserv Traffic Conditioner
98 #options ALTQ_FIFOQ # First-In First-Out Queue
99 #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
100 #options ALTQ_HFSC # Hierarchical Fair Service Curve
101 #options ALTQ_LOCALQ # Local queueing discipline
102 #options ALTQ_PRIQ # Priority Queueing
103 #options ALTQ_RED # Random Early Detection
104 #options ALTQ_RIO # RED with IN/OUT
105 #options ALTQ_WFQ # Weighted Fair Queueing
106 #endif /* !SMALL030_KERNEL */
107
108 # File systems
109 file-system FFS # Berkeley fast file system
110 file-system MFS # Memory based filesystem
111 file-system MSDOSFS # MSDOS filesystem
112 file-system CD9660 # ISO 9660 filesystem with Rock Ridge
113 #file-system UDF # experimental - OSTA UDF CD/DVD file-system
114
115 #if !defined(SMALL030_KERNEL)
116 file-system KERNFS # Kernel parameter filesystem
117 file-system NFS # Network File System client side code
118 file-system PROCFS # Process filesystem
119 #file-system FDESC # /dev/fd
120 file-system NULLFS # Loopback filesystem
121 #file-system OVERLAY # overlay filesystem
122 #file-system UNION # union file system
123 #file-system UMAPFS # null file system (with uid & gid remapping)
124 #file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
125 #file-system EXT2FS # second extended file system (linux)
126 #file-system LFS # log-structured file system
127 file-system PTYFS # /dev/pts/N support
128 file-system TMPFS # Efficient memory file-system
129 #endif /* !SMALL030_KERNEL */
130
131 # File system options
132 options WAPBL # File system journaling support
133 options FFS_NO_SNAPSHOT # No FFS snapshot support
134 #if !defined(SMALL030_KERNEL)
135 #options QUOTA # legacy UFS quotas
136 #options QUOTA2 # new, in-filesystem UFS quotas
137 #options FFS_EI # FFS Endian Independent support
138 #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
139 options NFSSERVER # Network File System server side code
140 #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
141 # immutable) behave as system flags.
142 #endif /* !SMALL030_KERNEL */
143
144 #
145 # Misc. debugging options
146 #
147 options PANICWAIT # Require keystroke to dump/reboot
148 #if !defined(SMALL030_KERNEL)
149 options DDB # Kernel debugger
150 options DDB_HISTORY_SIZE=100 # Enable history editing in DDB
151 #options DEBUG # expensive debugging checks/support
152 #endif /* !SMALL030_KERNEL */
153
154 #
155 # Compatibility options for various existing systems
156 #
157 #if !defined(SMALL030_KERNEL)
158 options COMPAT_43 # 4.3 BSD compatible system calls
159 options COMPAT_10 # NetBSD 1.0,
160 options COMPAT_11 # NetBSD 1.1,
161 options COMPAT_12 # NetBSD 1.2,
162 options COMPAT_13 # NetBSD 1.3,
163 options COMPAT_14 # NetBSD 1.4,
164 options COMPAT_15 # NetBSD 1.5,
165 #endif /* !SMALL030_KERNEL */
166 options COMPAT_16 # NetBSD 1.6,
167 options COMPAT_20 # NetBSD 2.0,
168 options COMPAT_30 # NetBSD 3.0,
169 options COMPAT_40 # NetBSD 4.0,
170 options COMPAT_50 # NetBSD 5.0,
171 options COMPAT_60 # NetBSD 6.0, and
172 options COMPAT_70 # NetBSD 7.0 binary compatibility.
173 #if !defined(SMALL030_KERNEL)
174 #options COMPAT_09 # has no meaning on the atari
175 #options COMPAT_SUNOS # Support to run Sun-3 executables
176 #options COMPAT_SVR4 # Support to run SVR4 executables
177 #options COMPAT_LINUX # Support to run Linux/m68k executables
178 #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended.
179 options COMPAT_AOUT_M68K # Compatibility to a.out executables
180 options EXEC_AOUT # a.out format executables
181 #endif /* !SMALL030_KERNEL */
182 options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
183
184 #if !defined(SMALL030_KERNEL)
185 #
186 # Support for System V IPC facilities.
187 #
188 options SYSVSHM # System V shared memory
189 options SYSVMSG # System V messages
190 options SYSVSEM # System V semaphores
191 #endif /* !SMALL030_KERNEL */
192
193 #if !defined(SMALL030_KERNEL)
194 #
195 # Support for various kernel options
196 #
197 options KTRACE # Add kernel tracing system call
198 #options DIAGNOSTIC # Add additional error checking code
199 options USERCONF # userconf(4) support
200 #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
201 options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
202 options MODULAR # new style module(7) framework
203 #else /* SMALL030_KERNEL */
204 options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
205 #endif /* !SMALL030_KERNEL */
206
207 # These options enable verbose messages for several subsystems.
208 # Warning, these may compile large string tables into the kernel!
209 #if !defined(SMALL030_KERNEL)
210 #options SCSIVERBOSE # human readable SCSI error messages
211 #endif /* !SMALL030_KERNEL */
212 #if defined(HADES_KERNEL) || defined(MILAN_KERNEL)
213 #options MIIVERBOSE # verbose PHY autoconfig messages
214 #options PCIVERBOSE # verbose PCI device autoconfig messages
215 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
216 #endif
217
218 #
219 # Atari specific options
220 #
221 #options KFONT_8x8 # Use 8x8 font instead of 8x16
222 options ST_POOL_SIZE=24 # smallest that allows TT-HIGH
223 #if defined(TT030_KERNEL) || defined(HADES_KERNEL)
224 options TT_SCSI # SCSI-support for TT
225 options TT_VIDEO # Graphics support for TT
226 #options ET4000_HAS_2MB_MEM # et4000 with 2 MB video memory
227 #endif
228 #if defined(FALCON_KERNEL)
229 options FALCON_SCSI # SCSI-support for Falcon
230 options FALCON_VIDEO # Graphics support for FALCON
231 #endif /* FALCON_KERNEL */
232 options MEMORY_DISK_HOOKS # Boot RAM-disk
233 options DISKLABEL_NBDA # NetBSD disklabels (required)
234 options DISKLABEL_AHDI # NetBSD/AHDI disklabels
235 #if !defined(SMALL030_KERNEL)
236 #if !defined(FALCON_KERNEL)
237 #options SERCONSOLE # modem1 console support, breaks Falcon
238 #endif /* !FALCON_KERNEL */
239 options RELOC_KERNEL # TT/Falcon: relocate kernel to TT-RAM
240 options MSGBUFSIZE=32768 # size of kernel msg. buffer
241 #options STATCLOCK # Separate {stat,prof}clock
242 #endif /* !SMALL030_KERNEL */
243
244 #if !defined(SMALL030_KERNEL)
245 # Try linked commands on all targets
246 options TRY_SCSI_LINKED_COMMANDS=0x7f
247 #endif /* !SMALL030_KERNEL */
248
249 #
250 # Build one kernel that can boot from any disk.
251 #
252 config netbsd root on ? type ?
253
254 pseudo-device sl # Slip
255 #if !defined(SMALL030_KERNEL)
256 pseudo-device ppp # ppp
257 #endif /* !SMALL030_KERNEL */
258 #if !defined(NO_PHYS_NETWORK)
259 #pseudo-device pppoe # PPP over Ethernet (RFC 2516)
260 #endif /* NO_PHYS_NETWORK */
261 pseudo-device pty # pseudo-terminals
262 pseudo-device loop # Loopback network
263 #options VND_COMPRESSION # compressed vnd(4)
264 pseudo-device md # Boot memory disk
265 #pseudo-device putter # for puffs and pud
266
267 #if !defined(SMALL030_KERNEL)
268 pseudo-device vnd # 3 pseudo disks (see vnconfig)
269 pseudo-device bpfilter # berkeley packet filters
270 #pseudo-device carp # Common Address Redundancy Protocol
271 #pseudo-device tun # network tunnel
272 #pseudo-device tap # virtual Ethernet
273 #pseudo-device gre # generic L3 over IP tunnel
274 pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
275 #pseudo-device faith # IPv[46] tcp relay translation i/f
276 pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
277 #if !defined(NO_PHYS_NETWORK)
278 #pseudo-device vlan # IEEE 802.1q encapsulation
279 #pseudo-device bridge # simple inter-network bridging
280 #pseudo-device agr # IEEE 802.3ad link aggregation
281 #endif /* NO_PHYS_NETWORK */
282 #pseudo-device ccd # concatenating disk driver
283 #pseudo-device cgd # cryptographic disk driver
284 #pseudo-device raid # RAIDframe disk driver
285 #options RAID_AUTOCONFIG # auto-configuration of RAID components
286 # Options to enable various other RAIDframe RAID types.
287 # options RF_INCLUDE_EVENODD=1
288 # options RF_INCLUDE_RAID5_RS=1
289 # options RF_INCLUDE_PARITYLOGGING=1
290 # options RF_INCLUDE_CHAINDECLUSTER=1
291 # options RF_INCLUDE_INTERDECLUSTER=1
292 # options RF_INCLUDE_PARITY_DECLUSTERING=1
293 # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
294 #pseudo-device fss # file system snapshot device
295 #pseudo-device ipfilter # IP filtering device
296 pseudo-device clockctl # user control of clock subsystem
297 pseudo-device ksyms # /dev/ksyms
298 #pseudo-device pf # PF packet filter
299 #pseudo-device pflog # PF log if
300 #endif /* !SMALL030_KERNEL */
301
302 #if defined(HADES_KERNEL) || defined(MILAN_KERNEL)
303
304 # MII/PHY support
305 exphy* at mii? phy ? # 3Com internal PHYs
306 inphy* at mii? phy ? # Intel 82555 PHYs
307 iophy* at mii? phy ? # Intel 82553 PHYs
308 ukphy* at mii? phy ? # generic unknown PHYs
309
310 # PCI network interfaces
311 # If unsure, check the port-atari page for tested cards.
312 ep* at pci? dev ? function ? # 3Com 3c59x
313 fxp* at pci? dev ? function ? # Intel EtherExpress PRO 10+/100B
314
315
316 #
317 # This is the only tested audio card at the moment.
318 #
319 eso* at pci? dev ? function ? # ESS Solo-1 PCI AudioDrive
320 audio* at eso?
321
322 #endif /* defined(HADES_KERNEL) || defined(MILAN_KERNEL) */
323
324 #
325 # Hardware options for HADES and MILAN are in their machine type specific files
326 #
327
328 #if defined(TT030_KERNEL) || defined(FALCON_KERNEL)
329
330 pseudo-device view 4 # View (graphics mapping)
331 #if !defined (SMALL030_KERNEL)
332 pseudo-device mouse 1 # mouse
333 #endif /* ! SMALL030_KERNEL */
334
335 #
336 # The following sections describe various hardware options.
337 #
338 ncrscsi0 at mainbus0 # NCR5380 SCSI driver
339 zs0 at mainbus0 # Serial support through 8530
340 grfbus0 at mainbus0 # bitmapped display's
341 grfcc0 at grfbus0 # graphics driver
342 ite0 at grfcc0 # console
343 nvr0 at mainbus0 # nvram driver
344
345 #if !defined(SMALL030_KERNEL)
346 grfcc1 at grfbus0 # 2nd graphics driver
347 ite1 at grfcc1 # 2nd tty
348 grfcc2 at grfbus0 # 3rd graphics driver
349 ite2 at grfcc2 # 3rd tty
350 lp0 at mainbus0 # centronics printer
351 ser0 at mainbus0 # UART on first 68901 (ttyB0)
352 ne0 at mainbus0 # EtherNEC on Atari ROM cartridge slot
353
354 #if defined(TT030_KERNEL)
355 avmebus0 at mainbus0 # VME bus
356 vme0 at avmebus0
357 le0 at vme0 irq 5 # Lance ethernet (Riebl/PAM).
358 le0 at vme0 irq 4 # Lance ethernet (BVME410).
359 we0 at vme0 irq 4 # SMC Elite Ultra with SMC_TT VME-ISA bridge
360 et4k0 at vme0 # Crazy Dots II
361 #endif /* TT030_KERNEL */
362 #endif /* SMALL030_KERNEL */
363
364 #if defined(FALCON_KERNEL)
365 wdc0 at mainbus0 # IDE-bus
366 atabus* at wdc? channel ?
367 wd* at atabus? drive ?
368
369 # ATAPI bus support
370 atapibus* at atabus?
371
372 # ATAPI devices
373 cd* at atapibus? drive ? # ATAPI CD-ROM drives
374 #endif /* FALCON_KERNEL */
375
376 # SCSI devices
377 scsibus* at scsi? # SCSI bus
378 sd* at scsibus? target ? lun ? # SCSI disk drives
379 cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
380 #if !defined (SMALL030_KERNEL)
381 #st* at scsibus? target ? lun ? # SCSI tape drives
382 #ch* at scsibus? target ? lun ? # SCSI autochangers
383 #ss* at scsibus? target ? lun ? # SCSI scanners
384 se* at scsibus? target ? lun ? # SCSI ethernet
385 #uk* at scsibus? target ? lun ? # SCSI unknown
386 #endif /* ! SMALL030_KERNEL */
387
388 #endif /* TT030_KERNEL || FALCON_KERNEL */
389