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