1# $NetBSD: GENERIC,v 1.163 2024/01/29 18:27:14 christos 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/next68k/conf/std.next68k"
22
23options   INCLUDE_CONFIG_FILE # embed config file in kernel binary
24
25#ident              "GENERIC-$Revision: 1.163 $"
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
31# Needs to be set per system.  i.e change these as you see fit
32maxusers  16
33
34# Standard system options
35options   KTRACE              # system call tracing
36options   SYSVMSG             # System V message queues
37options   SYSVSEM             # System V semaphores
38options   SYSVSHM             # System V shared memory
39
40options   MODULAR             # new style module(7) framework
41options   MODULAR_DEFAULT_AUTOLOAD
42
43options   INSECURE  # disable kernel security level
44options   USERCONF  # userconf(4) support
45#options  PIPE_SOCKETPAIR     # smaller, but slower pipe(2)
46options   SYSCTL_INCLUDE_DESCR          # Include sysctl descriptions in kernel
47
48# Alternate buffer queue strategies for better responsiveness under high
49# disk I/O load.
50#options  BUFQ_READPRIO
51options   BUFQ_PRIOCSCAN
52
53#options  DEBUG               # kernel debugging code
54#options  DIAGNOSTIC          # extra kernel sanity checking
55
56# Which kernel debugger?  Uncomment either this:
57options   DDB
58options   DDB_HISTORY_SIZE=100          # enable history editing in DDB
59
60# ... or these for KGDB (gdb remote target)
61#makeoptions        DEBUG="-g"                    # debugging symbols for gdb
62#options  KGDB                          # support for kernel gdb
63#options  KGDB_DEV=0xc01                # kgdb device number (dev_t)
64#options  KGDB_DEVRATE=9600   # baud rate
65
66# Other debugging options
67#options  PMAP_DEBUG
68#options  SCSIDEBUG
69options   SCSIVERBOSE                   # Verbose SCSI errors
70
71# Compatibility options
72include   "conf/compat_netbsd09.config"
73
74options   COMPAT_M68K4K       # compatibility with NetBSD/m68k4k binaries
75options   COMPAT_NOMID        # compatibility with 386BSD, BSDI, NetBSD 0.8,
76options   COMPAT_SUNOS        # can run SunOS 4.1.1 executables
77#options  COMPAT_LINUX        # can run Linux/m68k executables
78#options  COMPAT_OSSAUDIO     # can run Linux/m68k executables
79options   COMPAT_AOUT_M68K # support for NetBSD a.out executables
80options   EXEC_AOUT # support for a.out executables
81
82# File systems
83file-system         FFS                 # UFS
84#file-system        EXT2FS              # second extended file system (linux)
85#file-system        LFS                 # log-structured file system
86file-system         MFS                 # memory file system
87file-system         NFS                 # Network File System client
88file-system         CD9660              # ISO 9660 + Rock Ridge file system
89file-system         MSDOSFS             # MS-DOS file system
90file-system         FDESC               # /dev/fd
91file-system         KERNFS              # /kern
92file-system         NULLFS              # loopback file system
93#file-system        OVERLAY             # overlay file system
94#file-system        PUFFS               # Userspace file systems (e.g. ntfs-3g & sshfs)
95file-system         PROCFS              # /proc
96#file-system        UMAPFS              # NULLFS + uid and gid remapping
97#file-system        UNION               # union file system
98file-system         PTYFS               # /dev/pts/N support
99file-system         TMPFS               # Efficient memory file-system
100#file-system        UDF                 # experimental - OSTA UDF CD/DVD file-system
101
102# File system options
103options   FFS_NO_SNAPSHOT     # No FFS snapshot support
104#options  QUOTA               # legacy UFS quotas
105#options  QUOTA2              # new, in-filesystem UFS quotas
106#options  UFS_DIRHASH         # UFS Large Directory Hashing
107#options  UFS_EXTATTR         # Extended attribute support for UFS1
108options   WAPBL               # File system journaling support
109options   NFSSERVER # Network File System server
110
111# Networking options
112options   GATEWAY             # packet forwarding
113options   INET                # IP + ICMP + TCP + UDP
114options   INET6               # IPV6
115#options  IPSEC               # IP security
116#options  IPSEC_DEBUG         # debug for IP security
117#options  MROUTING  # IP multicast routing
118#options  PIM                 # Protocol Independent Multicast
119#options  NETATALK  # AppleTalk networking protocols
120options   PPP_BSDCOMP         # BSD-Compress compression support for PPP
121options   PPP_DEFLATE         # Deflate compression support for PPP
122options   PPP_FILTER          # Active filter support for PPP (requires bpf)
123#options  TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
124
125#options  ALTQ                # Manipulate network interfaces' output queues
126#options  ALTQ_BLUE # Stochastic Fair Blue
127#options  ALTQ_CBQ  # Class-Based Queueing
128#options  ALTQ_CDNR # Diffserv Traffic Conditioner
129#options  ALTQ_FIFOQ          # First-In First-Out Queue
130#options  ALTQ_FLOWVALVE      # RED/flow-valve (red-penalty-box)
131#options  ALTQ_HFSC # Hierarchical Fair Service Curve
132#options  ALTQ_LOCALQ         # Local queueing discipline
133#options  ALTQ_PRIQ # Priority Queueing
134#options  ALTQ_RED  # Random Early Detection
135#options  ALTQ_RIO  # RED with IN/OUT
136#options  ALTQ_WFQ  # Weighted Fair Queueing
137
138# NeXT specific options
139options   M68040
140options   M68030
141options   FPSP
142#options  FPU_EMULATE
143
144options   ZS_CONSOLE_ABORT    # drop to debugger on break
145#options  SERCONSOLE                    # use serial console
146
147options   NFS_BOOT_BOOTP
148options   NFS_BOOT_DHCP
149
150# wscons options
151options   RCONS_2BPP                    # necessary for nextdisplay
152options   RCONS_16BPP                   # necessary for color nextdisplay
153#options  WSEMUL_SUN                    # sun terminal emulation
154options   WSEMUL_VT100                  # VT100 / VT220 emulation
155options   WSDISPLAY_COMPAT_SYSCONS      # emulate some ioctls
156options   WSDISPLAY_COMPAT_USL                    # wsconscfg VT handling
157options   WSDISPLAY_COMPAT_RAWKBD       # can get raw scancodes
158# see dev/wskbdmap_next.h for implemented layouts
159#options  PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
160
161config              netbsd root on ? type ?
162
163#
164# Device configuration
165#
166
167# The root node:
168mainbus0 at root
169
170# device space
171intio0    at mainbus?
172
173nextkbd0  at intio? ipl 3
174nextdisplay0        at mainbus?
175
176wsdisplay*          at nextdisplay? console ?
177wskbd*              at nextkbd? console ?
178
179# INTIO
180nextdma*  at intio? ipl 6
181
182zsc0      at intio? ipl 5
183
184xe*       at intio? ipl 3                         # ethernet
185
186esp0      at intio? ipl 3     flags 0xffff00      # Turn off sync negotiation
187
188#
189# Serial ports
190#
191zstty0    at zsc0 channel 0   # Serial Port A
192zstty1    at zsc0 channel 1   # Serial Port B
193
194# SCSI bus support
195scsibus* at scsi?
196
197# SCSI devices
198sd*       at scsibus? target ? lun ?    # SCSI disk drives
199st*       at scsibus? target ? lun ?    # SCSI tape drives
200cd*       at scsibus? target ? lun ?    # SCSI CD-ROM drives
201#ch*      at scsibus? target ? lun ?    # SCSI autochangers
202dse*      at scsibus? target ? lun ?    # SCSI ethernet (Dayna)
203se*       at scsibus? target ? lun ?    # SCSI ethernet
204#ss*      at scsibus? target ? lun ?    # SCSI scanners
205#uk*      at scsibus? target ? lun ?    # SCSI unknown
206
207
208# Memory-disk drivers
209pseudo-device       md
210
211#
212# accept filters
213#pseudo-device   accf_data              # "dataready" accept filter
214#pseudo-device   accf_http              # "httpready" accept filter
215
216# Misc.
217pseudo-device       loop                          # network loopback
218pseudo-device       bpfilter            # packet filter
219#pseudo-device      carp                          # Common Address Redundancy Protocol
220pseudo-device       sl                            # CSLIP
221pseudo-device       ppp                           # PPP
222pseudo-device       pppoe                         # PPP over Ethernet (RFC 2516)
223#pseudo-device      tun                           # network tunneling over tty
224#pseudo-device      tap                           # virtual Ethernet
225#pseudo-device      gre                           # generic L3 over IP tunnel
226#pseudo-device      npf                           # NPF packet filter
227pseudo-device       gif                           # IPv[46] over IPv[46] tunnel (RFC1933)
228#pseudo-device      faith                         # IPv[46] tcp relay translation i/f
229pseudo-device       stf                           # 6to4 IPv6 over IPv4 encapsulation
230#pseudo-device      vlan                          # IEEE 802.1q encapsulation
231#pseudo-device      bridge                        # simple inter-network bridging
232#pseudo-device      vether                        # Virtual Ethernet for bridge
233#pseudo-device      agr                           # IEEE 802.3ad link aggregation
234#pseudo-device      wsmux                         # mouse & keyboard multiplexor
235
236pseudo-device       pty                           # pseudo-terminals
237pseudo-device       vnd                           # paging to files
238#options  VND_COMPRESSION               # compressed vnd(4)
239#pseudo-device      raid                          # RAIDframe disk driver
240#options  RAID_AUTOCONFIG               # auto-configuration of RAID components
241# Options to enable various other RAIDframe RAID types.
242# options RF_INCLUDE_EVENODD=1
243# options RF_INCLUDE_RAID5_RS=1
244# options RF_INCLUDE_PARITYLOGGING=1
245# options RF_INCLUDE_CHAINDECLUSTER=1
246# options RF_INCLUDE_INTERDECLUSTER=1
247# options           RF_INCLUDE_PARITY_DECLUSTERING=1
248# options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
249#pseudo-device      fss                           # file system snapshot device
250#pseudo-device      ccd                           # concatenated disks
251pseudo-device       clockctl            # user control of clock subsystem
252pseudo-device       ksyms                         # /dev/ksyms
253#pseudo-device      putter                        # for puffs and pud
254
255#include "dev/veriexec.config"
256
257# Pull in optional local configuration - always at end
258cinclude  "arch/next68k/conf/GENERIC.local"
259