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