xref: /netbsd-src/sys/arch/x68k/conf/GENERIC (revision d78516774c855654490144bf49a71476e97b5cde)
1# $NetBSD: GENERIC,v 1.210 2024/10/05 03:56:54 isaki Exp $
2#
3# GENERIC machine description file
4#
5# This machine description file is used to generate the default NetBSD
6# kernel.  The generic kernel does not include all options, subsystems
7# and device drivers, but should be useful for most applications.
8#
9# The machine description file can be customised for your specific
10# machine to reduce the kernel size and improve its performance.
11#
12# For further information on compiling NetBSD kernels, see the config(8)
13# man page.
14#
15# For further information on hardware support for this architecture, see
16# the intro(4) man page.  For further information about kernel options
17# for this architecture, see the options(4) man page.  For an explanation
18# of each device driver in this file see the section 4 man page for the
19# device.
20
21include 	"arch/x68k/conf/std.x68k"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident 		"GENERIC-$Revision: 1.210 $"
26
27makeoptions	COPTS="-O2 -fno-reorder-blocks -fno-unwind-tables -fno-omit-frame-pointer"
28	# See share/mk/sys.mk. -fno-omit-frame-pointer is necessary for
29	# backtraces in DDB.
30
31maxusers	8
32
33## System kernel configuration.  See options(4) for more detail.
34
35
36## Options for variants of the m68k MPU
37## you must have at least the correct one; REQUIRED
38options 	M68030
39options 	M68040
40options 	M68060
41## If you want an optimized kernel for a specific processor, use either:
42#makeoptions	CMACHFLAGS="-m68030"
43#makeoptions	CMACHFLAGS="-m68040 -Wa,-m68030 -Wa,-m68851"
44#makeoptions	CMACHFLAGS="-m68060 -Wa,-m68030 -Wa,-m68851"
45
46
47#### System options specific to the x68k port
48
49options 	EXTENDED_MEMORY		# support for >16MB memory
50options 	FPU_EMULATE		# software fpu emulation for MC68030
51options 	FPSP			# floating point emulation for MC68040
52options 	M060SP			# int/fp emulation for MC68060
53#options 	JUPITER			# support for "Jupiter-X" accelerator
54#options 	ZSCONSOLE,ZSCN_SPEED="9600"	# use serial console
55
56
57#### System options that are the same for all ports
58
59## Root device configuration: change the ?'s if you are going to use a
60## nonstandard root partition (other than where the kernel is booted from)
61## and/or nonstandard root type (not ffs or nfs).  Normally this can be
62## automagically determined at boot time.
63
64config		netbsd	root on ? type ?
65#config		netbsd	root on sd0 type ffs
66
67## RTC is offset from GMT; -540 means JST-9
68options 	RTC_OFFSET=-540	# hardware clock is this many mins. west of GMT
69
70## System call tracing (see ktrace(1)).
71options 	KTRACE
72
73## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
74options 	SYSVMSG		# System V message queues
75options 	SYSVSEM		# System V semaphores
76options 	SYSVSHM		# System V shared memory
77
78## Loadable kernel module support
79options 	MODULAR		# new style module(7) framework
80options 	MODULAR_DEFAULT_AUTOLOAD
81
82options 	USERCONF	# userconf(4) support
83#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
84options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
85
86# Alternate buffer queue strategies for better responsiveness under high
87# disk I/O load.
88#options 	BUFQ_READPRIO
89#options 	BUFQ_PRIOCSCAN
90
91## NFS boot options; not supported currently: needs nfsboot program
92#options 	NFS_BOOT_BOOTPARAM
93#options 	NFS_BOOT_BOOTP
94options 	NFS_BOOT_DHCP
95
96#### Debugging options
97
98## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
99## serial console break or keyboard reset, where the PROM would normally
100## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
101options 	DDB			# kernel dynamic debugger
102#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
103#options 	DDB_ONPANIC=1		# see also sysctl(7): `ddb.onpanic'
104#options 	PANICBUTTON		# interrupt switch invokes DDB
105
106## You may also use gdb, on another computer connected to this machine over
107## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
108## KGDB_DEV is a dev_t encoded device number of the serial port to use.
109## KGDB is not supported for now.
110#options 	KGDB			# support for kernel gdb
111#options 	KGDB_DEV=0xc00		# kgdb device number
112#options 	KGDB_DEVRATE=9600	# baud rate
113
114## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
115## such that gdb(1) can be used on a kernel coredump.
116
117#makeoptions	DEBUG="-g"
118
119## Adds code to the kernel that does internal consistency checks, and will
120## cause the kernel to panic if corruption of internal data structures
121## is detected.
122#options 	DIAGNOSTIC	# extra kernel sanity checking
123
124## Enable (possibly expensive) debugging code that may also display messages
125## on the system console
126#options 	DEBUG
127
128## These options enable verbose messages for several subsystems.
129## Warning, these may compile large string tables into the kernel!
130#options 	SCSIVERBOSE	# human readable SCSI error messages
131#options 	USBVERBOSE	# verbose USB device autoconfig messages
132
133## `INSECURE' turns off the kernel security level (securelevel = 0 always).
134## This allows writing to /dev/mem, loading kernel modules while multi-user,
135## and other insecurities good only for development work.  Do not use this
136## option on a production machine.
137#options 	INSECURE
138
139## `FDSCRIPTS' allows non-readable but executable scripts by providing a
140## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
141## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
142## opaque file mechanism.  Perl calls this "secure setuid scripts."
143
144#options 	FDSCRIPTS
145#options 	SETUIDSCRIPTS
146
147## Options for compatibility with previous releases foreign system binaries.
148
149include 	"conf/compat_netbsd09.config"
150
151options 	COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
152#options 	COMPAT_M68K4K	# NetBSD/m68k4k binaries
153#options 	COMPAT_SUNOS	# SunOS 4.x binary compatibility; broken
154#options 	COMPAT_LINUX	# Linux/m68k binary compatibility
155#options 	COMPAT_OSSAUDIO	# Linux/m68k binary compatibility
156
157## File systems.
158file-system	FFS		# Berkeley Fast Filesystem
159file-system	NFS		# Sun NFS-compatible filesystem client
160file-system	KERNFS		# kernel data-structure filesystem
161file-system	NULLFS		# NULL layered filesystem
162#file-system	OVERLAY		# overlay file system
163file-system	MFS		# memory-based filesystem
164#file-system	FDESC		# user file descriptor filesystem
165#file-system	UMAPFS		# uid/gid remapping filesystem
166#file-system	LFS		# Log-structured filesystem (experimental)
167file-system	PROCFS		# /proc
168file-system	CD9660		# ISO 9660 + Rock Ridge file system
169#file-system	UNION		# union file system (a little buggy)
170file-system	MSDOSFS		# MS-DOS FAT filesystem(s).
171#file-system	ADOSFS		# AmigaDOS filesystem
172file-system	PTYFS		# /dev/pts/N support
173file-system	TMPFS		# Efficient memory file-system
174#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
175
176## File system options.
177#options 	FFS_EI		# FFS Endian Independent support
178options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
179#options 	QUOTA		# legacy UFS quotas
180#options 	QUOTA2		# new, in-filesystem UFS quotas
181#options 	UFS_DIRHASH	# UFS Large Directory Hashing
182#options 	UFS_EXTATTR	# Extended attribute support for UFS1
183options 	WAPBL		# File system journaling support
184options 	NFSSERVER	# Network File System server
185
186## Network protocol support.  In most environments, INET is required.
187options 	INET		# IP (Internet Protocol) v4
188options 	INET6		# IPV6
189#options 	IPSEC		# IP security
190#options 	IPSEC_DEBUG	# debug for IP security
191#options 	GATEWAY		# packet forwarding ("router switch")
192#options 	MROUTING	# packet forwarding of multicast packets
193#options 	PIM		# Protocol Independent Multicast
194#options 	NETATALK	# AppleTalk (over Ethernet) protocol
195#options 	NTP		# Network Time Protocol in-kernel support
196#options 	PPS_SYNC	# Add serial line synchronization for NTP
197#options 	PPP_BSDCOMP	# Add BSD compression to ppp device
198#options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
199#options 	PPP_FILTER	# Add active filters for ppp (via bpf)
200#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
201
202#options 	ALTQ		# Manipulate network interfaces' output queues
203#options 	ALTQ_BLUE	# Stochastic Fair Blue
204#options 	ALTQ_CBQ	# Class-Based Queueing
205#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
206#options 	ALTQ_FIFOQ	# First-In First-Out Queue
207#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
208#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
209#options 	ALTQ_LOCALQ	# Local queueing discipline
210#options 	ALTQ_PRIQ	# Priority Queueing
211#options 	ALTQ_RED	# Random Early Detection
212#options 	ALTQ_RIO	# RED with IN/OUT
213#options 	ALTQ_WFQ	# Weighted Fair Queueing
214
215
216#### Device configurations
217
218## Fundamental devices; see also std.x68k
219dmac0	at intio0 addr 0xe84000		# DMA controller
220xel0	at intio0
221opm0	at intio0 addr 0xe90000		# OPM: required for fdc
222
223## Display devices and console
224grfbus0	at mainbus0			# bitmapped displays
225grf0	at grfbus0 addr 0		# multiplane graphics
226grf1	at grfbus0 addr 1		# flexible graphics
227
228kbd0	at mfp0				# standard keyboard
229ite0	at grf0 grfaddr 0		# internal terminal emulator
230options 	ITE_KERNEL_ATTR=4	# bold for kernel messages
231					# see /sys/arch/x68k/dev/itevar.h
232#options 	ITE_SIXEL
233
234## floppy disks
235fdc0	at intio0 addr 0xe94000 intr 96 dma 0 dmaintr 100 # floppy controller
236fd*	at fdc0 unit ?			# builtin floppy drives
237
238## SCSI devices
239scsirom0 at intio0 addr 0xfc0000		# Built-in SCSI BIOS
240scsirom1 at intio0 addr 0xea0020		# External SCSI BIOS
241spc0	at scsirom0				# genuin SCSI
242spc1	at scsirom1				# genuin SCSI
243scsibus* at spc?
244mha0	at scsirom1				# Mankai MK-HA1 (Mach-2)
245scsibus* at mha0
246
247sd*	at scsibus? target ? lun ?	# SCSI disks
248cd*	at scsibus? target ? lun ?	# SCSI CD-ROMs
249#st*	at scsibus? target ? lun ?	# SCSI tapes
250#ss*	at scsibus? target ? lun ?	# SCSI scanners
251#ch*	at scsibus? target ? lun ?	# SCSI changer devices
252#uk*	at scsibus? target ? lun ?	# SCSI unknown devices
253
254## Ports
255zsc0	at intio0 addr 0xe98000 intr 112
256zstty0	at zsc0 channel 0		# built-in RS-232C
257ms0	at zsc0 channel 1		# standard mouse
258#zsc1	at intio0 addr 0xeafc00 intr 113
259#zstty2	at zsc1 channel 0
260#zstty3	at zsc1 channel 1
261#zsc2	at intio0 addr 0xeafc10 intr 114
262#zstty4	at zsc2 channel 0
263#zstty5	at zsc2 channel 1
264par0	at intio0 addr 0xe8c000		# Builtin printer port
265
266sram0	at intio0 addr 0xed0000		# battery-backuped static RAM
267pseudo-device	bell			# OPM bell
268
269powsw0	at mfp0				# Front switch
270#powsw1	at mfp0				# External power switch
271
272com0	at intio0 addr 0xefff00 intr 240	# PSX16550, port1
273com1	at intio0 addr 0xefff10 intr 241	# PSX16550, port2
274
275## Audio device
276vs0 at intio0 addr 0xe92000 dma 3 dmaintr 106
277audio*	at vs?
278
279spkr*	at audio?				# PC speaker (synthesized)
280
281## Network interfaces
282ne*	at intio0 addr 0xece300 intr 249	# Nereid Ethernet
283ne*	at intio0 addr 0xeceb00 intr 248	# Nereid Ethernet
284neptune0 at intio0 addr 0xece000 intr 249	# Neptune-X
285neptune1 at intio0 addr 0xece400 intr 249	# Neptune-X at alt. addr.
286ne*	at neptune? addr 0x300			# NE2000 or clone
287
288## Bank memory disk
289bmd*	at intio0 addr 0xece3f0		# Nereid
290bmd*	at intio0 addr 0xecebf0		# Nereid
291
292## MII/PHY support for USB ethernet
293#acphy*	at mii? phy ?
294#rgephy*	at mii? phy ?
295#rlphy*	at mii? phy ?
296#ukphy*	at mii? phy ?
297
298## USB Controller and Devices; Experimental
299
300# Nereid USB controllers
301#slhci0	at intio0 addr 0xece380 intr 251
302#slhci1	at intio0 addr 0xeceb80 intr 250
303#options 	SLHCI_DEBUG
304
305# USB bus support
306#usb*	at slhci?
307
308# USB Hubs
309#uhub*	at usb?
310#uhub*	at uhub? port ?
311
312# USB HID device
313#uhidev*	at uhub? port ? configuration ? interface ?
314
315# USB Mice; not supported wscons yet
316#ums*	at uhidev? reportid ?
317#wsmouse* at ums? mux 0
318
319# USB Keyboards; not supported wscons yet
320#ukbd*	at uhidev? reportid ?
321#wskbd*	at ukbd? console ? mux 1
322
323# USB serial adapter
324#ucycom*	at uhidev? reportid ?
325
326# USB Generic HID devices
327#uhid*	at uhidev? reportid ?
328
329# USB Printer
330#ulpt*	at uhub? port ? configuration ? interface ?
331
332# USB Modem
333#umodem*	at uhub? port ? configuration ?
334#ucom*	at umodem?
335
336# Option N.V. Wireless WAN modems
337#uhso*	at uhub? port ? configuration ?
338
339# USB Mass Storage
340#umass*	at uhub? port ? configuration ? interface ?
341#atapibus* at umass?
342#scsibus* at umass?
343
344# USB audio
345#uaudio*	at uhub? port ? configuration ?
346
347# USB MIDI
348#umidi* at uhub? port ? configuration ?
349
350# USB IrDA
351# USB-IrDA bridge spec
352#uirda* at uhub? port ? configuration ? interface ?
353#irframe* at uirda?
354
355# SigmaTel STIr4200 USB/IrDA Bridge
356#ustir* at uhub? port ?
357#irframe* at ustir?
358
359# USB Ethernet adapters
360#aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
361#axe*	at uhub? port ?		# ASIX AX88172 based adapters
362#cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
363#kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
364#mue*	at uhub? port ?		# Microchip LAN75xx/LAN78xx based adapters
365#udav*	at uhub? port ?		# Davicom DM9601 based adapters
366#ure*	at uhub? port ?		# Realtek RTL8152/RTL8153 based adapters
367#url*	at uhub? port ?		# Realtek RTL8150L based adapters
368
369# Prolific PL2301/PL2302 host-to-host adapter
370#upl*	at uhub? port ?
371
372# Serial adapters
373#uftdi*	at uhub? port ?		# FTDI FT8U100AX serial adapter
374#ucom*	at uftdi? portno ?
375
376#umct*	at uhub? port ?		# MCT USB-RS232 serial adapter
377#ucom*	at umct? portno ?
378
379#uplcom*	at uhub? port ?		# I/O DATA USB-RSAQ2 serial adapter
380#ucom*	at uplcom? portno ?
381
382#uvscom*	at uhub? port ?		# SUNTAC Slipper U VS-10U serial adapter
383#ucom*	at uvscom? portno ?
384
385# USB Handspring Visor
386#uvisor*	at uhub? port ?
387#ucom*	at uvisor?
388
389# Kyocera AIR-EDGE PHONE
390#ukyopon* at uhub? port ?
391#ucom*	at ukyopon? portno ?
392
393# USB scanners that use SCSI emulation, e.g., HP5300
394#usscanner* at uhub? port ?
395#scsibus* at usscanner? channel ?
396
397# D-Link DSB-R100 USB radio
398#udsbr*	at uhub? port ?
399#radio*	at udsbr?
400
401# USB Generic driver
402#ugen*	at uhub? port ?
403
404
405#### Pseudo devices
406
407#
408# accept filters
409#pseudo-device   accf_data		# "dataready" accept filter
410#pseudo-device   accf_http		# "httpready" accept filter
411
412## A disk-like interface to files.  Can be used to create floppy, CD,
413## miniroot images, etc.
414
415pseudo-device	vnd
416#options 	VND_COMPRESSION		# compressed vnd(4)
417
418## Concatenated and striped disks; with this, you can create a software-based
419## disk array similar to a "RAID 0" setup.  See ccd(4).
420
421#pseudo-device	ccd
422
423## Cryptographic disk devices.  See cgd(4).
424
425#pseudo-device	cgd
426
427## RAIDframe disk driver: software RAID driver.  See raid(4).
428
429pseudo-device	raid
430options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
431# Options to enable various other RAIDframe RAID types.
432# options 	RF_INCLUDE_EVENODD=1
433# options 	RF_INCLUDE_RAID5_RS=1
434# options 	RF_INCLUDE_PARITYLOGGING=1
435# options 	RF_INCLUDE_CHAINDECLUSTER=1
436# options 	RF_INCLUDE_INTERDECLUSTER=1
437# options 	RF_INCLUDE_PARITY_DECLUSTERING=1
438# options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
439
440
441## Memory disk device, used on boot floppies with compressed
442## kernel-plus-root-disk images.
443
444#pseudo-device	md
445
446## Loopback network interface; required
447pseudo-device	loop
448
449## SLIP and CSLIP interfaces, for IP over a serial line.
450pseudo-device	sl
451
452## PPP, the successor to SLIP.  See pppd(8).
453pseudo-device	ppp
454
455## PPP over Ethernet (RFC 2516)
456pseudo-device	pppoe
457
458## Network "tunnel" device, allowing protocol stacks to run in the userland.
459## This is used by the third-party user-mode "ppp" program, and others.
460#pseudo-device	tun
461#pseudo-device	tap			# virtual Ethernet
462
463## Generic L3 over IP tunnel
464#pseudo-device	gre			# generic L3 over IP tunnel
465
466## Berkeley Packet Filter, required to run RARPD.  A generic C-language
467## interface that allows selective examining of incoming packets.
468pseudo-device	bpfilter
469
470#pseudo-device	carp			# Common Address Redundancy Protocol
471
472#pseudo-device	npf			# NPF packet filter
473
474## for IPv6
475pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
476#pseudo-device	faith			# IPv[46] tcp relay translation i/f
477pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
478
479## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
480pseudo-device	vlan
481
482## Simple inter-network traffic bridging
483pseudo-device	bridge
484#pseudo-device	vether			# Virtual Ethernet for bridge
485pseudo-device	agr			# IEEE 802.3ad link aggregation
486
487#### Other device configuration
488
489## Pseudo ttys, required for network logins and programs like screen.
490
491pseudo-device	pty			# pseudo-terminals
492
493## Random device, used to implement /dev/random (a source of random noise),
494## and generate randomness for some kernel formulae.
495
496
497pseudo-device	clockctl		# user control of clock subsystem
498pseudo-device	drvctl			# user control of drive subsystem
499pseudo-device	ksyms			# /dev/ksyms
500#pseudo-device	fss			# file system snapshot device
501pseudo-device	swwdog			# software watchdog timer -- swwdog(4)
502
503# Veriexec
504# include "dev/veriexec.config"
505
506# Pull in optional local configuration - always at end
507cinclude	"arch/x68k/conf/GENERIC.local"
508